Oat++模型上下文协议实现

oatpp-mcp是Oat++框架的Anthropic模型上下文协议实现,支持自动生成API工具、多种传输协议及服务器功能,适用于与大型语言模型(LLM)集成的开发场景。

  • by oatpp
  • C++
  • 本地部署
  • 50 星标
  • 更新于
在 GitHub 查看 oatpp/oatpp-mcp

使用说明

oatpp-mcp

Anthropic在Oat中的模型上下文协议实现++

阅读更多:

支持的功能

API的自动生成工具

:然后: oatpp-mcp 可以从以下位置自动生成工具 ApiController 以便您可以使用LLM查询您的API。:塔达:

运输

  • 标准输入输出
  • HTTP SSE

服务器功能

构建和安装

先决条件

  • 安装主机 oatpp 模块

安装模块

  • 克隆此存储库。
  • 在存储库的根目录中运行:
    mkdir build && cd build
    cmake ..
    make install
    

例子

在测试中查找工作示例 /test/oatpp-mcp/app/ServerTest.cpp

通过STDIO服务

注: 确保将oatpp日志重定向到其他流,例如:通过提供自定义Logger重定向到文件。

  /* Create MCP server */
  oatpp::mcp::Server server;

  /* Add prompts */
  server.addPrompt(std::make_shared<prompts::CodeReview>());

  /* Add resource */
  server.addResource(std::make_shared<resource::File>());
  
  /* Add tools */
  server.addTool(std::make_shared<tools::Logger>());

  /* Run server */
  server.stdioListen(); 

通过SSE服务

  /* Create MCP server */
  oatpp::mcp::Server server;

  /* Add prompts */
  server.addPrompt(std::make_shared<prompts::CodeReview>());

  /* Add resource */
  server.addResource(std::make_shared<resource::File>());
  
  /* Add tools */
  server.addTool(std::make_shared<tools::Logger>());

  /* Add SSE controller to your HTTP server router */
  router->addController(server.getSseController());