程序世界模拟引擎MCP服务器
一个MCP服务器,从仓库向LLM展示信息,为答案提供必要的上下文。
功能
目前,该项目可作为 *样板文件* 对于您需要的任何新仓库:
- 出口 文件和目录的元数据。
- 应答者 consultas automatizadas通过LLM(大型语言模型)。
- 是 简单启动(单一命令)
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
- 复制 新仓库的项目文件夹 。
- 雷诺梅 配置文件 (
README.md,requirements.txt,server.py). - 更新 常量
nameeversion嗯server.py反映你的项目。 - 添加 文件夹中的新工具
tools/按照相同的标准(@app.tool()). - 相反 额外的依赖关系在
requirements.txt.
贡献
Pull Requests 欢迎!如果您需要新工具或修补程序,请先打开一个问题。
许可证
这个仓库的许可证是MIT。查看文件 许可证 了解更多详情。
