MCP YNAB 服务器
MCP 服务器实现通过模型上下文协议提供对 YNAB(您需要预算)功能的访问。
特征
- 查看账户余额和交易
- 创建新交易
- 通过标准化 MCP 资源访问 YNAB 数据
安装
配置
服务器需要 YNAB API 密钥才能运行。您可以从YNAB 开发者设置中获取一个。
API 密钥可以通过以下方式提供:
- 环境变量:
YNAB_API_KEY=your_api_key
- MCP机密管理系统
- 项目根目录中的
.env
文件
用法
运行服务器
# Development mode with hot reload and browser launch
task dev
# Production install for Claude Desktop, Goose, or any other MCP-supported environment
task install
可用资源
ynab://accounts
- 列出所有 YNAB 帐户ynab://transactions/{account_id}
- 获取特定账户的最近交易
可用工具
create_transaction
创建新交易get_account_balance
- 获取账户的当前余额
示例用法
# Create a new transaction
result = await create_transaction(
account_id="your_account_id",
amount=42.50, # in dollars
payee_name="Coffee Shop",
category_name="Dining Out",
memo="Morning coffee"
)
# Get account balance
balance = await get_account_balance("your_account_id")
# List accounts
accounts = await ctx.read_resource("ynab://accounts")
# Get recent transactions
transactions = await ctx.read_resource(f"ynab://transactions/{account_id}")
发展
# Install dependencies (uses uv)
task deps
# Run all tests including integration tests (you will need a YNAB API key for this)
task test:all
# Generate coverage report
task coverage
# Format and lint code
task fmt # Should add this to Taskfile
项目任务
该项目使用 Taskfile 进行常见操作。关键命令:
task dev # Start dev server with auto-reload
task test # Run unit tests
task coverage # Generate test coverage report
task install # Install production build
task deps # Synchronize dependencies
请参阅Taskfile.yml以了解所有可用任务。