I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.

donts-MCP-Server-Demo
3 years
Works with Finder
1
Github Watches
1
Github Forks
0
Github Stars
MCP 服务器演示项目
这是一个基于Spring Boot的Model Context Protocol (MCP) 服务器演示项目,提供了计算器、天气查询以及数据模型和API接口工具的功能。
项目概述
本项目是一个简单的MCP服务器实现,使用Spring Boot和WebFlux构建,提供了以下功能:
- 计算器工具 - 可以计算数学表达式
- 天气查询工具 - 可以查询指定城市的实时天气
- 系统信息资源 - 提供系统基础信息
- 数据模型查找工具 - 根据用户描述查找匹配的数据模型
- API接口查找工具 - 根据数据模型查找对应的API接口
- API执行工具 - 根据用户输入构造参数并调用实际接口
技术栈
- Java 17
- Spring Boot
- Spring WebFlux
- Model Context Protocol (MCP)
- Server-Sent Events (SSE)
快速开始
前置条件
- JDK 17 或更高版本
- Maven 3.6 或更高版本
- 和风天气API密钥(用于天气查询功能)
配置
- 克隆项目到本地
- 在
src/main/resources/application.yml
中配置和风天气API密钥
构建与运行
# 编译项目
mvn clean package
# 运行项目
java -jar target/donts-ai-0.0.1-SNAPSHOT.jar
API 端点
SSE 连接
-
端点:
/sse
- 方法: GET
- 描述: 建立SSE连接,用于接收服务器发送的事件
消息发送
-
端点:
/mcp/messages
- 方法: POST
- 描述: 发送消息到MCP服务器
工具功能
计算器工具
计算器工具可以处理各种数学表达式,包括:
- 基本运算(加减乘除)
- 复杂表达式计算
示例:
2 + 2
(3 * 4) / 2
sqrt(16) + 5
天气查询工具
天气查询工具可以获取指定城市的实时天气信息,包括:
- 温度
- 天气状况
- 风向风速
- 湿度等
示例:
北京
shanghai
guangzhou
数据模型和API工具
项目新增了三个相互关联的工具,用于模拟数据模型查找、API接口查找和API执行的流程:
数据模型查找工具
根据用户的描述查找匹配的数据模型,支持以下功能:
- 关键词匹配和相似度计算
- 返回匹配度评分
- 支持详细信息查看
示例:
{
"description": "用户账号",
"maxResults": 3,
"includeDetails": true
}
API接口查找工具
根据数据模型查找对应的API接口,支持以下功能:
- 按操作类型(查询、创建、更新、删除)过滤
- 返回匹配度评分
- 支持详细参数信息查看
示例:
{
"modelId": "model_user",
"operationType": "查询",
"maxResults": 5,
"includeDetails": true
}
API执行工具
根据用户输入构造参数并调用实际接口,支持以下功能:
- 参数验证和类型转换
- 模拟API调用并生成响应
- 支持详细元数据输出
示例:
{
"apiId": "api_user_get",
"parameters": {"userId": "u123456"},
"validateParameters": true,
"detailedResponse": true
}
模拟数据案例
系统预置了三种业务场景的模拟数据:
- 用户模型 - 包含用户基本信息及相关API
- 订单模型 - 包含订单信息及相关API
- 商品模型 - 包含商品信息及相关API
系统架构
项目基于Spring Boot和Model Context Protocol构建,使用Server-Sent Events (SSE) 作为通信机制。主要组件包括:
- MCP服务器 - 处理客户端请求并返回响应
- 工具实现 - 提供具体功能的实现
- 资源配置 - 定义系统资源
- 模拟数据仓库 - 存储和检索模拟数据
- 服务实现 - 实现业务逻辑
贡献指南
欢迎提交问题和改进建议!请遵循以下步骤:
- Fork 本仓库
- 创建您的特性分支 (
git checkout -b feature/amazing-feature
) - 提交您的更改 (
git commit -m 'Add some amazing feature'
) - 推送到分支 (
git push origin feature/amazing-feature
) - 打开一个 Pull Request
许可证
本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件
相关推荐
Converts Figma frames into front-end code for various mobile frameworks.
I find academic articles and books for research and literature reviews.
Confidential guide on numerology and astrology, based of GG33 Public information
Embark on a thrilling diplomatic quest across a galaxy on the brink of war. Navigate complex politics and alien cultures to forge peace and avert catastrophe in this immersive interstellar adventure.
A unified API gateway for integrating multiple etherscan-like blockchain explorer APIs with Model Context Protocol (MCP) support for AI assistants.
Mirror ofhttps://github.com/suhail-ak-s/mcp-typesense-server
本项目是一个钉钉MCP(Message Connector Protocol)服务,提供了与钉钉企业应用交互的API接口。项目基于Go语言开发,支持员工信息查询和消息发送等功能。
Short and sweet example MCP server / client implementation for Tools, Resources and Prompts.
Reviews

user_SbNMxPme
I recently tried donts-MCP-Server-Demo by CrxusDonts, and it is a fantastic tool for anyone needing a robust server demo. It's well-crafted and user-friendly, making it perfect for both beginners and seasoned developers. Highly recommended! Check it out on GitHub.