Azure Cosmos DB MCP  Server

Azure Cosmos DB MCP Server

一个模型上下文协议(MCP)服务器,提供对 Azure Cosmos DB 数据集的安全访问。使大型语言模型(LLM)能够通过标准化的接口安全地查询和分析数据。

AzureCosmosDB

研究与数据
访问服务器

README

Azure Cosmos DB MCP 服务器

<div align="center"> <img src="./src/img/logo.png" alt="Azure Cosmos DB MCP server logo" width="400"/> </div>

这是什么? 🤔

这是一个服务器,可以让你的 LLM(例如 Claude、VSCODE)直接与你的 Azure Cosmos DB 数据对话! 可以把它想象成一个友好的翻译器,位于你的 AI 助手和数据库之间,确保它们可以安全高效地聊天。

快速示例

你:“上个月我们排名前 10 的客户是谁?”
Claude:*查询你的 Azure Cosmos DB 数据库,并用简单的英语给你答案*

它如何工作? 🛠️

该服务器利用模型上下文协议 (MCP),这是一个通用的框架,充当 AI 模型和数据库之间的通用翻译器。 虽然 MCP 旨在支持任何 AI 模型,但目前可以在 Claude Desktop 中作为开发者预览版使用。

以下是您需要做的:

  1. 设置项目(见下文)
  2. 将您的项目详细信息添加到 Claude Desktop 的配置文件
  3. 开始以自然的方式与您的 Azure Cosmos DB 数据聊天!

它能做什么? 📊

  • 只需用简单的英语提问即可运行 Azure Cosmos DB 查询

快速开始 🚀

前提条件

  • Node.js 14 或更高版本
  • Azure Cosmos DB NOSQL 帐户或已插入示例数据集 (./dataset/vehciles) 的 Azure Cosmos DB 模拟器
  • Claude Desktop

设置项目

从“密钥”部分获取 Azure Cosmos DB NoSQL 帐户 URI 和密钥,从“数据资源管理器”部分获取数据库 ID 和容器 ID,然后创建一个包含以下密钥的 .env 文件,并将占位符值替换为您自己的值:

COSMOSDB_URI=
COSMOSDB_KEY=
COSMOS_DATABASE_ID=
COSMOS_CONTAINER_ID=

开始使用

  1. 安装依赖项 在根文件夹中运行以下命令以安装所有必要的依赖项:

    npm install
    
  2. 构建项目 通过运行以下命令编译项目:

    npm run build
    
  3. 启动服务器 导航到 dist 文件夹并启动服务器:

    npm start
    
  4. 确认消息 您应该看到以下消息:

    Azure Cosmos DB Server running on stdio
    

如何使用 VSCODE Insiders 运行它

要将 Azure MCP 与带有 GitHub Copilot Agent 模式的 VS Code Insiders 一起使用,请按照以下说明操作:

  1. 安装 VS Code Insiders

  2. 在 VS Code Insiders 中安装 GitHub Copilot 和 GitHub Copilot Chat 扩展的预发布版本。

  3. 在一个空文件夹中打开一个新的 VS Code Insiders 实例。

  4. 将此 repo 中的 mcp.json 文件复制到您的新文件夹,并更新这些值以匹配您的环境。

  5. 打开 GitHub Copilot 并切换到 Agent 模式。 您应该在工具列表中看到 Azure Cosmos DB MCP Server。

  6. 尝试一个提示,告诉代理使用 Azure MCP 服务器,例如“List Vehicles”。

  7. 代理应该能够使用 Azure Cosmos DB MCP 服务器来完成您的查询。

此设置允许您通过 VSCODE 中带有 Github Copilot 的 MCP 服务器无缝地与 Azure Cosmos DB 交互,如下所示。

https://github.com/user-attachments/assets/c56a54c1-2bd6-422c-b55f-e8a17745b7ee

将您的项目详细信息添加到 Claude Destkop 的配置文件

打开 Claude Desktop 并导航到 File -> Settings -> Developer -> Edit Config 并打开 claude_desktop_config 文件,并替换为以下值,

