MCP 聊天应用
- other
基于MCP(Model Context Protocol)的智能聊天应用,支持Web和桌面环境。集成OpenAI/Anthropic API,提供MCP服务器的所有工具能力。简洁现代的UI设计,支持跨平台部署。
About
What is MCP 聊天应用?
MCP 聊天应用是一个基于 Model Context Protocol (MCP) 的智能聊天应用,支持 Web 和桌面环境(基于 Electron)。它面向需要使用 AI 模型与外部工具和服务进行交互的用户,集成了 OpenAI 和 Anthropic 两种主流大模型服务。
How to use MCP 聊天应用?
安装 Node.js v16+ 和 npm v8+ 后,运行 npm install 安装依赖,可选复制 .env.example 为 .env 并配置 API 密钥和模型提供商。启动应用需分别运行前端开发服务器(npm run dev 或 npm run electron:dev)和 MCP 后端服务(npm run mcp:server)。在应用内通过设置面板配置 API 密钥、模型提供商和模型,然后即可在聊天界面中发送消息,AI 可自动调用 MCP 工具执行任务。
Key features of MCP 聊天应用
- 简洁现代的聊天界面设计
- 支持 MCP 协议与外部工具无缝交互
- 兼容 OpenAI 和 Anthropic 两种 API 格式
- 可配置 API 密钥、基础 URL 和模型选项
- 跨平台桌面应用(Windows/Mac/Linux)
- 集成浏览器自动化、天气查询、新闻搜索等工具
Use cases of MCP 聊天应用
- 通过聊天请求 AI 控制浏览器访问网页、提取信息
- 询问实时天气信息,AI 自动调用天气查询工具
- 检索最新新闻内容,AI 调用新闻搜索工具
- 在桌面版应用中,通过 AI 读取和写入本地文件
FAQ from MCP 聊天应用
如何配置 API 密钥和模型?
在应用内点击右上角 ⚙️ 设置图标,在设置面板中选择模型提供商(OpenAI 或 Anthropic),输入对应 API 密钥,并可自定义 API 基础 URL 和模型;还支持添加和管理自定义模型。
支持哪些模型提供商?
支持 OpenAI 和 Anthropic 两种主流大模型服务,兼容其 API 格式。
如何构建桌面应用?
运行 npm run electron:build 可构建所有平台版本;也可使用 npm run electron:buildwin(Windows)、npm run electron:buildmac(macOS)或 npm run electron:buildlinux(Linux)构建特定平台版本,安装包位于 dist_electron 目录。
MCP 工具调用失败怎么办?
检查 MCP 后端日志,确保相关依赖已安装且工具正确配置;同时确认 MCP 后端服务(npm run mcp:server)正在运行。
这个项目是否开源?采用什么许可证?
项目采用 MIT 许可证,欢迎提交 Pull Request 或 Issue 进行贡献。
Details
- Author
- machaojin1917939763
- GitHub stars
- 69
- Category
- other
- Repository
- machaojin1917939763/mcp-ui
MCP 聊天应用
基于 Model Context Protocol 的智能聊天应用,支持Web和桌面环境。
项目介绍
MCP聊天应用是一个基于Vue.js构建的现代化聊天界面,支持通过Model Context Protocol (MCP)与各种服务和工具进行交互。MCP是Anthropic推出的开放协议标准,允许AI模型直接调用诸如数据库、文件系统、浏览器自动化、第三方mcp服务等。
本应用同时支持Web端和桌面端(基于Electron),并且集成了OpenAI和Anthropic两种主流大模型服务。
应用界面展示







