mcp-cpp

mcp-cpp

site icon
2025.03.15 20
C++通信框架C++ SDK开发效率
mcp-cpp 是一个基于 C++ 的 Model Context Protocol (MCP) SDK,旨在为开发者提供一个现代化的 C++17 框架,用于创建 MCP 服务器和客户端。该 SDK 支持 JSON-RPC 2.0 消息传递,提供多种传输机制(如 STDIO 和计划中的 HTTP/SSE),并支持 MCP 的核心功能,如工具、资源和提示。其设计注重线程安全和内存安全,采用 RAII 和智能指针实现,具备全面的错误处理机制。
View on GitHub

Overview

基本能力

产品定位

mcp-cpp 是一个用于构建 MCP 服务器和客户端的 C++ SDK,专注于提供高效、安全的通信框架。

核心功能

  • JSON-RPC 2.0 消息传递
  • 多种传输机制(STDIO、HTTP/SSE 计划中)
  • 支持 MCP 功能:工具、资源和提示
  • 线程安全设计
  • 内存安全实现(RAII 和智能指针)
  • 全面的错误处理

适用场景

  • 开发需要高效通信的服务器和客户端应用
  • 构建基于 MCP 协议的分布式系统
  • 需要线程安全和内存安全的 C++ 项目

工具列表

  • Echo Server/Client:演示库的基本用法,支持简单的消息回显功能。

常见问题解答

  • 目前项目处于开发阶段,部分功能(如 HTTP/SSE 传输)尚未实现。

使用教程

使用依赖

  • 需要安装 CMake 用于构建项目。

安装教程

# 配置构建
cmake -B build

# 构建库
cmake --build build

# 运行测试
cd build && ctest

调试方式

  • 运行 Echo Server: bash ./build/examples/simple_server/echo_server
  • 运行 Echo Client: bash ./build/examples/simple_client/echo_client Client 启动时会发送测试请求和通知,之后可以输入消息,服务器会回显消息。

许可证

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