使用说明
MCP网关
AI驱动的网关服务,使用模型上下文协议(MCP)通过自然语言查询提供对支付网关API的智能访问。
这是什么?
一个智能API网关:
- 用途 DeepSeek-V3人工智能 (通过OpenRouter)理解自然语言问题
- 实现 模型上下文协议(MCP) 用于结构化工具调用
- 连接到真实 支付网关服务 获取实时数据
- 提供 漂亮的聊天界面 和 REST API 用于互动
特性
- 🤖 AI驱动:使用DeepSeek-V3进行智能查询处理
- 🔧 MCP工具:用于后端集成的模块化工具系统
- 💱 汇率:查询货币汇率和付款方式
- 🎨 web界面:漂亮的聊天界面,带有markdown渲染
- 🔌 REST API:通过程序访问
/ask-ai端点
先决条件
- Java 23
- Maven 3.x
- OpenRouter API密钥(在https://openrouter.ai)
- 访问支付网关服务
配置
编辑 src/main/resources/application.yml:
llm:
base-url: https://openrouter.ai/api/v1
model: deepseek/deepseek-chat
api-key: YOUR_API_KEY_HERE
backend:
services:
payment-gateway:
url: YOUR_PAYMENT_GATEWAY_URL
如何跑步
# Build the project
mvn clean package
# Run the application
mvn spring-boot:run
应用程序将于启动 http://localhost:8082
用法
web界面
打开浏览器并导航到:
http://localhost:8082
试着问:
- “你能帮我什么?”
- “欧元对美元的汇率是多少?”
- “显示CAD的所有汇率”
- “哪些货币可以兑换成欧元?”
REST API
curl -X POST http://localhost:8082/ask-ai \
-H "Content-Type: application/json" \
-d '{"question": "What is the exchange rate from EUR to USD?"}'
答复:
{
"answer": "The current exchange rate from EUR to USD is: 1 EUR = 1.126201 USD"
}
检查状态
curl http://localhost:8082/ask-ai/status
可用工具
获取汇率
从支付网关查询货币汇率。
参数:
fromCurrency(可选):源货币代码(例如,美元、欧元、加元)toCurrency(可选):目标货币代码(例如欧元、美元)
示例查询:
- “美元兑欧元汇率是多少?”
- “显示CAD的所有价格”
- “哪些付款方式支持福林兑换欧元?”
建筑
User → Chat UI / REST API
↓
MCP Gateway (Spring Boot)
↓
DeepSeek AI (analyzes & calls tools)
↓
MCP Tools (GetExchangeRatesTool)
↓
Payment Gateway API
↓
Response → Formatted Answer
项目结构
mcp-gateway/
├── src/main/java/com/example/mcpgateway/
│ ├── controller/ # REST endpoints
│ ├── service/ # LLM & tool dispatch services
│ ├── mcp/ # MCP server & tools
│ ├── dto/ # Data transfer objects
│ └── config/ # Spring configuration
├── src/main/resources/
│ ├── static/ # Web interface
│ └── application.yml # Configuration
└── pom.xml # Maven dependencies
添加新工具
- 创建一个类来实现
MCPTool接口 - 添加
@Component注释 - 实施所需的方法
- 工具会自动被发现,并可供AI使用
例子:
@Component
public class MyNewTool implements MCPTool {
public String getName() { return "my_tool"; }
public String getDescription() { return "What this tool does"; }
public Map<String, Object> getInputSchema() { /* schema */ }
public String execute(Map<String, Object> args) { /* logic */ }
}
技术
- 弹簧靴3.3.4 -应用框架
- 春季AI MCP -模型上下文协议集成
- DeepSeek-V3 -通过OpenRouter建立AI模型
- Bootstrap 5.3 -UI框架
- Marked.js -Markdown渲染
- Java 23 -程序设计语言
发展
# Compile
mvn compile
# Run tests
mvn test
# Package
mvn package
# Clean build
mvn clean install
故障排除
| 问题 | 解决方案 |
|---|---|
| 空响应 | 检查API密钥 application.yml |
| 连接被拒绝 | 确保支付网关URL正确 |
| 端口8082正在使用中 | 更改 server.port 在配置中 |
| 找不到工具 | 验证 @Component 工具类注释 |
许可证
该项目是用于演示目的的原型。