MCP ExplorerExplorer

Oatpp Oatpp Mcp

@MCP-Mirroron a year ago
1 Apache-2.0
FreeCommunity
AI Systems
Mirror of https://github.com/oatpp/oatpp-mcp

Overview

What is Oatpp Oatpp Mcp

oatpp_oatpp-mcp is an implementation of the Model Context Protocol designed for the Oat++ framework, allowing seamless interaction with large language models (LLMs).

Use cases

Use cases include building RESTful web services that connect with LLMs, creating interactive applications for code reviews, and developing tools that leverage AI for various tasks.

How to use

To use oatpp_oatpp-mcp, clone the repository, install the main oatpp module, and follow the build instructions. You can create an MCP server by adding prompts, resources, and tools, then run it via STDIO or HTTP SSE.

Key features

Key features include autogenerated tools for API interaction, support for STDIO and HTTP SSE transport, and functionalities for managing prompts, resources, and tools.

Where to use

oatpp_oatpp-mcp can be used in applications that require interaction with large language models, such as chatbots, automated code review systems, and other AI-driven services.

Content

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:

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());

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers