oatpp-mcp

oatpp-mcp

site icon
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。

核心功能

  1. 自动生成 API 工具:可以从 ApiController 自动生成工具,支持通过 LLM 查询 API。
  2. 传输方式:支持 STDIO 和 HTTP SSE 两种传输方式。
  3. 服务器功能
  4. 提示(Prompts)
  5. 资源(Resources)
  6. 工具(Tools)

适用场景

  1. 开发效率:通过自动生成的工具快速构建和测试 API。
  2. LLM 集成:与大型语言模型(LLM)集成,实现智能化的 API 查询和交互。

工具列表

  1. Prompts:用于定义和管理提示信息。
  2. Resources:用于管理服务器资源。
  3. Tools:提供各种工具,如日志工具(Logger)等。

常见问题解答

  1. 如何安装 oatpp-mcp?
  2. 需要先安装主模块 oatpp
  3. 如何运行示例?
  4. 示例代码可以在 /test/oatpp-mcp/app/ServerTest.cpp 中找到。

使用教程

使用依赖

  1. 安装主模块 oatpp

安装教程

  1. 克隆仓库: bash git clone https://github.com/oatpp/oatpp-mcp.git
  2. 构建和安装: bash mkdir build && cd build cmake .. make install

调试方式

  1. 通过 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();
  2. 通过 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());

许可证

该项目遵循 Apache-2.0 开源许可条款,请参阅 Apache-2.0 了解完整条款。