MCP Java SDK演示
MCP(模型上下文协议)服务器的Spring Boot实现,带有OAuth 2.0身份验证和薪资查询工具。
特性
- OAuth 2.0服务器 -支持PKCE的完整授权代码流
- 动态客户端注册 -符合RFC 7591
- 薪资查询工具 -用于查询员工薪资信息的MCP工具
- 模拟数据 -3名员工12个月的工资数据
快速开始
运行应用程序
mvn spring-boot:run服务器将在以下时间启动 http://localhost:8080
测试用户
| 用户名 | 密码 | 员工姓名 | 员工ID |
|---|---|---|---|
| 爱丽丝 | 123 | 王爱丽丝 | EMP001 |
| 鲍勃 | 123 | 李 | EMP002 |
| 查尔斯 | 123 | 张 | EMP003 |
OAuth 2.0端点
- 授权元数据:
GET /.well-known/oauth-authorization-server - 注册客户端:
POST /oauth/register - 授权:
GET /oauth/authorize - 代币:
POST /oauth/token - JWKS:
GET /oauth/keys - 列出客户:
GET /oauth/clients(调试端点)
MCP工具
1.获取我的工资
查询当月薪资信息。
Returns: Salary details including base salary, bonus, and total salary2.每月领取我的工资
查询特定月份的薪资信息。
Parameter: month (format: YYYY-MM, e.g., 2025-01)
Returns: Salary details for the specified month3.计算器工具
基本算术运算:加、减、乘、除
MCP检验员测试
- 启动应用程序
- 配置MCP检查器以使用
http://localhost:8080 - 使用任何测试用户完成OAuth流程
- 调用薪资查询工具
模拟数据
每位员工都有12个月的工资数据(2025-01至2025-12):
- 王(EMP001):基本工资15000日元,奖金3000日元(每月不同)
- 李(EMP002):基本工资18000日元,奖金4500日元(每月不同)
- 张(EMP003):基本工资20000日元,奖金约5000日元(每月不同)
访问控制
每个用户只能查询自己的薪资信息。员工ID是从OAuth访问令牌中提取的。
