azure-cosmos-mcp-server
A Model Context Protocol (MCP) server that provides secure access to Azure Cosmos DB datasets. Enables Large Language Models (LLMs) to safely query and analyze data through a standardized interface.
AzureCosmosDB
README
Azure Cosmos DB MCP Server
<div align="center"> <img src="./src/img/logo.png" alt="Azure Cosmos DB MCP server logo" width="400"/> </div>
What is this? 🤔
This is a server that lets your LLMs (like Claude , VSCODE ) talk directly to your Azure Cosmos DB data! Think of it as a friendly translator that sits between your AI assistant and your database, making sure they can chat securely and efficiently.
Quick Example
You: "What were our top 10 customers last month?"
Claude: *queries your Azure Cosmos DB database and gives you the answer in plain English*
How Does It Work? 🛠️
This server leverages the Model Context Protocol (MCP), a versatile framework that acts as a universal translator between AI models and databases. Although MCP is built to support any AI model, it is currently accessible as a developer preview in Claude Desktop.
Here's all you need to do:
- Set up project (see below)
- Add your project details to Claude Desktop's config file
- Start chatting with your Azure Cosmos DB data naturally!
What Can It Do? 📊
- Run Azure Cosmos DB queries by just asking questions in plain English
Quick Start 🚀
Prerequisites
- Node.js 14 or higher
- Azure Cosmos DB NOSQL account or Azure Cosmos DB Emulator with the sample dataset(./dataset/vehciles) inserted
- Claude Desktop
Set up project
Obtain the Azure Cosmos DB NoSQL account URI and KEY from the Keys section, and the Database ID and Container ID from the Data Explorer section, then create a .env
file with the following keys, replacing the placeholder values with your own:
COSMOSDB_URI=
COSMOSDB_KEY=
COSMOS_DATABASE_ID=
COSMOS_CONTAINER_ID=
Getting Started
-
Install Dependencies
Run the following command in the root folder to install all necessary dependencies:npm install
-
Build the Project
Compile the project by running:npm run build
-
Start the Server
Navigate to thedist
folder and start the server:npm start
-
Confirmation Message
You should see the following message:Azure Cosmos DB Server running on stdio
How to run it using VSCODE Insiders
To use the Azure MCP with VS Code Insiders with GitHub Copilot Agent Mode, follow these instructions:
-
Install VS Code Insiders.
-
Install the pre-release versions of the GitHub Copilot and GitHub Copilot Chat extensions in VS Code Insiders.
-
Open a new instance of VS Code Insiders in an empty folder.
-
Copy the
mcp.json
file from this repo to your new folder, and update the values to match your environment. -
Open GitHub Copilot and switch to Agent mode. You should see Azure Cosmos DB MCP Server in the list of tools.
-
Try a prompt that tells the agent to use the Azure MCP server, such as "List Vehicles".
-
The agent should be able to use the Azure Cosmos DB MCP server to complete your query.
This setup allows you to seamlessly interact with Azure Cosmos DB through the MCP server in VSCODE with Github Copilot as shown below.
https://github.com/user-attachments/assets/c56a54c1-2bd6-422c-b55f-e8a17745b7ee
Add your project details to Claude Destkop's config file
Open Claude Desktop and Navigate to File -> Settings -> Developer -> Edit Config and open the claude_desktop_config
file and replace with the values below,
{
"mcpServers": {
"cosmosdb": {
"command": "node",
"args": [ "C:/Cosmos/azure-cosmos-mcp/dist/index.js" ] // Your Path for the Azure Cosmos DB MCP server file,
"env": {
"COSMOSDB_URI": "Your Cosmos DB Account URI",
"COSMOSDB_KEY": "Your Cosmos DB KEY",
"COSMOS_DATABASE_ID": "Your Database ID",
"COSMOS_CONTAINER_ID": "Vehicles"
}
}
}
}
You should now have successfully configured the MCP server for Azure Cosmos DB with Claude Desktop. This setup allows you to seamlessly interact with Azure Cosmos DB through the MCP server as shown below.
https://github.com/user-attachments/assets/ae3a14f3-9ca1-415d-8645-1c8367fd6943
Contributing
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
Trademarks
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.
Recommended Servers
Crypto Price & Market Analysis MCP Server
A Model Context Protocol (MCP) server that provides comprehensive cryptocurrency analysis using the CoinCap API. This server offers real-time price data, market analysis, and historical trends through an easy-to-use interface.
MCP PubMed Search
Server to search PubMed (PubMed is a free, online database that allows users to search for biomedical and life sciences literature). I have created on a day MCP came out but was on vacation, I saw someone post similar server in your DB, but figured to post mine.
dbt Semantic Layer MCP Server
A server that enables querying the dbt Semantic Layer through natural language conversations with Claude Desktop and other AI assistants, allowing users to discover metrics, create queries, analyze data, and visualize results.
mixpanel
Connect to your Mixpanel data. Query events, retention, and funnel data from Mixpanel analytics.

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.

Nefino MCP Server
Provides large language models with access to news and information about renewable energy projects in Germany, allowing filtering by location, topic (solar, wind, hydrogen), and date range.
Vectorize
Vectorize MCP server for advanced retrieval, Private Deep Research, Anything-to-Markdown file extraction and text chunking.
Mathematica Documentation MCP server
A server that provides access to Mathematica documentation through FastMCP, enabling users to retrieve function documentation and list package symbols from Wolfram Mathematica.
kb-mcp-server
An MCP server aimed to be portable, local, easy and convenient to support semantic/graph based retrieval of txtai "all in one" embeddings database. Any txtai embeddings db in tar.gz form can be loaded
Research MCP Server
The server functions as an MCP server to interact with Notion for retrieving and creating survey data, integrating with the Claude Desktop Client for conducting and reviewing surveys.