WYGIWYH 翻译成中文可以是“所见即所得(Web版)”,不过这个缩写并不是一个广泛认知或标准化的术语,它可能是某个特定网站、应用或系统内部使用的简写。在更通用的语境下,我们通常使用“WYSIWYG”来表示“所见即所得”的意思。 API MCP 服务器
一个可投入生产的模型上下文协议(MCP)服务器,为WYGIWYH费用追踪API提供通用接口。该服务器根据OpenAPI规范动态生成75个MCP工具,使AI代理和n8n等自动化平台能够通过标准化的工具调用与费用追踪系统进行交互。
原始仓库为 WYGIWYH(What You Get Is What You Have)
✨ 特点
- 🔄 翻译成中文是“🔄”(这个符号本身在中文中没有直接对应的翻译,它通常表示“循环”或“重复”的意思,但在这里直接保留原样)。不过,如果要解释这个符号的含义,可以翻译为“循环”或“重复”。 动态工具生成 - 自动从OpenAPI规范生成75个MCP工具
- 🔐 安全认证 - 用于MCP终端的Bearer令牌认证 + 用于API访问的基本认证
- 🚀 表情符号“🚀”在中文中通常被翻译为“火箭”或直接用该表情符号本身,因为它直观地代表了火箭的形象。在没有具体上下文的情况下,我们一般会保留这个表情符号,因为它已经是一个广泛被理解和接受的符号。所以,🚀 就翻译为“🚀”(火箭)。 HTTP流式传输 - 与n8n及其他MCP客户端完全兼容
- 🐳 这个表情符号通常代表“海豚”或“水瓶中的海豚”,在中文网络语境中,有时也被用来表示“海豚音”或作为一种俏皮、可爱的表达。所以,可以翻译为“🐳(海豚/水瓶中的海豚)”或根据具体语境灵活翻译为“海豚音”等。 生产就绪的Docker - 优化了多阶段构建并增加了健康检查
- ⚡ 闪电符号(在中文语境中,此符号常被用作表情符号,表示快速、活力或紧急情况,具体含义需根据上下文判断) 异步/等待(或“异步/await”) 高效的非阻塞API通信
- 📊(表格/数据图表) 全面的API覆盖 - 所有WYGIWYH API端点均作为工具暴露出来
🎯 用例
- 使用n8n自动化费用跟踪工作流程
- 开发管理财务数据的人工智能助手
- 使用WYGIWYH API创建自定义集成
- 实现语音控制的费用记录功能
- 开发自动化报告系统
📦 快速入门
先决条件
- Docker 和 Docker Compose
- “WYGIWYH API 凭据”
- MCP 传输令牌
安装
- 克隆仓库
git clone https://github.com/ReNewator/MCP-WYGIWYH.git
cd MCP-WYGIWYH- 配置环境
cp .env.example .env
# Edit .env with your credentials
# Don't forget change you WYGIWYH url in server.py- 使用 Docker 部署
./deploy.sh或者手动:
docker-compose up -d- 验证部署
curl http://localhost:5000/health🔧 配置
创建一个 .env 包含以下变量的文件:
# WYGIWYH API Credentials
API_USERNAME=your_email@example.com
API_PASSWORD=your_password_here
# MCP Server Authentication
MCP_TOKEN=your_mcp_bearer_token_here🌐 n8n 集成
配置n8n MCP客户端节点:
- 终端(或终点):
http://your-server:5000/ - 交通: HTTP 可流式传输
- 认证: 头部认证(Header Auth)
- 名字: Authorization - 价值: Bearer YOUR_MCP_TOKEN
🛠️ 可用工具
服务器暴露(或提供) 75个MCP工具 按类别组织:
账户管理
account-groups_*- 账户组操作(6种工具)accounts_*- 账户的创建、读取、更新和删除(CRUD)操作(6种工具)
事务管理
transactions_*- 事务操作(6种工具)recurring-transactions_*- 重复交易管理(6种工具)installment-plans_*- 分期付款计划处理(6种工具)
金融工具
categories_*- 费用类别管理(6种工具)tags_*- 交易标记(6种工具)currencies_*- 货币管理(6种工具)exchange-rates_*- 汇率操作(6种工具)
投资特点
dca_*- 定期定额投资策略(15种工具)entities_*- 实体管理(6种工具)
使用 tools/list 查看所有可用工具及其模式的方法。
📁 项目结构
.
├── mcp_sse_server.py # Main MCP server with HTTP Streamable
├── server.py # Core MCP implementation
├── test_server.py # Validation script
├── Dockerfile # Production Docker image
├── docker-compose.yml # Docker Compose config
├── deploy.sh # Automated deployment
├── requirements.txt # Python dependencies
├── DEPLOYMENT.md # Detailed deployment guide
├── PROJECT.md # Technical documentation
└── attached_assets/
└── WYGIWYH API.yaml # OpenAPI specification🚀 部署
Docker(推荐)
# Build and run
docker-compose up -d
# View logs
docker-compose logs -f
# Stop server
docker-compose downKubernetes(通常简称为K8s)
apiVersion: apps/v1
kind: Deployment
metadata:
name: wygiwyh-mcp-server
spec:
replicas: 2
template:
spec:
containers:
- name: mcp-server
image: wygiwyh-mcp-server:latest
ports:
- containerPort: 5000
env:
- name: API_USERNAME
valueFrom:
secretKeyRef:
name: wygiwyh-secrets
key: api-username云平台
- AWS ECS/Fargate - 使用带有环境变量的Docker镜像
- Google Cloud Run - 作为带有密钥管理的容器进行部署
- Azure 容器实例 - 直接从Docker Hub部署
见 DEPLOYMENT.md 翻译为中文是:“部署说明.md” 或 “部署文件.md”(具体翻译可能根据上下文有所调整,但“部署说明”或“部署文件”是最直接的翻译) 如需详细的云部署说明,请参阅。
🧪 测试
运行验证脚本来检查设置:
python test_server.py这显示了所有75个生成的MCP工具,按类别分组。
📊 API接口
POST /- MCP JSON-RPC 端点(需要 Bearer 令牌)GET /health- 健康检查(无需认证)
🔒 安全功能
- ✅ 用于MCP访问的Bearer令牌认证
- ✅ WYGIWYH API请求的基本认证
- ✅ 非root容器用户
- ✅ 通过环境变量管理秘密
- ✅ 日志中未暴露凭证
🏗️ 建筑
动态工具生成
服务器根据OpenAPI规范自动生成MCP工具:
- 解析WYGIWYH API OpenAPI YAML
- 将模式转换为JSON Schema格式
- 为所有操作创建工具对象
- 把手;处理程序
allOf合并复杂类型 - 通过MCP协议暴露工具
益处:
- 单一真实来源(OpenAPI规范)
- 当API发生变化时自动更新
- 无需手动定义终端节点
- 一致的工具模式
认证流程
┌─────────────┐ Bearer Token ┌─────────────┐
│ n8n/MCP │ ──────────────────> │ MCP Server │
│ Client │ │ │
└─────────────┘ └─────────────┘
│
│ Basic Auth
▼
┌─────────────┐
│ WYGIWYH │
│ API │
└─────────────┘🐞 故障排除
服务器无法启动
# Check logs
docker-compose logs
# Verify environment
cat .env认证错误
- 确保
API_USERNAME这是你的“有问必答”(WYGIWYH,此处为假设的缩写,实际中可能无此特定缩写,但按语境理解为类似“问必答”的意思)电子邮件吗 - 验证
API_PASSWORD是正确的 - 检查
MCP_TOKEN与客户端配置匹配
连接被拒绝
# Check server status
docker-compose ps
# Test health endpoint
curl http://localhost:5000/health📚 文档
- \
DEPLOYMENT.md\翻译成中文是:\部署说明.md\或 \部署文件.md\(具体翻译可能根据上下文有所调整,但基本意思是“关于部署的Markdown文件”) - 全面部署指南 - PROJECT.md 翻译为中文是:“项目文件.md” 或 “项目说明文件.md”(具体翻译可能根据上下文有所调整,但基本意思是表示这是一个关于项目的Markdown文件) - 技术架构文档
🤝 贡献
欢迎投稿!请遵循以下指南:
- 为仓库创建分支(或:克隆仓库)
- 创建一个特性分支
- 在测试中进行更改
- 提交拉取请求
📄 许可证
版权所有 © 2025 ReNewator.com。保留所有权利。
🔗 链接
💬 支持
对于问题和疑问:
- 在GitHub上提交一个问题(或议题)
- 检查现有文档
- 查看部署日志
______________________________________________________________________
由ReNewator.com用心打造
