Token导航 LogoToken导航TokenDH.com
Polyglot Cpp logo
AI代理stdio官方级别未说明来源级核验

Polyglot Cpp

MCP Server

一个高性能的MCP服务器,用于动态编译、运行、调试和分析C++代码,适用于竞争编程平台、AI驱动开发工具和教育平台。

工具数

0

提示词数

0

GitHub Stars

2

资源数

0
Python性能分析AI代理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

CassiopeiaCode

提供方

CassiopeiaCode

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install uv

详细介绍

Polyglot CPP:C++MCP服务器

![License: MIT](https://opensource.org/licenses/MIT) ](https://www.python.org/downloads/) ![MCP Compliant](https://gofastmcp.com/) ![Made with FastMCP](https://github.com/jlowin/fastmcp)

英语 | 简体中文

一个功能强大、高性能的MCP(模型驱动的联合编程协议)服务器,旨在动态编译、运行、调试和分析C++代码。作为不断发展的MCP生态系统的重要组成部分,该工具非常适合竞争性编程平台、人工智能驱动的开发工具、教育平台和快速C++原型。

🌟 为什么是这个项目?

模型上下文协议(MCP)正在彻底改变人工智能模型与外部工具的交互方式。虽然生态系统正在迅速扩展,但存在一个关键的差距:一个用于C++语言的专用、功能齐全的MCP服务器,这是性能关键计算的基石之一。

polyglot-cpp 是为了填补这一空白而建造的。它不仅仅是另一个在线编译器;它是一个现成的、API驱动的桥,将C++的强大功能(包括调试和分析)连接到任何MCP-兼容的人工智能助手或工作流程。它的创建是因为GitHub上的公共MCP生态系统中缺少具有此特定功能集的工具。

✨ 主要特点

  • 🚀 在飞行编译:使用编译C++代码 clang++ 启用了基本标志。
  • 🏃‍♂️ 超时控制执行:以10秒的执行超时运行编译后的代码,以防止无限循环和进程失控。
  • 🐞 集成内存调试:自动启用AddressSanitizer(-fsanitize=address)捕获常见的内存错误,如分段错误和缓冲区溢出,并提供详细的报告。
  • ⏱️ 性能分析:使用生成简洁的绩效报告 gprof 以识别热点和函数调用时间。
  • 💾 持久性伪影:编译后的程序将存储24小时,允许在不重新编译的情况下重复执行。
  • 🔌 简单API:使用三个简单的工具,通过MCP协议展示一个干净直观的API。

🛠️ 先决条件

在开始之前,请确保您的系统上安装了以下内容:

  • Python 3.9+
  • clang++ 编译器
  • gprof (通常是binutils的一部分)

这些工具必须在您的系统中可用 PATH.

⚙️ 安装

  1. 克隆存储库:
   git clone https://github.com/CassiopeiaCode/Polyglot-CPP.git
   cd Polyglot-CPP
  1. 安装依赖项:

此项目使用 uv 用于包管理。

   pip install uv
   uv pip install -r requirements.txt 
   # If you don't have a requirements.txt, you can install from pyproject.toml
   # uv pip install .

*(注意:您可能需要创建一个 requirements.txtpyproject.toml 或直接安装依赖项)。*

🚀 运行服务器

要启动MCP服务器,请运行 main.py:

python main.py

服务器将在上启动并可访问 0.0.0.0:53482 使用SSE传输。

🌐 MCP生态系统

此服务器由以下组件构建 FastMCP,用于 模型上下文协议(MCP).MCP是一个开放标准,旨在成为“AI的USB-C端口”,允许语言模型与外部工具和数据源无缝连接。

通过符合MCP, polyglot-cpp 任何兼容MCP的客户端或AI助手都可以立即发现和使用它,使其成为这个不断发展的生态系统中有价值的即插即用的补充。

📚 API/工具

服务器通过MCP协议提供三个主要工具。

1. create_program

编译C++代码并返回 file_id 对于已编译的二进制文件。

  • 描述:接受C++代码作为字符串,使用分析和地址清理标志对其进行编译,并存储二进制文件。
  • 参数:

- content (string,必填):要编译的C++源代码。

  • 退货:

- success (布尔值): true 如果编译成功, false 否则。 - file_id (string):编译程序的唯一ID。 - error (字符串,可选):如果编译失败,则显示编译错误消息。

2. run_program

使用其 file_id.

  • 描述:运行已编译的程序。您可以为差异化提供标准输入和预期输出。
  • 参数:

- file_id (string,必填):要运行的程序的ID。 - custom_input (string,可选):传递给程序的标准输入。 - expected_output (string,可选):要比较的预期标准输出。

  • 退货:

- success (布尔值): true 如果执行成功。 - stdout (string):程序的标准输出。 - stderr (string):程序的标准错误。 - diff (string,可选):实际输出和预期输出之间的统一差异。 - run_time (float):执行时间(秒)。 - profiling_report (string):一份简明的报告 gprof.

3. create_and_run_program

一个方便的工具,可以在一个步骤中编译和运行代码。

  • 描述联合 create_programrun_program.
  • 参数:与 create_programrun_program 结合。
  • 退货:一个包含创建和执行结果的组合JSON对象。

🤝 贡献

欢迎投稿!如果您对新功能、错误修复或改进有想法,请打开问题或提交拉取请求。

  1. 分叉项目
  2. 创建功能分支(git checkout -b feature/AmazingFeature)
  3. 提交您的更改(git commit -m 'Add some AmazingFeature')
  4. 推到分支机构(git push origin feature/AmazingFeature)
  5. 打开拉取请求

📄 许可证

该项目在MIT许可证下分发。看 LICENSE 文件以获取更多信息。

目录标签

目录标签

Python性能分析AI代理C++编译本地部署动态调试MCP协议编程工具

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP