
oatpp-mcp

2024.12.13
37
C++API 工具生成LLM 集成开发效率
oatpp-mcp 是 Anthropic 的 Model Context Protocol 在 Oat++ 框架中的实现。它主要用于为 API 自动生成工具,使得可以通过 LLM(大型语言模型)查询 API。该服务支持 STDIO 和 HTTP SSE 两种传输方式,并具备提示、资源和工具等服务器功能。
View on GitHub
Overview
基本能力
产品定位
oatpp-mcp
是一个基于 Oat++ 框架的 Model Context Protocol 实现,旨在为 API 提供自动生成的工具,以便通过 LLM 查询 API。
核心功能
- 自动生成 API 工具:可以从
ApiController
自动生成工具,支持通过 LLM 查询 API。 - 传输方式:支持 STDIO 和 HTTP SSE 两种传输方式。
- 服务器功能:
- 提示(Prompts)
- 资源(Resources)
- 工具(Tools)
适用场景
- 开发效率:通过自动生成的工具快速构建和测试 API。
- LLM 集成:与大型语言模型(LLM)集成,实现智能化的 API 查询和交互。
工具列表
- Prompts:用于定义和管理提示信息。
- Resources:用于管理服务器资源。
- Tools:提供各种工具,如日志工具(Logger)等。
常见问题解答
- 如何安装 oatpp-mcp?
- 需要先安装主模块 oatpp。
- 如何运行示例?
- 示例代码可以在
/test/oatpp-mcp/app/ServerTest.cpp
中找到。
使用教程
使用依赖
- 安装主模块 oatpp。
安装教程
- 克隆仓库:
bash git clone https://github.com/oatpp/oatpp-mcp.git
- 构建和安装:
bash mkdir build && cd build cmake .. make install
调试方式
- 通过 STDIO 运行:
cpp 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 运行:
cpp 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>()); router->addController(server.getSseController());