使用说明
MCP经理
MCP管理器充当大型语言模型(LLM)和MCP服务器之间的桥梁。它允许您通过支持的聊天完成API使用自然语言提示与远程和本地API进行交互。
可以使用不同的配置定义工作区,使用单个MCP管理器实例连接到不同的LLM端点和MCP服务器(可能在各种端口、地址或路径上)。
什么是MCP服务器?
MCP服务器是一种中间件,目前位于LLM和API之间,允许LLM检查它有哪些工具可以执行用户提示可能具有的操作,并决定采取行动,而不是只向用户提供答案。MCP服务器将模型执行操作的“意愿”转换为操作本身,可能是对某个系统的更改或查询。
如果你想了解更多,请前往 https://mcp.so 并滚动到底部查看常见问题部分。
特性
- 与各种LLM集成(目前支持Gemini、Azure OpenAI)
- 启用LLM与MCP服务器的交互
- 通过单个YAML文件进行灵活的工作空间配置
- 支持API密钥身份验证(计划使用OAuth 2.0)
- 以OpenAI格式显示用于发送提示的简单HTTP API
安装
只需在 发布 节,on 包裹,它已经准备好了。
配置
配置通过YAML文件进行管理(默认值: config.yaml 在运行时目录中)。可以使用以下命令覆盖路径 MCP_MANAGER_CONFIG 环境变量。
带注释的示例配置文件可在以下网址获得 config.example.yaml.
认证
目前,仅支持API密钥身份验证,并在模型设置中进行配置。 OAuth 2.0支持 是有计划的。
LLM配置
配置因LLM提供程序而异:
-
双子座
-
Azure OpenAI
- 需要已部署的模型
- 资源端点
- API版本(请参见 可用版本)
- 已部署模型名称
- API密钥
用法
- 启动服务器
mcp-manager
可选地使用不同的配置路径
export MCP_MANAGER_CONFIG=/path/to/your/config.yaml
mcp-manager
- 通过HTTP调用执行提示(假设默认端口)
使用为配置的工作空间进行curl示例 /azure 并使用文件系统MCP服务器:
curl http://localhost:7000/azure -H "Content-Type: application/json" -d '{"messages": [{"role":"user","content":"Check if the file /tmp/abc exists"}]}'
输出类似于:
{
"messages": [
{
"role": "user",
"content": "Check if the file /tmp/abc exists"
},
{
"role": "assistant",
"tool_calls": [
{
"name": "get_file_info",
"id": "cGAjCuzqBBnUx2J2dpjpDbZg",
"arguments": {
"path": "/tmp/abc"
}
}
]
},
{
"type": "FunctionCallOutput",
"call_id": "cGAjCuzqBBnUx2J2dpjpDbZg",
"output": "Error: ENOENT: no such file or directory, stat '/tmp/abc'"
},
{
"role": "assistant",
"content": "The file /tmp/abc does not exist."
}
],
"temperature": null,
"max_tokens": null,
"top_p": null,
"tools": null
}
我们得到了用户、模型、MCP管理器和MCP服务器之间交换的所有消息的完整列表。
局限性
贡献
欢迎捐款,请参阅 贡献.md
主要发展发生在 GitLab公司。问题和合并请求应提交到那里。镜像存储库维护在 GitHub 在GitHub上打开的问题将手动迁移到GitLab。
鼓励通过以下方式提交错误报告和功能请求 GitLab问题.
许可证
该项目在GNU GPLv3下获得许可
