使用说明
MCP聊天界面
Types/React聊天UI,用于通过WebSocket与代理和MCP工具进行交互。 这个项目不仅仅是一个聊天UI,它是一个构建模型上下文协议(MCP)服务器并通过与它们聊天轻松测试其功能的样板。 该架构支持使用MCP代理和工具进行快速开发、扩展和交互式实验。
https://github.com/user-attachments/assets/ce39f244-9d77-4d29-b6e2-1119063653b8
代理和LLM集成
代理使用 OpenAI代理SDK 与MCP无缝集成。当前实施使用 OpenRouter 访问各种LLM以获取代理响应。OpenRouter通过统一的API提供对多种人工智能模型的访问,包括OpenAI、Anthropic、Google和许多其他人工智能模型。这种灵活性允许您根据需要尝试不同的大型语言模型。
特性
- 与人工智能代理和工具实时聊天
- 可扩展工具系统(通过询问Copilot注册新工具)
- 在聊天过程中,用户可以查看所有工具调用及其参数和响应,以进行调试
- 图表渲染和数据可视化
- 对AI Canvas实现进行编码,允许用户通过提供自然语言描述(如Gemini Canvas)来创建设计和交互式可视化。例如,用户可以说“可视化插入排序算法”,系统将生成并显示该算法的交互式视觉表示。'
- Google身份验证集成
- Vite热装快速开发
入门指南
先决条件
- Node.js(建议使用v18+)
- npm
环境设置
- 复制
.env.template到.env:cp .env.template .env - 设置您的
OPENROUTER_API_KEY在.env文件以启用OpenRouter LLM功能。您可以从获取API密钥 OpenRouter. - (可选)设置
GOOGLE_CLIENT_ID在.env以启用聊天UI的Google身份验证。
再进行
# In project root
npm install
cd client
npm install
# or
npm run install_all
运行开发服务器
# In project root
npm run dev
open http://localhost:5173/
开始生产构建
# In project root
npm run start
open http://localhost:3000/
检查MCP服务器
# In project root
npm run inspect
注册新的MCP工具
您只需询问Copilot即可添加新的服务器端工具:
使用名称注册新工具
my_tool_name,输入参数param1: string,param2: number,输出字段result: string
Copilot将为您生成文件和代码。看 .github/copilot-instructions.md 了解全部细节。
注册外部MCP服务器
您可以通过编辑添加新的外部MCP服务器 mcp.json 项目根目录中的文件。在此文件中列出您的服务器配置,以便在聊天UI中进行选择。
示例 mcp.json
{
"mcpServers": {
"playwright": {
"description": "Playwright MCP",
"command": "npx",
"args": ["@playwright/mcp@latest", "--headless", "--isolated"]
},
"memory": {
"description": "Server Memory MCP",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
}
}
}
项目结构
client/--React UI,按功能(聊天、图表、常用、UI)组织src/server/--WebSocket服务器、代理/工具编排src/tools/--MCP工具(自动注册)src/agents/--代理逻辑.github/copilot-instructions.md--AI代理指令和约定
关于
该项目展示了一个用于代理/工具工作流的灵活、可扩展的聊天UI, 并作为构建和交互式测试MCP服务器和工具的样板。 开发人员的生产力由Copilot和快速扩展的明确约定提供支持。
