{
  "apis": [
    {
      "title": "Uncommon Cash Mobile API v1",
      "description": "REST API for accessing personal finance data. Requires Bearer token authentication.",
      "url": "https://uncommoncash.com/api/v1/mobile",
      "auth": {
        "type": "bearer",
        "description": "Generate a token at https://uncommoncash.com/settings (Settings > Agent Access)"
      },
      "endpoints": [
        {
          "path": "/api/v1/mobile/transactions",
          "method": "GET",
          "description": "List transactions with optional filters",
          "parameters": {
            "query": {
              "dateFrom": { "type": "string", "format": "date", "description": "Start date (YYYY-MM-DD)" },
              "dateTo": { "type": "string", "format": "date", "description": "End date (YYYY-MM-DD)" },
              "category": { "type": "string", "description": "Filter by category name" },
              "description": { "type": "string", "description": "Filter by description (partial match)" },
              "pageSize": { "type": "integer", "default": 50 },
              "page": { "type": "integer", "default": 0 }
            }
          }
        },
        {
          "path": "/api/v1/mobile/categories",
          "method": "GET",
          "description": "List all categories with hierarchy"
        },
        {
          "path": "/api/v1/mobile/accounts/balances",
          "method": "GET",
          "description": "List all accounts with current balances"
        },
        {
          "path": "/api/v1/mobile/spend/by-category",
          "method": "GET",
          "description": "Spending breakdown by category for a given month",
          "parameters": {
            "query": {
              "year": { "type": "integer", "description": "Year (e.g. 2025)" },
              "month": { "type": "integer", "description": "Month 1-12" }
            }
          }
        },
        {
          "path": "/api/v1/mobile/spend/month",
          "method": "GET",
          "description": "Monthly spending totals",
          "parameters": {
            "query": {
              "year": { "type": "integer" },
              "month": { "type": "integer" }
            }
          }
        },
        {
          "path": "/api/v1/mobile/transactions/categorize",
          "method": "POST",
          "description": "Categorize a transaction",
          "body": {
            "transactionId": { "type": "string", "required": true },
            "categoryId": { "type": "integer", "required": true }
          }
        },
        {
          "path": "/api/mcp",
          "method": "POST",
          "description": "MCP server endpoint — preferred for agent use. Exposes full tool suite including analysis tools.",
          "protocol": "MCP StreamableHTTP",
          "docs": "https://uncommoncash.com/.well-known/agent-skills/index.json"
        }
      ]
    }
  ]
}