{
  "mcpServers": {
    "cosmosdb": {
      "command": "node",
      "args": [ "C:/Cosmos/azure-cosmos-mcp/dist/index.js" ] // Azure Cosmos DB MCP 服务器文件的路径,
      "env": {
        "COSMOSDB_URI": "您的 Cosmos DB 帐户 URI",
        "COSMOSDB_KEY": "您的 Cosmos DB 密钥",
        "COSMOS_DATABASE_ID": "您的数据库 ID",
        "COSMOS_CONTAINER_ID": "Vehicles"
      }
    }
  }
}

您现在应该已成功配置了用于 Azure Cosmos DB 的 MCP 服务器与 Claude Desktop。 此设置允许您通过 MCP 服务器无缝地与 Azure Cosmos DB 交互,如下所示。

https://github.com/user-attachments/assets/ae3a14f3-9ca1-415d-8645-1c8367fd6943

贡献

欢迎提出贡献和建议。 大多数贡献都要求您同意 贡献者许可协议 (CLA),声明您有权并实际授予我们 使用您的贡献的权利。 有关详细信息,请访问 https://cla.opensource.microsoft.com。

当您提交拉取请求时,CLA 机器人会自动确定您是否需要提供 CLA 并适当地修饰 PR(例如,状态检查、注释)。 只需按照 机器人提供的说明进行操作。 您只需在使用我们的 CLA 的所有存储库中执行此操作一次。

本项目已采用 Microsoft 开源行为准则。 有关更多信息,请参见 行为准则常见问题解答 或 通过 opencode@microsoft.com 联系我们,提出任何其他问题或意见。

商标

本项目可能包含项目、产品或服务的商标或徽标。 授权使用 Microsoft 商标或徽标必须遵守 Microsoft 的商标和品牌指南。 在本项目的修改版本中使用 Microsoft 商标或徽标不得引起混淆或暗示 Microsoft 赞助。 任何使用第三方商标或徽标的行为均受这些第三方政策的约束。

推荐服务器

Crypto Price & Market Analysis MCP Server

Crypto Price & Market Analysis MCP Server

一个模型上下文协议 (MCP) 服务器,它使用 CoinCap API 提供全面的加密货币分析。该服务器通过一个易于使用的界面提供实时价格数据、市场分析和历史趋势。 (Alternative, slightly more formal and technical translation): 一个模型上下文协议 (MCP) 服务器,利用 CoinCap API 提供全面的加密货币分析服务。该服务器通过用户友好的界面,提供实时价格数据、市场分析以及历史趋势数据。

精选
TypeScript
MCP PubMed Search

MCP PubMed Search

用于搜索 PubMed 的服务器(PubMed 是一个免费的在线数据库,用户可以在其中搜索生物医学和生命科学文献)。 我是在 MCP 发布当天创建的,但当时正在度假。 我看到有人在您的数据库中发布了类似的服务器,但还是决定发布我的服务器。

精选
Python
mixpanel

mixpanel

连接到您的 Mixpanel 数据。 从 Mixpanel 分析查询事件、留存和漏斗数据。

精选
TypeScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Nefino MCP Server

Nefino MCP Server

为大型语言模型提供访问德国可再生能源项目新闻和信息的能力,允许按地点、主题(太阳能、风能、氢能)和日期范围进行筛选。

官方
Python
Vectorize

Vectorize

将 MCP 服务器向量化以实现高级检索、私有深度研究、Anything-to-Markdown 文件提取和文本分块。

官方
JavaScript
Mathematica Documentation MCP server

Mathematica Documentation MCP server

一个服务器,通过 FastMCP 提供对 Mathematica 文档的访问,使用户能够从 Wolfram Mathematica 检索函数文档和列出软件包符号。

本地
Python
kb-mcp-server

kb-mcp-server

一个 MCP 服务器,旨在实现便携性、本地化、简易性和便利性,以支持对 txtai “all in one” 嵌入数据库进行基于语义/图的检索。任何 tar.gz 格式的 txtai 嵌入数据库都可以被加载。

本地
Python
Research MCP Server

Research MCP Server

这个服务器用作 MCP 服务器,与 Notion 交互以检索和创建调查数据,并与 Claude Desktop Client 集成以进行和审查调查。

本地
Python
Cryo MCP Server

Cryo MCP Server

一个API服务器,实现了模型补全协议(MCP),用于Cryo区块链数据提取,允许用户通过任何兼容MCP的客户端查询以太坊区块链数据。

本地
Python