使用说明
MCP聊天
MCP(模型上下文协议)是用于将AI应用程序连接到外部系统的开源标准。这是一个基于Streamlit的web应用程序,用作MCP服务器的客户端。它允许您与Gemini模型进行交互,该模型可以利用选定MCP服务器中的工具。
特性
- 基于Web的用户界面:使用Streamlit构建的简单直观的聊天界面。
- 多服务器支持:通过从下拉菜单中选择连接到不同的MCP服务器。支持基于stdio的本地服务器和基于HTTP/SSE的远程服务器。
- 服务器检查:查看所选MCP服务器的可用提示、资源和工具。
- 使用工具聊天:与Gemini模型交互,该模型可以使用连接的MCP服务器的功能作为工具来回答您的提示。
- 配置显示:所选服务器的配置显示在侧栏中。
如何跑步
-
设置您的环境: 创建一个
.env文件,方法是复制示例文件并使用GEMINI_API_KEY值对其进行编辑。cp .env.example .env -
安装依赖项:
pip install -r requirements.txt -
配置您的MCP服务器: 确保你有一个
mcp.json文件在同一目录中。请参阅 配置 详见下文。cp mcp.json.example mcp.json -
运行Streamlit应用程序:
streamlit run app.py
配置
这 mcp.json 文件用于配置应用程序可以连接到的MCP服务器。
该文件应包含一个带有键的JSON对象 mcpServers此键的值是另一个JSON对象,其中每个键都是服务器名称。
基于标准的服务器(本地)
对于通过命令行在本地运行的服务器:
{
"mcpServers": {
"my-local-server": {
"command": "python",
"args": ["server.py"],
"env": {
"MY_VAR": "value"
}
}
}
}
command:启动服务器的命令。args:要传递给命令的参数列表。env:(可选)为服务器进程设置的环境变量字典。
基于HTTP/SSE的服务器(远程)
对于远程服务器或通过HTTP/SSE运行的服务器:
{
"mcpServers": {
"my-remote-server": {
"url": "http://localhost:8000/sse",
"headers": {
"Authorization": "Bearer token"
}
}
}
}
url:MCP服务器的URL端点。headers:(可选)要包含在对服务器的请求中的HTTP标头字典。