article
README
🚀 Anthropic模型上下文协议(MCP)在Oat++中的实现
本项目实现了在Oat++中集成Anthropic的Model Context Protocol(MCP),为开发者提供了便捷的方式来使用相关功能,实现与LLM的交互。
🚀 快速开始
本项目是在Oat++中对Anthropic的Model Context Protocol(MCP)的实现。若想了解更多相关信息,可参考以下链接:
✨ 主要特性
自动生成API工具
:tada: oatpp-mcp 能够从 ApiController 自动生成工具,让您可以使用LLM查询API。:tada:
- 详细教程:链接
- 示例项目:example-crud(分支
add_mcp_server)
传输方式
- STDIO
- HTTP SSE
服务器功能
📦 安装指南
先决条件
需安装主 Oat++ 模块。
安装模块
- 克隆此仓库。
- 在仓库根目录下运行以下命令:
mkdir build && cd build
cmake ..
make install
💻 使用示例
基础用法
查看测试文件夹中的工作示例 /test/oatpp-mcp/app/ServerTest.cpp。
通过STDIO提供服务
⚠️ 重要提示
确保将Oat++日志重定向到其他流,例如:通过自定义Logger输出到文件。
/* 创建MCP服务器 */
oatpp::mcp::Server server;
/* 添加提示词 */
server.addPrompt(std::make_shared<prompts::CodeReview>());
/* 添加资源 */
server.addResource(std::make_shared<resource::File>());
/* 添加工具 */
server.addTool(std::make_shared<tools::Logger>());
/* 运行服务器 */
server.stdioListen();
通过SSE提供服务
/* 创建MCP服务器 */
oatpp::mcp::Server server;
/* 添加提示词 */
server.addPrompt(std::make_shared<prompts::CodeReview>());
/* 添加资源 */
server.addResource(std::make_shared<resource::File>());
/* 添加工具 */
server.addTool(std::make_shared<tools::Logger>());
/* 将SSE控制器添加到HTTP服务器路由中 */
router->addController(server.getSseController());
扫码加入微信群