# oatpp-mcp **Repository Path**: mirrors_oatpp/oatpp-mcp ## Basic Information - **Project Name**: oatpp-mcp - **Description**: Anthropic’s Model Context Protocol implementation for Oat++ - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-12-12 - **Last Updated**: 2026-02-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # oatpp-mcp Anthropic’s Model Context Protocol implementation for Oat++ Read more: - [About Oat++](https://oatpp.io/) - [Oat++ Repository](https://github.com/oatpp/oatpp) - [Model Context Protocol](https://www.anthropic.com/news/model-context-protocol) ## Supported features ### Autogenerated tools for API :tada: `oatpp-mcp` can automatically generate tools from `ApiController` so that you can query your API with LLM. :tada: - [Detailed tutorial](https://medium.com/oatpp/c-restful-web-service-with-autogenerated-mcp-server-to-connect-with-llms-156d68bbb661) - Example project [example-crud](https://github.com/oatpp/example-crud) (branch `add_mcp_server`) ### Transport - STDIO - HTTP SSE ### Server features - [Prompts](https://spec.modelcontextprotocol.io/specification/server/prompts/) - [Resources](https://spec.modelcontextprotocol.io/specification/server/resources/) - [Tools](https://spec.modelcontextprotocol.io/specification/server/tools/) ## Build And Install ### Pre Requirements - Install the main [oatpp](https://github.com/oatpp/oatpp) module ### Install module - Clone this repository. - In the root of the repository run: ```bash mkdir build && cd build cmake .. make install ``` ## Examples Find working example in tests `/test/oatpp-mcp/app/ServerTest.cpp` ### Serve via STDIO **Note:** make sure to redirect oatpp logging to a different stream - ex.: to file by providing custom Logger. ```cpp /* Create MCP server */ oatpp::mcp::Server server; /* Add prompts */ server.addPrompt(std::make_shared()); /* Add resource */ server.addResource(std::make_shared()); /* Add tools */ server.addTool(std::make_shared()); /* Run server */ server.stdioListen(); ``` ### Serve via SSE ```cpp /* Create MCP server */ oatpp::mcp::Server server; /* Add prompts */ server.addPrompt(std::make_shared()); /* Add resource */ server.addResource(std::make_shared()); /* Add tools */ server.addTool(std::make_shared()); /* Add SSE controller to your HTTP server router */ router->addController(server.getSseController()); ```