关于 📦 mcp-client-go
mcp-client-go 是一个用于 Go 语言的 MCP 客户端库,供开发者以统一接口注册并调用多个 MCP 服务。它支持 stdio 与 SSE 方式的客户端初始化,并可按服务名或工具名获取客户端。README 列出了大量可对接的服务示例。
主要功能
- 01统一注册与管理多个 MCP 客户端
- 02支持 stdio 与 SSE 方式初始化客户端
- 03按服务名或工具名获取客户端
- 04通过统一接口执行工具调用
- 05支持类 Claude 的配置文件定义服务
适用场景
- 01在 Go 应用中同时接入多个 MCP 服务
- 02通过统一接口为 LLM 调用地图或数据库类工具
MCP 相关
该项目是 MCP 客户端库,负责连接、注册和管理多个 MCP 服务,并执行其提供的工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
📦 mcp-client-go
mcp-client-go 是一个用于 Model Context Protocol (MCP) 的 Golang 客户端库。它允许开发者通过统一的 API 注册并与各种基于 MCP 的服务交互,例如高德地图。
✨ 功能特性
- 轻松集成与 MCP 兼容的服务
- 模块化支持不同类型的服务(例如,高德地图、Github、GoogleMap)
- 统一的注册和客户端管理
- 简单直观的工具执行接口
- 支持 类似 Claude 的配置文件来设置 MCP 服务 示例
- 提供提示词以触发 MCP 请求 文档
📋 支持的服务
| MCP 服务 | 描述 | 文档 | 演示 |
|---|---|---|---|
| redis | 一个 Model Context Protocol 服务,可访问 Redis 数据库。 | doc | redis |
| github | GitHub MCP 服务是一个 Model Context Protocol(MCP)服务,可与 GitHub API 无缝集成 | doc | github |
| aws | 一个 MCP 服务实现,可通过 Bedrock Agent Runtime 从 AWS 知识库中检索信息。 | doc | aws |
| sequential_thinking | 一个 MCP 服务实现,提供工具,通过结构化思考过程进行动态、反思式问题求解。 | doc | - |
| firecrawl | 一个 Model Context Protocol(MCP)服务实现,集成 Firecrawl,提供网页抓取功能。 | doc | firecrawl |
| postgresql | 一个 Model Context Protocol 服务,提供对 PostgreSQL 数据库的只读访问。 | doc | - |
| gitlab | 面向 GitLab API 的 MCP 服务,支持项目管理、文件操作等功能。 | doc | - |
| slack | 面向 Slack API 的 MCP 服务,使 Claude 能够与 Slack 工作区交互。 | doc | - |
| puppeteer | 一个 Model Context Protocol 服务,使用 Puppeteer 提供浏览器自动化功能。 | doc | - |
| everart | 使用 EverArt API 为 Claude Desktop 提供图像生成服务。 | doc | - |
| sentry | 一个 Model Context Protocol 服务,用于检索和分析 Sentry.io 中的问题 | doc | - |
| filesystem | 一个基于 Node.js 的服务,实现了 Model Context Protocol(MCP),用于文件系统操作。 | doc | filesystem |
| fetch | 一个 Model Context Protocol 服务,提供网页内容获取功能。该服务使大模型能够从网页检索和处理内容,并将 HTML 转换为 Markdown,以便更轻松地使用。 | doc | - |
| googlemap | 面向 Google Maps API 的 MCP 服务。 | doc | googlemap |
| flomo | 这是一个基于 TypeScript 的 MCP 服务,可帮助你在 Flomo 中撰写笔记。 | doc | - |
| chatsum | 这个 MCP 服务用于总结你的聊天消息。 | doc | - |
| amap | 此代码库收录了 Model Context Protocol(MCP)的参考实现,以及社区构建的服务和其他资源的参考资料。 | doc | amap http-streamable |
| baidumap | 这个 MCP 服务用于 baidumap | doc | - |
| blender | BlenderMCP 通过 Model Context Protocol(MCP)将 Blender 连接到 Claude AI | doc | - |
| framelink | 使用此 Model Context Protocol 服务,让 Cursor、Windsurf、Cline 和其他 AI 编码工具访问你的 Figma 文件。 | doc | - |
| playwright | 一个 Model Context Protocol(MCP)服务,使用 Playwright 提供浏览器自动化功能。 | doc | playwright sse |
| tavily | Model Context Protocol(MCP)是一项开放标准,使 AI 系统能够与各种数据源和工具无缝交互,从而实现安全的双向连接。 | doc | tavily |
| time | 一个 Model Context Protocol 服务,提供时间和时区转换功能。 | doc | time uvx |
| victoriametrics | 一个 Model Context Protocol 服务,可访问 victoria metrics 数据库。 | doc | victoriametrics |
| atlassian | 面向 Atlassian 产品(Confluence 和 Jira)的 Model Context Protocol(MCP)服务 | doc | |
| notion | 面向 Notion API 的 MCP 服务。 | doc | |
| cloudflare | 面向 Cloudflare API 的 MCP 服务。 | doc | |
| binance | 面向 Binance API 的 MCP 服务。 | doc | |
| youtube | 面向 Youtube API 的 MCP 服务。 | doc | |
| shopify | 面向 Shopify API 的 MCP 服务。 | doc | |
| duckduckgo | 面向 Duckduckgo API 的 MCP 服务。 | doc | |
| aliyun | 面向 Aliyun API 的 MCP 服务。 | doc | aliyun |
| bilibili | 面向 Bilibili API 的 MCP 服务。 | doc | bilibili |
| bitcoin | 面向 Bitcoin API 的 MCP 服务。 | doc | bitcoin |
| airbnb | 面向 Airbnb API 的 MCP 服务。 | doc | airbnb |
| jira | 面向 Jira API 的 MCP 服务。 | doc | |
| 面向 Twitter API 的 MCP 服务。 | doc | ||
| leetcode | 面向 Leetcode API 的 MCP 服务。 | doc | |
| iterm | 面向 Iterm API 的 MCP 服务。 | doc | iterm |
| telegram | 面向 Telegram API 的 MCP 服务。 | doc | telegram |
| zoomeye | 面向 Zoomeye API 的 MCP 服务。 | doc | |
| ipfs | 面向 IPFS API 的 MCP 服务。 | doc | |
| k8s | 面向 K8s API 的 MCP 服务。 | doc | |
| apple-shortcut | 面向 Apple Shortcut API 的 MCP 服务。 | doc | |
| ms-365 | 面向 MS356 API 的 MCP 服务。 | doc | |
| tinybird | 面向 TinyBird API 的 MCP 服务。 | doc | |
| mysql | 面向 Mysql API 的 MCP 服务。 | doc | |
| google calendar | 面向 Google Calendar API 的 MCP 服务。 | doc | |
| sqlite | 面向 Sqlite API 的 MCP 服务。 | doc | |
| mongo | 面向 Mongo API 的 MCP 服务。 | doc | |
| opgg | 面向 Opgg API 的 MCP 服务。 | doc | opgg |
🚀 快速开始
安装
安装 npx、uvx、docker,并将它们添加到环境变量中!
go get github.com/yincongcyincong/mcp-client-go
🧪 示例
客户端演示 应用演示 deepseek 演示 openai 演示 项目
🧱 API 概览
初始化客户端
conf := clients.InitStdioMCPClient("npx-amap-maps-mcp-server", "npx", []string{
"AMAP_MAPS_API_KEY=" + AmapApiKey,
}, []string{
"-y",
"@amap/amap-maps-mcp-server",
})
/
conf := clients.InitSSEMCPClient("npx-amap-maps-mcp-server", "http://127.0.0.1")
/
conf := clients.InitHttpMCPClient("npx-amap-maps-mcp-server", "http://127.0.0.1")
注册 MCP 客户端
clients.RegisterMCPClient(context.Background(), []*param.MCPClientConf{conf})
获取 MCP 客户端
client, err := clients.GetMCPClient("npx-amap-maps-mcp-server")
/
client, err := clients.GetMCPClientByToolName("geo_location")
执行工具
client.ExecTools(ctx, "tool_name", map[string]interface{}{...})
📄 许可证
本项目采用 MIT 许可证。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。