简介
ChatMcp是一个多功能AI平台,它包含一个AI聊天界面(客户端)和一个后端服务。该后端服务作为MCP客户端,通过读取配置文件来知晓并启动多个基于Model Context Protocol (MCP) 实现的外部工具服务进程,从而扩展AI的能力。
主要功能
- 支持多种AI模型: 与多种主流大型语言模型(如Ollama, OpenAI, DeepSeek, Gemini等)进行对话。
- 工具调用: 通过聊天指令触发AI调用配置好的外部工具(MCP服务器),完成特定任务(如天气查询、语音合成、文件处理、网络搜索等)。
- 友好的聊天界面: 图形化的Web界面,支持聊天历史记录管理、模型参数设置、个性化搭档(角色)设定。
- 灵活配置: 易于配置和集成不同的MCP工具服务。
安装步骤
- 克隆仓库:
首先,将项目仓库克隆到本地:
git clone https://github.com/panxingfeng/chat_mcp.git cd chat_mcp - 后端 (Python) 设置:
创建并激活Python虚拟环境,然后安装依赖:
python -m venv venv # Windows 用户请运行: venv\Scripts\activate # Linux/macOS 用户请运行: source venv/bin/activate pip install -r requirements.txt - 前端 (Node.js) 设置:
进入前端目录并安装依赖:
cd chat_ui npm install
服务器配置
MCP服务器是独立的程序(例如,本项目 'chat_mcp/mcp_server' 目录下提供的天气和语音服务器)。ChatMcp的后端('main.py')作为MCP客户端,通过读取项目根目录下的 'servers_config.json' 文件来知晓需要启动哪些MCP服务器进程以及如何连接它们。
编辑 'servers_config.json' 文件,配置您想要集成的MCP工具服务。每个服务都需要指定启动命令 ('command') 和参数 ('args')。以下是示例配置(请替换其中的占位符信息):
{ "mcpServers": { "weather": { "command": "python", "args": ["-m", "chat_mcp.mcp_server.mcp_server_weather", "--api-key=您的天气API密钥"], "display_name": "天气查询" }, "speech": { "command": "python", "args": ["-m", "chat_mcp.mcp_server.mcp_server_speech", "--server-url=您的语音生成服务URL"], "display_name": "语音合成" }, "web_search": { "command": "python", "args": ["-m", "mcp_server_searxng", "--instance-url=searXNG的url信息"], "display_name": "网络搜索" }, "wechat": { "command": "python", "args": ["-m", "mcp_server_wechat","--folder-path=保存历史记录的目录"], "display_name": "微信交互" } } }
'command' 指定MCP服务器程序的执行命令(例如 'python' 或 'npx'),'args' 是传递给该命令的参数。'display_name' 会显示在工具列表中,方便识别。请根据您使用的具体MCP服务器模块及其启动方式和所需参数进行配置。
基本使用方法
- 启动后端:
在项目根目录,激活Python虚拟环境后,运行:
这会启动ChatMcp后端,并根据 'servers_config.json' 自动启动配置的MCP服务器进程。python main.py - 启动前端:
在 'chat_ui' 目录下,运行:
这将启动前端开发服务器。npm start - 访问应用: 在浏览器中访问前端地址(通常是 'http://localhost:3000'),即可通过友好的聊天界面与AI进行交互,并由AI根据您的需求自动调用配置好的工具服务。
信息
分类
AI与计算