MCP server for Azure Cosmos DB using the Go SDK
Sample implementation of a MCP server for Cosmos DB built using the Go SDK
abhirockzz
README
MCP server for Azure Cosmos DB using the Go SDK
This is a sample implementation of a MCP server for Cosmos DB built using its Go SDK. mcp-go project has been used as the MCP Go implementation.
This MCP server exposes the following tools for interacting with Azure Cosmos DB:
- List Databases: Retrieve a list of all databases in a Cosmos DB account.
- List Containers: Retrieve a list of all containers in a specific database.
- Read Container Metadata: Fetch metadata or configuration details of a specific container.
- Create Container: Create a new container in a specified database with a defined partition key.
- Add Item to Container: Add a new item to a specified container in a database.
- Read Item: Read a specific item from a container using its ID and partition key.
- Execute Query: Execute a SQL query on a Cosmos DB container with optional partition key scoping.
Here is a demo (recommend watching at 2x speed 😉) using VS Code Insiders in Agent mode:
How to run
git clone https://github.com/abhirockzz/mcp_cosmosdb_go
cd mcp_cosmosdb_go
go build -o mcp_azure_cosmosdb main.go
Configure the MCP server:
mkdir -p .vscode
# Define the content for mcp.json
MCP_JSON_CONTENT=$(cat <<EOF
{
"servers": {
"CosmosDB Golang MCP": {
"type": "stdio",
"command": "$(pwd)/mcp_azure_cosmosdb"
}
}
}
EOF
)
# Write the content to mcp.json
echo "$MCP_JSON_CONTENT" > .vscode/mcp.json
Azure Cosmos DB RBAC permissions and authentication
-
The user principal you will be using should have permissions (control and data plane) to execute CRUD operations on database, container, and items.
-
Authentication
- Local credentials - Just login locally using Azure CLI (az login) and the MCP server will use the DefaultAzureCredential implementation automatically.
- Or, you can set the
COSMOSDB_ACCOUNT_KEY
environment variable in the MCP server configuration:
{ "servers": { "CosmosDB Golang MCP": { "type": "stdio", "command": "/Users/demo/mcp_azure_cosmosdb", "env": { "COSMOSDB_ACCOUNT_KEY": "enter the key" } } } }
You are good to go! Now spin up VS Code Insiders in Agent Mode, or any other MCP tool (like Claude Desktop) and try this out!
Local dev/testing
Start with MCP inspector - npx @modelcontextprotocol/inspector ./mcp_azure_cosmosdb
Recommended Servers
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.
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.
MCP Package Docs Server
Facilitates LLMs to efficiently access and fetch structured documentation for packages in Go, Python, and NPM, enhancing software development with multi-language support and performance optimization.
Claude Code MCP
An implementation of Claude Code as a Model Context Protocol server that enables using Claude's software engineering capabilities (code generation, editing, reviewing, and file operations) through the standardized MCP interface.
@kazuph/mcp-taskmanager
Model Context Protocol server for Task Management. This allows Claude Desktop (or any MCP client) to manage and execute tasks in a queue-based system.
Linear MCP Server
Enables interaction with Linear's API for managing issues, teams, and projects programmatically through the Model Context Protocol.
mermaid-mcp-server
A Model Context Protocol (MCP) server that converts Mermaid diagrams to PNG images.
Jira-Context-MCP
MCP server to provide Jira Tickets information to AI coding agents like Cursor

Linear MCP Server
A Model Context Protocol server that integrates with Linear's issue tracking system, allowing LLMs to create, update, search, and comment on Linear issues through natural language interactions.

Sequential Thinking MCP Server
This server facilitates structured problem-solving by breaking down complex issues into sequential steps, supporting revisions, and enabling multiple solution paths through full MCP integration.