Massdriver MCP Server

Massdriver MCP Server

A Model Context Protocol server for Massdriver that enables AI assistants to manage infrastructure platform resources like projects, environments, deployments, policies, and more. It provides 106 tools and supports stdio or HTTP transports.

Category
Visit Server

README

Massdriver MCP Server

A Model Context Protocol (MCP) server for Massdriver, providing AI assistants with tools to manage your infrastructure platform — projects, environments, deployments, policies, and more.

Installation

This server is published to the official MCP Registry as cloud.massdriver/mcp-server — MCP clients with registry support can discover and install it by that name.

To install manually, pick whichever suits your setup:

Download a release binary — grab the archive for your platform (Linux, macOS, or Windows; amd64 and arm64) from GitHub Releases and put mcp-server on your PATH.

Go install (requires Go 1.25+):

go install github.com/massdriver-cloud/mcp-server@latest

Docker:

docker pull massdrivercloud/mcp-server

Build from source:

git clone https://github.com/massdriver-cloud/mcp-server.git
cd mcp-server
make build   # outputs ./bin/mcp-server

Configuration

You'll need a Massdriver API key and your organization ID — see the Massdriver docs for creating API credentials.

The server reads configuration from environment variables, or from a profile in ~/.config/massdriver/config.yaml:

export MASSDRIVER_API_KEY="your-api-key"
export MASSDRIVER_ORGANIZATION_ID="your-org-id"
# Optional:
export MASSDRIVER_URL="https://api.massdriver.cloud"  # set this if you run a self-hosted Massdriver instance
export MASSDRIVER_PROFILE="default"                   # named profile in ~/.config/massdriver/config.yaml

Transports

By default the server speaks MCP over stdio (for local tool integrations like Claude Desktop). To serve the Streamable HTTP transport instead, pass -http (or set MASSDRIVER_MCP_HTTP_ADDR):

./bin/mcp-server -http 127.0.0.1:8080

The HTTP endpoint is stateless and returns application/json, so a single tool call is a plain POST (no session handshake required):

curl -s 127.0.0.1:8080 \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_viewer","arguments":{}}}'

The HTTP endpoint is unauthenticated and exposes infrastructure-mutating tools. Bind it to localhost or place it behind an authenticating proxy.

Docker

The stdio transport needs an interactive stdin, so pass -i:

docker run --rm -i \
  -e MASSDRIVER_API_KEY \
  -e MASSDRIVER_ORGANIZATION_ID \
  massdrivercloud/mcp-server

On a self-hosted Massdriver instance, also pass -e MASSDRIVER_URL.

Using a profile? MASSDRIVER_PROFILE reads credentials from ~/.config/massdriver/config.yaml, which doesn't exist inside the container. Either pass the credentials as environment variables as shown above, or mount your config directory and point XDG_CONFIG_HOME at it:

docker run --rm -i \
  -e MASSDRIVER_PROFILE \
  -e XDG_CONFIG_HOME=/config \
  -v ~/.config/massdriver:/config/massdriver:ro \
  massdrivercloud/mcp-server

MCP Client Configuration

Claude Code

claude mcp add massdriver \
  --env MASSDRIVER_API_KEY=your-api-key \
  --env MASSDRIVER_ORGANIZATION_ID=your-org-id \
  -- /path/to/mcp-server

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "massdriver": {
      "command": "/path/to/mcp-server",
      "env": {
        "MASSDRIVER_API_KEY": "your-api-key",
        "MASSDRIVER_ORGANIZATION_ID": "your-org-id"
      }
    }
  }
}

Other Clients

The server uses stdio transport, compatible with any MCP client.

Available Tools (106)

See MCP_README.md for the full tool reference, including per-tool descriptions, input conventions, pagination, and behavioral annotations.

Projects (6)

list_projects get_project create_project clone_project update_project delete_project

Environments (11)

list_environments get_environment create_environment update_environment delete_environment set_environment_default remove_environment_default compare_environments fork_environment deploy_environment decommission_environment

Instances (10)

list_instances get_instance update_instance set_instance_secret remove_instance_secret set_remote_reference remove_remote_reference copy_instance orphan_instance list_alarms

Deployments (11)

list_deployments get_deployment get_deployment_logs create_deployment propose_deployment approve_deployment reject_deployment abort_deployment plan_deployment rollback_deployment compare_deployments

Components (8)

list_components get_component add_component update_component set_component_position remove_component link_components unlink_components

Bundles (1)

get_bundle

Resources (9)

list_resources get_resource create_resource update_resource delete_resource export_resource create_resource_grant delete_resource_grant list_resource_grants

Organization (6)

get_organization create_custom_attribute update_custom_attribute delete_custom_attribute list_organization_members list_custom_attributes

Viewer (1)

get_viewer

Audit Logs (3)

get_audit_log list_audit_logs list_audit_log_event_types

Groups (14)

list_groups get_group create_group update_group delete_group add_group_user remove_group_user revoke_group_invitation add_group_service_account remove_group_service_account list_group_members list_group_service_accounts list_group_invitations list_group_policies

Service Accounts (5)

list_service_accounts get_service_account create_service_account update_service_account delete_service_account

OCI Repos (8)

list_oci_repos get_oci_repo create_oci_repo update_oci_repo delete_oci_repo create_oci_repo_grant delete_oci_repo_grant list_oci_repo_grants

Policies (11)

get_policy create_policy update_policy delete_policy list_policy_actions list_policy_entities evaluate_policy evaluate_policies_batch explain_policy get_policy_attribute_schema list_policy_attribute_values

Server (1)

get_server

URLs (1)

get_url

Contributing

Development, architecture, and release documentation lives in CONTRIBUTING.md.

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured