accounting-mcp

8 EU accounting (x402 USDC on Base): reconcile, VAT, invoicing. Free health.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
91%
Integridad del esquema
99%
Calidad de los nombres
89%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (2)

  • LOWTool 'reconcile_transactions' description lacks action verben reconcile_transactions
  • LOWTool 'categorise_expenses' description lacks action verben categorise_expenses

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~1,551Tokens (definiciones de herramientas)
~1.7 KBTamaño de respuesta típico
Impacto moderado en la atención (1.21% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "accounting-mcp": {
      "url": "https://xero.api.ainode.tech/mcp"
    }
  }
}

Puntos de conexión remotos

https://xero.api.ainode.tech/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (9)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
⚪health(echo)

Health check. Returns server status and optional echo.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "echo": {
      "type": "string",
      "description": "Optional string to echo back"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪reconcile_transactions(api_key_hash, from_date, to_date)

Match bank statement lines against unreconciled Xero transactions. Returns confidence-scored matches (>=0.8 matched, 0.5-0.8 suggested, <0.5 unmatched).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "api_key_hash": {
      "type": "string",
      "description": "Customer API key hash identifying Xero token"
    },
    "from_date": {
      "type": "string",
      "description": "Start date filter (YYYY-MM-DD)"
    },
    "to_date": {
      "type": "string",
      "description": "End date filter (YYYY-MM-DD)"
    }
  },
  "required": [
    "api_key_hash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪confirm_reconciliation(matches, api_key_hash)

Apply confirmed reconciliation matches to Xero. Marks matched bank transactions as reconciled.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "matches": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "statement_line_id": {
            "type": "string"
          },
          "bank_transaction_id": {
            "type": "string"
          }
        },
        "required": [
          "statement_line_id",
          "bank_transaction_id"
        ],
        "additionalProperties": false
      },
      "description": "Array of confirmed statement-to-transaction matches"
    },
    "api_key_hash": {
      "type": "string",
      "description": "Customer API key hash identifying Xero token"
    }
  },
  "required": [
    "matches",
    "api_key_hash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪categorise_expenses(api_key_hash, from_date, to_date, region)

Suggest Portuguese tax categories for uncategorised Xero expenses. Returns category, VAT tier, deductibility, and VAT breakdown per transaction.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "api_key_hash": {
      "type": "string",
      "description": "Customer API key hash identifying Xero token"
    },
    "from_date": {
      "type": "string",
      "description": "Start date filter (YYYY-MM-DD)"
    },
    "to_date": {
      "type": "string",
      "description": "End date filter (YYYY-MM-DD)"
    },
    "region": {
      "type": "string",
      "enum": [
        "mainland",
        "azores",
        "madeira"
      ],
      "default": "mainland",
      "description": "Portuguese tax region"
    }
  },
  "required": [
    "api_key_hash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪apply_categories(categories, api_key_hash)

Apply confirmed Portuguese tax categories to Xero transactions. Updates AccountCode and TaxType.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "categories": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "transaction_id": {
            "type": "string"
          },
          "category_code": {
            "type": "string"
          },
          "region": {
            "type": "string",
            "enum": [
              "mainland",
              "azores",
              "madeira"
            ]
          }
        },
        "required": [
          "transaction_id",
          "category_code"
        ],
        "additionalProperties": false
      },
      "description": "Array of transaction-to-category assignments"
    },
    "api_key_hash": {
      "type": "string",
      "description": "Customer API key hash identifying Xero token"
    }
  },
  "required": [
    "categories",
    "api_key_hash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢calculate_vat(amount, category, region, is_b2b, counterpart_country)

Calculate Portuguese VAT for a given amount, category, and region. Supports Mainland, Azores, and Madeira rates. Detects intra-community B2B reverse charge.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "amount": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Net amount (ex-VAT) to calculate VAT on"
    },
    "category": {
      "type": "string",
      "description": "Portuguese tax category code (e.g. office_supplies, food_restaurant)"
    },
    "region": {
      "type": "string",
      "enum": [
        "mainland",
        "azores",
        "madeira"
      ],
      "default": "mainland",
      "description": "Portuguese tax region"
    },
    "is_b2b": {
      "type": "boolean",
      "default": false,
      "description": "Whether the transaction is business-to-business"
    },
    "counterpart_country": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2,
      "description": "ISO 3166-1 alpha-2 country code of the counterpart"
    }
  },
  "required": [
    "amount"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡draft_invoice(contact_name, contact_email, line_items, due_date, currency, ...)

Create a DRAFT invoice in Xero with VAT preview. Returns line totals and tax amounts for review before sending.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "contact_name": {
      "type": "string",
      "description": "Invoice recipient name"
    },
    "contact_email": {
      "type": "string",
      "format": "email",
      "description": "Invoice recipient email address"
    },
    "line_items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "Line item description"
          },
          "amount": {
            "type": "number",
            "description": "Unit amount (ex-VAT)"
          },
          "quantity": {
            "type": "number",
            "default": 1,
            "description": "Quantity (defaults to 1)"
          },
          "account_code": {
            "type": "string",
            "default": "200",
            "description": "Xero account code (defaults to 200 - Sales)"
          },
          "tax_type": {
            "type": "string",
            "description": "Xero tax type override (e.g. OUTPUT2, EXEMPTOUTPUT)"
          },
          "category": {
            "type": "string",
            "description": "Portuguese tax category for automatic VAT lookup (e.g. professional_services, software_licenses)"
          }
        },
        "required": [
          "description",
          "amount"
        ],
        "additionalProperties": false
      },
      "description": "Invoice line items"
    },
    "due_date": {
      "type": "string",
      "description": "Due date (YYYY-MM-DD)"
    },
    "currency": {
      "type": "string",
      "default": "EUR",
      "description": "Currency code (defaults to EUR)"
    },
    "reference": {
      "type": "string",
      "description": "Invoice reference number"
    },
    "notes": {
      "type": "string",
      "description": "Notes for internal use"
    },
    "api_key_hash": {
      "type": "string",
      "description": "Customer API key hash identifying Xero token"
    }
  },
  "required": [
    "contact_name",
    "contact_email",
    "line_items",
    "due_date",
    "api_key_hash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡send_invoice(invoice_id, api_key_hash)

Authorise a DRAFT invoice and email it to the contact via Xero. Two-step: sets status to AUTHORISED then triggers email.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "invoice_id": {
      "type": "string",
      "description": "Xero InvoiceID to authorise and send"
    },
    "api_key_hash": {
      "type": "string",
      "description": "Customer API key hash identifying Xero token"
    }
  },
  "required": [
    "invoice_id",
    "api_key_hash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪generate_report(report_type, from_date, to_date, api_key_hash)

Generate a financial report: P&L, Balance Sheet, Cash Flow (indirect method from balance sheet deltas), or VAT Summary with Portuguese SAF-T filing hints.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "report_type": {
      "type": "string",
      "enum": [
        "pnl",
        "balance_sheet",
        "cash_flow",
        "vat_summary"
      ],
      "description": "Report type to generate"
    },
    "from_date": {
      "type": "string",
      "description": "Start date (YYYY-MM-DD, defaults to 1st of current month)"
    },
    "to_date": {
      "type": "string",
      "description": "End date (YYYY-MM-DD, defaults to today)"
    },
    "api_key_hash": {
      "type": "string",
      "description": "Customer API key hash identifying Xero token"
    }
  },
  "required": [
    "report_type",
    "api_key_hash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada9 herramientas
verificadoversión no registrada9 herramientas