Mcpcpp
mcpcpp是一个用于实现模型上下文协议(MCP)的现代C++库,支持创建AI应用工具集成服务器和客户端,提供STDIO和SSE/HTTP双传输模式、动态配置加载等功能。
2.5分
7.4K

什么是mcpcpp?

mcpcpp是一个C++库,实现了Model Context Protocol (MCP)标准。MCP是一种让AI助手(如Claude、ChatGPT等)安全地访问外部工具和数据的协议。通过mcpcpp,你可以将你的C++应用程序功能暴露给AI助手使用,比如计算器、文件操作、API调用等。

如何使用mcpcpp?

使用mcpcpp非常简单:1) 安装库和依赖,2) 创建MCP服务器,3) 注册你的工具函数,4) 运行服务器。AI助手就能通过MCP协议调用你注册的工具了。

适用场景

适用于需要让AI助手访问本地或远程服务的场景,如:数据分析工具、系统管理工具、自定义API网关、开发辅助工具等。特别适合C++开发者想要为AI助手提供高性能的工具服务。

主要功能

完整的MCP协议支持
完全兼容MCP协议标准(v2024-11-05),基于JSON-RPC 2.0,确保与各种AI客户端兼容。
双传输模式
支持STDIO(标准输入输出)和SSE/HTTP两种通信模式,适应不同部署环境。
工具注册
可以将C++函数注册为AI可调用的工具,支持参数验证和类型安全。
资源服务
可以暴露数据、配置文件和文档作为资源供AI助手读取。
提示模板
提供可重用的提示模板,AI助手可以根据模板生成特定格式的响应。
客户端库
包含完整的客户端库,可以从C++程序连接其他MCP服务器。
动态配置
支持从JSON配置文件动态加载工具和资源配置,无需重新编译。
头文件选项
提供头文件版本,便于快速集成到现有项目中。
优势
高性能:C++实现,执行速度快,内存占用低
类型安全:强类型系统减少运行时错误
跨平台:支持Linux、macOS、Windows等主流系统
易于集成:提供CMake支持和头文件版本
协议兼容:与官方MCP标准完全兼容
丰富的功能:支持工具、资源、提示等完整MCP功能
局限性
需要C++17或更高版本编译器
对非C++开发者有一定学习曲线
需要手动管理内存和资源(C++特性)
相比Python/JavaScript版本,快速原型开发稍慢

如何使用

安装mcpcpp
首先克隆仓库并构建项目。需要安装CMake和C++17编译器。
创建MCP服务器
在你的C++项目中包含头文件并创建服务器实例。
注册工具函数
将你的C++函数注册为AI可调用的工具。需要定义工具名称、描述和参数模式。
配置AI客户端
在AI客户端(如Claude Desktop)中配置MCP服务器连接。
运行和测试
运行服务器并在AI客户端中测试工具调用。

使用案例

数学计算器工具
创建一个数学计算器,让AI助手可以进行各种数学运算。
文件系统浏览器
暴露文件系统访问功能,让AI助手可以读取目录内容和文件信息。
系统监控工具
提供系统状态监控功能,让AI助手可以检查CPU、内存使用情况。
API网关工具
将内部API封装为MCP工具,让AI助手可以通过自然语言调用API。

常见问题

MCP是什么?为什么需要它?
mcpcpp和Python/JavaScript的MCP实现有什么区别?
我需要学习C++才能使用mcpcpp吗?
如何调试MCP服务器?
支持哪些AI客户端?
如何保证工具调用的安全性?
可以同时运行多个MCP服务器吗?
如何处理工具调用的错误?

相关资源

官方MCP文档
Model Context Protocol官方文档和规范
GitHub仓库
mcpcpp源代码和问题跟踪
Python MCP SDK
官方Python MCP实现,可作为参考
TypeScript MCP SDK
官方TypeScript MCP实现
Claude Desktop配置指南
如何在Claude Desktop中配置MCP服务器
JSON Schema文档
工具参数模式定义的JSON Schema规范

安装

复制以下命令到你的Client进行配置
{
  "mcpServers": {
    "cppmcp-example": {
      "command": "/path/to/build/examples/simple_server",
      "args": ["stdio"]
    }
  }
}
注意:您的密钥属于敏感信息,请勿与任何人分享。

替代品

