Token导航 LogoToken导航TokenDH.com
MCP cosmosdb go logo
开发工具HTTP官方级别未说明来源级核验

MCP cosmosdb go

MCP Server

Sample implementation of a MCP server for Cosmos DB built using the Go SDK

工具数

9

提示词数

0

GitHub Stars

6

资源数

0
数据分析GoClaudeClaude DesktopClaudeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

abhirockzz

提供方

abhirockzz

最后核验

2026/5/18 03:27

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

基于Go的Azure Cosmos DB MCP服务器的实现

它与Azure Cosmos DB服务和 vNext仿真器,并公开了以下用于与Azure Cosmos DB交互的工具:

  1. 列出数据库:检索Cosmos DB帐户中所有数据库的列表。
  2. 创建数据库:在Cosmos DB帐户中创建一个新数据库。
  3. 列出容器:检索特定数据库中所有容器的列表。
  4. 读取容器元数据:获取特定容器的元数据或配置详细信息。
  5. 创建容器:使用定义的分区键在指定数据库中创建新容器。
  6. 将项目添加到容器:将新项添加到数据库中的指定容器中。
  7. 阅读项目:使用容器的ID和分区键从容器中读取特定项目。
  8. 执行查询:在具有可选分区键作用域的Cosmos DB容器上执行SQL查询。
  9. 批量创建项目:使用事务批处理操作将多个项目添加到容器中。

▶️ 这是一个使用GitHub Copilot CLI的演示,但同样适用于 Visual Studio代码中的代理模式,或任何其他MCP兼容工具(克劳德代码等):

![MCP server demo](https://www.youtube.com/watch?v=l6gSYNd1Txs)

🚀 如何跑步

首先,克隆GitHub仓库并构建二进制文件:

git clone https://github.com/abhirockzz/mcp_cosmosdb_go
cd mcp_cosmosdb_go

go build -o mcp_azure_cosmosdb_go main.go

备注:MCP服务器使用 DefaultAzureCredential 通过Azure SDK for Go实现与Azure Cosmos DB的身份验证。这意味着您可以使用各种方法进行身份验证,包括环境变量、托管身份或Azure CLI登录等。

此^不适用于本地仿真器,因为它使用众所周知的基于密钥的身份验证。

此MCP服务器支持流式HTTP和Stdio传输。您可以在两种模式下运行MCP服务器:

  • 作为HTTP服务器在您的计算机上本地运行,或 stdio 过程
  • 作为HTTP服务器部署到远程端点(如Azure应用服务、Azure容器应用等)

💻 本地模式

得益于Streamable HTTP支持,您可以在本地计算机上轻松地将此MCP服务器作为HTTP服务器运行。

使用Azure CLI登录(az登录),或Azure开发人员CLI(azd身份验证登录).由于MCP服务器使用 DefaultAzureCredential,它将作为登录到Azure CLI或Azure Developer CLI的身份进行身份验证。

您登录的用户主体(身份)应该具有权限(控制数据平面)对数据库、容器和项执行CRUD操作。

🌐 HTTP服务器

启动服务器:

export COSMOSDB_MCP_SERVER_MODE=http
./mcp_azure_cosmosdb_go

这将在端口上启动服务器 9090 默认情况下。您可以通过设置来更改端口 PORT 环境变量。

你怎么样 配置 MCP服务器将根据您使用的MCP客户端/工具而有所不同。对于VS Code,您可以 遵循以下说明 如何使用配置此服务器 mcp.json 文件。

以下是一个示例 mcp.json HTTP服务器的配置:

{
  "servers": {
    "mcp_azure_cosmosdb_go_http": {
      "type": "http",
      "url": "http://localhost:9090"
    }
  }
  //other MCP servers...
}
如果已配置其他端口,请更改端口。

🖥️ Stdio服务器

以下是一个示例 mcp.json 配置 stdio 模式:

{
  "servers": {
    "mcp_azure_cosmosdb_go_stdio": {
      "type": "stdio",
      "command": "./mcp_azure_cosmosdb_go"
    }
  }
  //other MCP servers...
}

在工具中配置MCP服务器后,您就可以开始使用它与Azure Cosmos DB交互(就像上面显示的演示一样)。对于其他工具,如Claude Code、Claude Desktop等,请参阅其各自的文档,了解如何配置MCP HTTP/stdio 服务器。

大型语言模型(LLM)本质上是非确定性的,可能会出错。 始终验证 在根据结果和查询做出任何决定之前。

对于这两种情况,如果你想使用vNext模拟器,请确保它已经在你的机器上运行- docker run -p 8081:8081 -p 1234:1234 mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:vnext-preview

☁️ 远程端点

您还可以将此MCP服务器部署到任何云服务(如Azure应用服务、Azure容器应用等),并将其作为HTTP端点公开。Azure服务应支持托管身份,MCP服务器将使用 DefaultAzureCredential 实施。

⛔️ 此执行模式为 未推荐的。仅用于测试目的。这是因为,尽管MCP服务器可以使用托管身份安全地访问Azure Cosmos DB,但它 对客户端进行身份验证(或授权)-任何可以访问端点的人都可以在您的Cosmos DB帐户上执行操作。

🧪 本地开发和测试

使用 MCP检查员 - make mcp_inspector

![](images/mcp_inspector.png)

目录标签

目录标签

数据分析GoClaudedeveloper-toolsgolangmcpazure-cosmos-dbmcp-serverAzureCosmosDB本地部署MCP服务器Go语言数据库管理CRUD操作

支持客户端

Claude DesktopClaudeVS Code

接入字段

传输方式(transport,传输协议)

HTTP

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

9

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

HTTPnone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP