
MCP-Server
A Model Context Protocol implementation that enables large language models to call external tools (like weather forecasts and GitHub information) through a structured protocol, with visualization of the model's reasoning process.
README
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
: 处理前端查询请求,返回包含思考过程和结果的流式响应
白盒过程可视化
客户端实现了白盒过程展示,让用户可以看到:
- 意图识别过程
- 工具选择过程
- 工具调用参数和结果
- 最终答案生成过程
技术栈
- 后端:Node.js、TypeScript
- 框架:Express
- 大语言模型:Deepseek (通过OpenAI兼容API)
- 通信协议:Model Context Protocol
- SDK:@modelcontextprotocol/sdk
使用方法
- 启动服务端:
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
Content-Type: application/json
{
"query": "北京今天的天气怎么样?"
}
配置要求
需要在.env
文件中设置以下环境变量:
LLM_API_KEY
: Deepseek API密钥GAODE_KEY
: 高德地图API密钥(用于天气查询)
工作流程
- 用户发送查询到客户端
- 客户端将查询发送给大语言模型
- 大语言模型分析查询并决定是否需要调用工具
- 如需调用工具,客户端通过MCP协议向服务端发送请求
- 服务端执行工具并返回结果
- 客户端将工具结果再次发送给大语言模型生成最终回答
- 将回答返回给用户
结语
MCP-Server项目提供了一个完整的大语言模型工具调用示例实现,展示了如何通过结构化协议让模型访问外部工具和服务,增强模型的能力边界。通过白盒过程可视化,用户可以更好地理解模型的思考过程和工具调用逻辑。
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.