MCP-Server 项目文档
About
MCP-Server 是一个基于 Model Context Protocol (MCP) 的服务端和客户端实现,允许大语言模型(LLM)通过结构化协议调用外部工具完成复杂任务。它包含两部分:MCP 服务端负责注册和执行工具,以及 TypeScript 实现的客户端负责协调模型调用与工具调用。
Details
- Author
- chenshuai2144
- GitHub stars
- 2
- Downloads
- 228
- Categories
- Other
Jump to
- 支持天气预报和 GitHub 用户信息查询工具
- 通过标准输入输出(stdio)与服务端通信
- 集成 Deepseek 大语言模型(通过 OpenAI 兼容 API)
- 提供命令行交互界面和 Express Web API
- 支持流式输出和白盒过程可视化
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
MCP-Server 项目文档Command (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
首先启动服务端 node dist/src/index.js,然后启动客户端并指定服务端脚本路径 node dist/mcp-client-typescript/src/index.js /path/to/server/script.js。也可通过 Web API 发送 POST 请求到 http://localhost:3000/sse,在请求体中传入 query 字段。
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"mcp-server \u9879\u76ee\u6587\u6863": {
"mcp-server-chenshuai2144": {
"command": "node",
"args": [
"dist/src/index.js"
]
}
}
}
}
McpServers
{
"mcp-server-chenshuai2144": {
"command": "node",
"args": [
"dist/src/index.js"
]
}
}
MCP-Server 项目文档
项目概述
MCP-Server 是一个基于 Model Context Protocol (MCP) 的服务端和客户端实现,允许大语言模型(LLM)通过结构化协议调用外部工具完成复杂任务。项目主要包含两部分:MCP服务端和TypeScript实现的客户端。
系统架构
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│ 前端应用 │────▶│ MCP 客户端 │────▶│ MCP 服务端 │
└───────────────┘ └───────────────┘ └───────────────┘
△ │ │
│ ▼ ▼
│ ┌───────────────┐ ┌───────────────┐
└───────────│ 大语言模型 │ │ 外部服务 API │
│ (Deepseek) │ │ (天气、GitHub)│
└───────────────┘ └───────────────┘
核心组件
1. MCP 服务端
服务端是工具的提供者,负责注册和执行各种工具。
主要功能:
- 工具注册:目前已实现天气预报查询和GitHub用户信息查询工具
- 工具执行:接收客户端请求,执行相应工具并返回结果
- 通信:通过标准输入输出(stdio)与客户端通信
2. MCP 客户端
客户端连接大语言模型API和MCP服务端,负责处理用户查询并协调模型调用和工具调用。
主要功能:
- 连接MCP服务端并获取可用工具列表
- 与大语言模型API通信(默认使用Deepseek)
- 解析模型输出中的工具调用请求
- 协调工具调用流程并汇总结果
- 提供命令行交互界面
- 提供基于Express的Web API
3. Web API
客户端提供了HTTP接口供前端应用调用,支持流式输出和过程可视化。
主要端点:
- /sse: 处理前端查询请求,返回包含思考过程和结果的流式响应
白盒过程可视化
客户端实现了白盒过程展示,让用户可以看到:
1. 意图识别过程
2. 工具选择过程
3. 工具调用参数和结果
4. 最终答案生成过程
技术栈
- 后端:Node.js、TypeScript
- 框架:Express
- 大语言模型:Deepseek (通过OpenAI兼容API)
- 通信协议:Model Context Protocol
- SDK:@modelcontextprotocol/sdk
使用方法
1. 启动服务端:
node dist/src/index.js
2. 启动客户端并连接到服务端:
node dist/mcp-client-typescript/src/index.js /path/to/server/script.js
3. 访问Web API:
POST http://localhost:3000/sse
Content-Type: application/json
{
"query": "北京今天的天气怎么样?"
}
配置要求
需要在.env文件中设置以下环境变量:
- LLM_API_KEY: Deepseek API密钥
- GAODE_KEY: 高德地图API密钥(用于天气查询)
工作流程
1. 用户发送查询到客户端
2. 客户端将查询发送给大语言模型
3. 大语言模型分析查询并决定是否需要调用工具
4. 如需调用工具,客户端通过MCP协议向服务端发送请求
5. 服务端执行工具并返回结果
6. 客户端将工具结果再次发送给大语言模型生成最终回答
7. 将回答返回给用户
结语
MCP-Server项目提供了一个完整的大语言模型工具调用示例实现,展示了如何通过结构化协议让模型访问外部工具和服务,增强模型的能力边界。通过白盒过程可视化,用户可以更好地理解模型的思考过程和工具调用逻辑。
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



