About oatpp-mcp
oatpp-mcp is an MCP server published by oatpp in the Developer Tools category: anthropic’s Model Context Protocol implementation for Oat++.
The repository has 50 stars and 6 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/oatpp/oatpp-mcpThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about oatpp-mcp
Powered by Claude · Grounded in docs
Security checks
Static checks derived from the repository 4 days ago. Heuristics on the source, not an audit.
- ✓README presentThe repository ships documentation.
- ✓License declaredUsable under a stated license.
- ✓Tests presentA test suite exists in the repository.
- !Dependencies pinnedNo lockfile. Installs can pull different code over time.
- !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.
1 check has not been run yet.
README
oatpp-mcp
Anthropic’s Model Context Protocol implementation for Oat++
Read more:
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
- Example project example-crud (branch
add_mcp_server)
Transport
- STDIO
- HTTP SSE
Server features
Build And Install
Pre Requirements
- Install the main oatpp module
Install module
- Clone this repository.
- In the root of the repository run:
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.
/* 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();
Serve via 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());
README fetched from the repository 4 days ago. The original is authoritative.