Naftiko · Capability

Accounting Rest Mcp Capability

A accounting-API capability (REST + MCP dual exposure) wrapping a representative endpoint, brought as the apidays NYC follow-on artifact.

Run with Naftiko NaftikoAccountingQuickBooks

What You Can Do

GET
List open invoices — List all open (non-zero balance) invoices.
/invoices
GET
Get invoice — Get a single invoice by ID.
/invoices/{{invoice_id}}

MCP Tools

list-open-invoices

List all open invoices in the bound QuickBooks company.

read-only
get-invoice

Get a single QuickBooks invoice by ID.

read-only
get-customer

Get a QuickBooks customer by ID.

read-only

Capability Spec

accounting-rest-mcp-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  title: Accounting Rest Mcp Capability
  description: A accounting-API capability (REST + MCP dual exposure) wrapping a representative endpoint, brought as the apidays NYC follow-on artifact.
  tags:
  - Naftiko
  - Accounting
  - QuickBooks
  created: '2026-05-01'
  modified: '2026-05-04'
binds:
- namespace: quickbooks-env
  description: Intuit QuickBooks Online OAuth2 bearer and realm (company) ID.
  keys:
    QB_TOKEN: QB_TOKEN
    QB_REALM_ID: QB_REALM_ID
capability:
  consumes:
  - namespace: quickbooks
    type: http
    baseUri: https://quickbooks.api.intuit.com
    authentication:
      type: bearer
      token: '{{QB_TOKEN}}'
    resources:
    - name: invoices
      path: /v3/company/{{QB_REALM_ID}}/query
      operations:
      - name: query-invoices
        method: GET
        inputParameters:
        - name: query
          in: query
          description: SQL-like QBO query, e.g. 'select * from Invoice where Balance > 0'.
    - name: invoice
      path: /v3/company/{{QB_REALM_ID}}/invoice/{{invoice_id}}
      operations:
      - name: get-invoice
        method: GET
        inputParameters:
        - name: invoice_id
          in: path
    - name: customers
      path: /v3/company/{{QB_REALM_ID}}/customer/{{customer_id}}
      operations:
      - name: get-customer
        method: GET
        inputParameters:
        - name: customer_id
          in: path
  exposes:
  - type: rest
    address: 0.0.0.0
    port: 8080
    namespace: accounting-rest-mcp-capability-rest
    description: REST surface over QuickBooks invoices and customers.
    resources:
    - name: invoices
      path: /invoices
      operations:
      - method: GET
        name: list-open-invoices
        description: List all open (non-zero balance) invoices.
        call: quickbooks.query-invoices
    - name: invoice
      path: /invoices/{{invoice_id}}
      operations:
      - method: GET
        name: get-invoice
        description: Get a single invoice by ID.
        inputParameters:
        - name: invoice_id
          in: path
          type: string
        call: quickbooks.get-invoice
  - type: mcp
    address: 0.0.0.0
    port: 3010
    namespace: accounting-rest-mcp-capability-mcp
    description: MCP server giving agents typed access to QuickBooks accounting data.
    tools:
    - name: list-open-invoices
      description: List all open invoices in the bound QuickBooks company.
      hints:
        readOnly: true
      call: quickbooks.query-invoices
    - name: get-invoice
      description: Get a single QuickBooks invoice by ID.
      hints:
        readOnly: true
      inputParameters:
      - name: invoice_id
        type: string
        required: true
      call: quickbooks.get-invoice
    - name: get-customer
      description: Get a QuickBooks customer by ID.
      hints:
        readOnly: true
      inputParameters:
      - name: customer_id
        type: string
        required: true
      call: quickbooks.get-customer
  - type: skill
    address: 0.0.0.0
    port: 3011
    namespace: accounting-rest-mcp-capability-skills
    description: Agent Skill bundle for QuickBooks accounting access.
    skills:
    - name: accounting-rest-mcp-capability
      description: REST + MCP dual exposure of QuickBooks accounting data.
      location: file:///opt/naftiko/skills/accounting-rest-mcp-capability
      allowed-tools: list-open-invoices,get-invoice,get-customer
      tools:
      - name: list-open-invoices
        description: List open invoices.
        from:
          sourceNamespace: accounting-rest-mcp-capability-mcp
          action: list-open-invoices
      - name: get-invoice
        description: Get an invoice.
        from:
          sourceNamespace: accounting-rest-mcp-capability-mcp
          action: get-invoice
      - name: get-customer
        description: Get a customer.
        from:
          sourceNamespace: accounting-rest-mcp-capability-mcp
          action: get-customer