V
Vestige
Vestige是一个基于认知科学的AI记忆引擎,通过实现预测误差门控、FSRS-6间隔重复、记忆梦境等29个神经科学模块,为AI提供长期记忆能力。包含3D可视化仪表板和21个MCP工具,完全本地运行,无需云端。
Rust
4.5K
4.5分
M
Moltbrain
MoltBrain是一个为OpenClaw、MoltBook和Claude Code设计的长期记忆层插件,能够自动学习和回忆项目上下文,提供智能搜索、观察记录、分析统计和持久化存储功能。
TypeScript
4.1K
4.5分
B
Bm.md
一个功能丰富的Markdown排版工具,支持多种样式主题和平台适配,提供实时编辑预览、图片导出和API集成能力
TypeScript
4.4K
5分
S
Security Detections MCP
Security Detections MCP 是一个基于Model Context Protocol的服务器,允许LLM查询统一的安全检测规则数据库,涵盖Sigma、Splunk ESCU、Elastic和KQL格式。最新3.0版本升级为自主检测工程平台,可自动从威胁情报中提取TTPs、分析覆盖差距、生成SIEM原生格式检测规则、运行测试并验证。项目包含71+工具、11个预构建工作流提示和知识图谱系统,支持多SIEM平台。
TypeScript
6.0K
4分
P
Paperbanana
PaperBanana是一个自动化生成学术图表和统计图的智能框架,支持从文本描述生成高质量的论文插图,采用多智能体管道和迭代优化,提供CLI、Python API和MCP服务器等多种使用方式。
Python
7.7K
5分
B
Better Icons
一个提供超过20万图标搜索和检索的MCP服务器和CLI工具,支持150多个图标库,帮助AI助手和开发者快速获取和使用图标。
TypeScript
6.7K
4.5分
A
Assistant Ui
assistant-ui是一个开源TypeScript/React库,用于快速构建生产级AI聊天界面,提供可组合的UI组件、流式响应、无障碍访问等功能,支持多种AI后端和模型。
TypeScript
7.3K
5分
A
Apify MCP Server
Apify MCP服务器是一个基于模型上下文协议(MCP)的工具,允许AI助手通过数千个现成的爬虫、抓取器和自动化工具(Apify Actor)从社交媒体、搜索引擎、电商等网站提取数据。它支持OAuth和Skyfire代理支付,可通过HTTPS端点或本地stdio方式集成到Claude、VS Code等MCP客户端中。
TypeScript
7.5K
5分
F
Figma Context MCP
Framelink Figma MCP Server是一个为AI编程工具(如Cursor)提供Figma设计数据访问的服务器,通过简化Figma API响应,帮助AI更准确地实现设计到代码的一键转换。
TypeScript
74.4K
4.5分
D
Duckduckgo MCP Server
已认证
DuckDuckGo搜索MCP服务器,为Claude等LLM提供网页搜索和内容抓取服务
Python
85.7K
4.3分
F
Firecrawl MCP Server
Firecrawl MCP Server是一个集成Firecrawl网页抓取能力的模型上下文协议服务器,提供丰富的网页抓取、搜索和内容提取功能。
TypeScript
149.8K
5分
E
Edgeone Pages MCP Server
EdgeOne Pages MCP是一个通过MCP协议快速部署HTML内容到EdgeOne Pages并获取公开URL的服务
TypeScript
33.0K
4.8分
B
Baidu Map
已认证
百度地图MCP Server是国内首个兼容MCP协议的地图服务,提供地理编码、路线规划等10个标准化API接口,支持Python和Typescript快速接入,赋能智能体实现地图相关功能。
Python
50.1K
4.5分
E
Exa Web Search
已认证
Exa MCP Server是一个为AI助手(如Claude)提供网络搜索功能的服务器,通过Exa AI搜索API实现实时、安全的网络信息获取。
TypeScript
57.3K
5分
C
Context7
Context7 MCP是一个为AI编程助手提供实时、版本特定文档和代码示例的服务,通过Model Context Protocol直接集成到提示中,解决LLM使用过时信息的问题。
TypeScript
106.0K
4.7分
M
Minimax MCP Server
MiniMax Model Context Protocol (MCP) 是一个官方服务器,支持与强大的文本转语音、视频/图像生成API交互,适用于多种客户端工具如Claude Desktop、Cursor等。
Python
63.6K
4.8分
AIBase
智启未来,您的人工智能解决方案智库