核心功能特点
- 简洁现代的聊天界面设计
- MCP协议支持:与外部工具和服务进行无缝交互
- 多模型支持:兼容OpenAI和Anthropic两种API格式
- 自定义配置:可配置API密钥、基础URL和模型选项
- 可扩展架构:支持添加自定义工具和服务
- 桌面应用:提供跨平台(Windows/Mac/Linux)桌面体验
- 浏览器自动化:支持AI控制浏览器执行任务
- 本地服务:集成MCP后端服务提供强大功能
系统要求
- Node.js: v16.0.0+
- npm: v8.0.0+
- 现代浏览器:Chrome, Firefox, Safari, Edge最新版本
- 操作系统:Windows 10+, macOS 10.15+, Ubuntu 20.04+(桌面版)
快速开始
安装依赖
npm install
配置环境变量(非必要)
复制.env.example文件到.env,并填入必要的API密钥和配置:
cp .env.example .env
编辑.env文件设置以下内容:
VITE_API_KEY=your_api_key_here
VITE_MODEL_PROVIDER=openai # 或 anthropic
MCP_SERVER_PORT=3001 # MCP服务器端口
启动应用
Web应用开发模式
# 启动前端开发服务器
npm run dev
在另一个终端启动MCP后端服务
npm run mcp:server
桌面应用开发模式
# 启动Electron应用
npm run electron:dev
在另一个终端启动MCP后端服务
npm run mcp:server
运行应用
Web应用
npm run dev
在另一个终端启动MCP后端服务
npm run mcp:server
桌面应用
# 启动Electron应用
npm run electron:dev
在另一个终端启动MCP后端服务
npm run mcp:server
构建应用
Web应用构建
npm run build
桌面应用构建
# 构建所有平台版本
npm run electron:build
构建特定平台版本
npm run electron:buildwin # Windows
npm run electron:buildmac # macOS
npm run electron:buildlinux # Linux
详细使用说明
配置模型设置
1. 打开应用后,点击右上角的⚙️设置图标
2. 在设置面板中配置:
- 模型提供商:选择OpenAI或Anthropic
- API密钥:输入对应服务的API密钥
- API基础URL:可选,如使用自定义API端点或代理服务
- 模型:选择要使用的具体模型
- 自定义模型:添加和管理自定义模型配置
使用聊天功能
- 在底部输入框中输入问题或命令
- 点击发送按钮或按回车键发送消息
- 使用工具功能获取实时信息或执行任务(如浏览网页、查询数据等)
- 支持Markdown格式和代码高亮显示
MCP工具使用
本应用集成了以下MCP工具:
- 浏览器自动化:AI可控制浏览器访问网页、提取信息
- 天气查询:获取实时天气信息
- 新闻搜索:检索最新新闻内容
- 文件操作:读取和写入文件(桌面版)
通过聊天界面直接请求AI使用这些工具,无需额外操作。
项目架构
目录结构
- src/ - 前端源代码
- components/ - Vue组件
- services/ - API服务
- composables/ - Vue组合式函数
- utils/ - 工具函数
- styles/ - CSS样式文件
- assets/ - 静态资源
- electron/ - Electron桌面应用代码
- config/ - 应用配置文件
- mcp_server.js - MCP后端服务
- public/ - 静态资源目录
关键技术栈
- 前端:Vue 3, TypeScript, Vite
- API集成:OpenAI API, Anthropic API
- MCP协议:@modelcontextprotocol/sdk
- 桌面应用:Electron
- 服务端:Express, Node.js
开发指南
添加新的MCP工具
1. 在mcp_server.js中的工具定义部分添加新工具描述
2. 实现对应的工具处理逻辑
3. 重启MCP服务器以应用更改
示例:
// 添加新工具定义
const tools = [
{
name: "my_new_tool",
description: "这是一个新工具的描述",
parameters: {
type: "object",
properties: {
param1: { type: "string", description: "参数1的描述" }
},
required: ["param1"]
}
},
// 其他工具...
];
// 实现工具处理逻辑
app.post('/mcp/tools/call', async (req, res) => {
// ...
if (toolName === "my_new_tool") {
const result = await handleMyNewTool(arguments);
return res.json({ result });
}
// ...
});
自定义UI组件
修改或创建src/components/目录下的Vue组件以定制UI。
部署指南
Web应用部署
1. 运行npm run build生成生产环境代码
2. 将dist目录部署到任何静态Web服务器
3. 确保MCP后端服务正确配置并运行
桌面应用分发
1. 运行对应平台的构建命令
2. 在dist_electron目录找到构建好的安装包
3. 分发安装包给用户
故障排除
- API连接问题:检查API密钥和网络连接
- MCP服务失败:查看服务器日志,确保相关依赖已安装
- UI显示异常:清除浏览器缓存,检查控制台错误
- 工具调用失败:检查MCP后端日志,确保工具正确配置
相关资源
- Model Context Protocol 文档
- OpenAI API 文档
- Anthropic Claude API
- Vue.js 文档
- Electron 文档
贡献指南
欢迎提交Pull Request或Issue来改进这个项目。贡献前请先查看现有Issues和项目路线图。
许可证
MIT