MCP YNAB Server

by Meh-S-Eze
Verified

Integrations

  • Supports loading YNAB API credentials from a .env file in the project root

  • Uses Taskfile for managing project operations like development, testing, and deployment

MCP YNAB 服务器

MCP 服务器实现通过模型上下文协议提供对 YNAB(您需要预算)功能的访问。

特征

  • 查看账户余额和交易
  • 创建新交易
  • 通过标准化 MCP 资源访问 YNAB 数据

安装

uv pip install -e .

配置

服务器需要 YNAB API 密钥才能运行。您可以从YNAB 开发者设置中获取一个。

API 密钥可以通过以下方式提供:

  1. 环境变量: YNAB_API_KEY=your_api_key
  2. MCP机密管理系统
  3. 项目根目录中的.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以了解所有可用任务。

-
security - not tested
F
license - not found
-
quality - not tested

通过模型上下文协议提供对 YNAB(您需要预算)功能的访问,允许用户查看账户余额、访问交易数据和创建新交易。

  1. Features
    1. Installation
      1. Configuration
        1. Usage
          1. Running the Server
          2. Available Resources
          3. Available Tools
        2. Example Usage
          1. Development
            1. Project Tasks
              ID: 27s5x5tf4p