MCP服务器工具

一个用于为LLM提供存储库信息的MCP服务器,支持文件元数据展示和自动化查询响应。

  • by 2AMK
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 2AMK/Procedural-World-Simulation-Engine-MCP-Server

使用说明

程序世界模拟引擎MCP服务器

一个MCP服务器,从仓库向LLM展示信息,为答案提供必要的上下文。

功能

目前,该项目可作为 样板文件 对于您需要的任何新仓库:

  1. 出口 文件和目录的元数据。
  2. 应答者 consultas automatizadas通过LLM(大型语言模型)。
  3. 是 简单启动(单一命令) python server.py).

最终,该项目将专门

项目结构

procedural‑world‑simulation‑engine-mcp-server/ 
│
├── README.md                ← Esta documentação
├── requirements.txt         ← Dependências Python
├── server.py                ← Ponto de entrada do servidor
├── tools/                   ← Ferramentas que o servidor expõe
│   ├── list_files.py
│   ├── read_file.py
│   ├── tree_file.py
│   └── get_info.py
└── utils/                   ← Utilitários de segurança e caminho
    └── resolve_safe_path.py

依赖关系

服务器仅依赖于通用和自身的库。 快速MCP:

fastmcp==0.6.0

安装全部使用 :

pip install -r requirements.txt

(在生产中,我们建议创建虚拟环境 python -m venv venv 并在安装之前激活它。

如何旋转

该项目旨在用于 Continue,但可以用于支持 MCP 的其他应用程序。直接旋转:

python server.py

服务器将监听端口 8000 (FastMCP标准)
您可以通过HTTP调用工具,例如:

curl -X POST http://localhost:8000/tool/list_files_tool \
  -H "Content-Type: application/json" \
  -d '{"path": "."}'

如何测试

要运行单元测试,您必须使用 Pytest。

在目录中运行测试 tests,没有终端执行o comando:

pytest tests/

或者,如果你没有直接访问pytest的权限,你可以通过Python模块运行测试:

python -m pytest tests/

测试覆盖

可以使用模块检查测试覆盖范围 coverage.

要运行测试覆盖,在终端中运行:

coverage run -m pytest tests/
coverage report -m

要生成覆盖范围报告:

coverage html

运行此命令后,只需打开文件 index.html “帕斯塔战争。

展示的工具

函数 描述 参数 返回
list_files_tool 列出相对路径中的文件和目录 path: str 条目列表(name, type)
read_file_tool 阅读文件的内容。 path: str 文本内容
tree_file_tool 显示目录树(递归) path: str, max_depth: int 树的JSON结构
get_info_tool 从仓库返回基本信息。 无 JSON,名称,版本,说明等。

用作Boilerplate

  1. 复制 新仓库的项目文件夹 。
  2. 雷诺梅 配置文件 (README.md, requirements.txt, server.py).
  3. 更新 常量 name e version 嗯 server.py 反映你的项目。
  4. 添加 文件夹中的新工具 tools/ 按照相同的标准(@app.tool()).
  5. 相反 额外的依赖关系在 requirements.txt.

贡献

Pull Requests 欢迎!如果您需要新工具或修补程序,请先打开一个问题。

许可证

这个仓库的许可证是MIT。查看文件 许可证 了解更多详情。