{
  "info": {
    "name": "Moneybird — mcp.ai",
    "description": "REST API for the Moneybird MCP. Set {{apiKey}} to a workspace key (sk_live_…) created at https://mcp.ai/settings/api-keys.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.mcp.ai/api/moneybird",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "sk_live_...",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "moneybird_add_note_to_contact",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/add/note/to/contact",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "add",
            "note",
            "to",
            "contact"
          ]
        },
        "description": "Tool to add a note or to-do to a contact. use when you need to record a comment or assign a task to a contact.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"note\": {},\n  \"contact_id\": \"\",\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_archive_contact",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/archive/contact",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "archive",
            "contact"
          ]
        },
        "description": "Tool to archive a contact. use when a contact is no longer needed and should be hidden permanently.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"contact_id\": 0,\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_create_contact",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/contact",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "contact"
          ]
        },
        "description": "Tool to create a new contact in moneybird. use after you have an administration id and need to onboard a new company/person. provide either company name or both firstname and lastname.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"city\": \"\",\n  \"phone\": \"\",\n  \"country\": \"\",\n  \"zipcode\": \"\",\n  \"address1\": \"\",\n  \"address2\": \"\",\n  \"lastname\": \"\",\n  \"sepa_bic\": \"\",\n  \"firstname\": \"\",\n  \"sepa_iban\": \"\",\n  \"tax_number\": \"\",\n  \"customer_id\": \"\",\n  \"sepa_active\": false,\n  \"bank_account\": \"\",\n  \"company_name\": \"\",\n  \"si_identifier\": \"\",\n  \"delivery_method\": \"\",\n  \"sepa_mandate_id\": \"\",\n  \"administration_id\": 0,\n  \"sepa_mandate_date\": \"\",\n  \"sepa_sequence_type\": \"\",\n  \"si_identifier_type\": \"\",\n  \"chamber_of_commerce\": \"\",\n  \"invoice_workflow_id\": 0,\n  \"estimate_workflow_id\": 0,\n  \"send_invoices_to_email\": \"\",\n  \"sepa_iban_account_name\": \"\",\n  \"send_estimates_to_email\": \"\",\n  \"custom_fields_attributes\": {}\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_create_contact_person",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/contact/person",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "contact",
            "person"
          ]
        },
        "description": "Tool to create a new contact person. use when you have the contact id and need to add a person after confirming their firstname and lastname.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"contact_id\": 0,\n  \"contact_person\": {},\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_create_sales_invoice",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/create/sales/invoice",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "create",
            "sales",
            "invoice"
          ]
        },
        "description": "Tool to create a new sales invoice. use when you need to bill a contact with specified line items.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"sales_invoice\": {},\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_delete_contact",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/contact",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "contact"
          ]
        },
        "description": "Tool to delete a contact. use after confirming that contact should be removed.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"contact_id\": 0,\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_delete_contact_note",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/contact/note",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "contact",
            "note"
          ]
        },
        "description": "Tool to delete a note from a contact. use when a note is no longer needed and should be removed permanently.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"note_id\": 0,\n  \"contact_id\": 0,\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_delete_contact_person",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/delete/contact/person",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "delete",
            "contact",
            "person"
          ]
        },
        "description": "Tool to delete a contact person from a contact. use after confirming the administration id, contact id, and contact person id.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"contact_id\": 0,\n  \"administration_id\": 0,\n  \"contact_person_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_filter_contacts",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/filter/contacts",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "filter",
            "contacts"
          ]
        },
        "description": "Tool to filter contacts. use when you need to retrieve contacts matching specific criteria like created after or first name.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"per_page\": 0,\n  \"last_name\": \"\",\n  \"first_name\": \"\",\n  \"created_after\": \"\",\n  \"updated_after\": \"\",\n  \"include_archived\": false,\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_get_additional_charges",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/additional/charges",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "additional",
            "charges"
          ]
        },
        "description": "Tool to get additional charges for a contact. use when you need to view pending (or optionally billed) usage or recurring charges.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"contact_id\": \"\",\n  \"include_billed\": false,\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_get_contact",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/contact",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "contact"
          ]
        },
        "description": "Tool to retrieve all information about a specific contact by id. use when you need the full details of a contact, for example before generating invoices.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"contact_id\": \"\",\n  \"include_archived\": false,\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_get_contact_by_customer_id",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/contact/by/customer/id",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "contact",
            "by",
            "customer",
            "id"
          ]
        },
        "description": "Tool to retrieve full contact details by customer id. use when you need all fields of a contact given its customer id.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"customer_id\": \"\",\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_get_contact_person",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/contact/person",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "contact",
            "person"
          ]
        },
        "description": "Tool to get all information about a contact person. use when you have the administration, contact, and contact person ids and need full details before updating.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"contact_id\": 0,\n  \"administration_id\": 0,\n  \"contact_person_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_get_sales_invoice",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/get/sales/invoice",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "get",
            "sales",
            "invoice"
          ]
        },
        "description": "Tool to get a single sales invoice by id. use when you need detailed invoice data for a known invoice id.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"invoice_id\": \"\",\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_list_administrations",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/administrations",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "administrations"
          ]
        },
        "description": "Tool to list all administrations accessible by the authenticated user. use when you need to obtain administration id for subsequent operations like create contact.",
        "body": {
          "mode": "raw",
          "raw": "{}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_list_contacts_synchronization",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/contacts/synchronization",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "contacts",
            "synchronization"
          ]
        },
        "description": "Tool to list all contact ids and versions for synchronization. use when you need to detect which contacts have changed and update local data accordingly.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"filter\": \"\",\n  \"include_archived\": false,\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_list_sales_invoices",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/list/sales/invoices",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "list",
            "sales",
            "invoices"
          ]
        },
        "description": "Tool to list all sales invoices in an administration. use when you need an overview of invoices for a given administration.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"page\": 0,\n  \"filter\": \"\",\n  \"per_page\": 0,\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_request_contact_payments_mandate_url",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/request/contact/payments/mandate/url",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "request",
            "contact",
            "payments",
            "mandate",
            "url"
          ]
        },
        "description": "Tool to request a url for setting up a payments mandate. use when you need to generate a direct-debit authorization link for a contact (valid for 14 days).",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"contact_id\": 0,\n  \"identity_id\": 0,\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_update_contact",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/contact",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "contact"
          ]
        },
        "description": "Tool to update a contact. use when you need to modify existing contact details by id. only provided fields will be changed.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"contact\": {},\n  \"contact_id\": \"\",\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_update_contact_person",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/contact/person",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "contact",
            "person"
          ]
        },
        "description": "Tool to update a contact person. use after selecting a specific contact person when you need to change their details.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"email\": \"\",\n  \"phone\": \"\",\n  \"lastname\": \"\",\n  \"firstname\": \"\",\n  \"contact_id\": \"\",\n  \"department\": \"\",\n  \"administration_id\": 0,\n  \"contact_person_id\": \"\"\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    },
    {
      "name": "moneybird_update_sales_invoice",
      "request": {
        "method": "POST",
        "header": [
          {
            "key": "Content-Type",
            "value": "application/json"
          }
        ],
        "url": {
          "raw": "{{baseUrl}}/update/sales/invoice",
          "host": [
            "{{baseUrl}}"
          ],
          "path": [
            "update",
            "sales",
            "invoice"
          ]
        },
        "description": "Tool to update an existing sales invoice by id. use when modifying invoice header or line items.",
        "body": {
          "mode": "raw",
          "raw": "{\n  \"sales_invoice\": {},\n  \"sales_invoice_id\": \"\",\n  \"administration_id\": 0\n}",
          "options": {
            "raw": {
              "language": "json"
            }
          }
        }
      }
    }
  ]
}