crmapi_key

Holded

Holded is business management software for managing sales documents, invoices, services, contacts, contact groups, and tags.

Verdict

Holded is a Spanish business management platform that combines invoicing, CRM, accounting, and inventory. In Switchy, @mentioning Holded lets your team create and search contacts, draft invoices, and pull payment status without opening the web app. Sales reps can log new leads mid-conversation, finance can check which invoices are overdue, and support can look up a customer's account details by email. The MCP requires an API key with read/write access to contacts and documents. It does not send invoices or record payments—those actions still happen in Holded's interface.

Common use cases

  • Log inbound leads from chat transcripts
  • Check which invoices are overdue this week
  • Pull customer details by email during support calls
  • Draft invoices for closed deals in one step
  • Search contacts by tax ID for compliance audits

Integration

Vendor
Holded
Category
crm
Auth
API_KEY
Tools
10
Composio slug
holded

Tools

  • Create Contact

    Create a customer, supplier, lead, debtor, creditor, or unclassified contact and return its new Holded ID.

  • Create Invoice

    Create a sales invoice for an existing contact and return its ID; this does not send, approve, or record payment for the invoice.

  • Delete Contact
    destructive

    Permanently delete one contact by ID; linked documents keep display text but lose the live contact association.

  • Delete Invoice
    destructive

    Permanently delete one invoice and its recorded payments; its document number is not reused.

  • Find Contacts

    Find Holded contacts by name prefix or an exact email, phone, mobile, tax ID, or external ID. With no filter, return one page of contacts.

  • Find Invoices

    Find Holded invoices by fuzzy document-number prefix or list them by contact, payment status, issue date, or due date. With no filter, return one page of invoices.

  • Get Contact

    Return the complete profile of one contact by its Holded contact ID.

  • Get Invoice

    Return full details, lines, totals, and payment summary for one invoice by its Holded ID.

  • Update Contact

    Safely change selected fields on a contact without clearing unspecified profile data. Reads the contact before updating and returns the verified result.

  • Update Invoice

    Safely change selected mutable fields on an invoice without clearing unspecified invoice data or altering recorded payments. Reads the invoice before updating and returns the verified result.

Setup

Setup guide

  1. 11. In Switchy, open your workspace settings and navigate to the Integrations tab. 2. Click 'Add Integration,' search for Holded, and select it from the list. 3. Open Holded in a new tab, sign in, and go to Settings → API to generate a new API key with permissions for Contacts and Documents. 4. Copy the key and paste it into the Switchy connection dialog, then click 'Connect.' 5. Switchy will test the connection by fetching one page of contacts; if successful, you'll see a green checkmark. 6. Inside any Project, type '@Holded find contacts matching' followed by a name or email to confirm the integration responds. 7. The MCP is now live—any team member with Project access can invoke Holded tools by @mentioning it in a prompt.

What teammates see: by default, memories from Holded are scoped to the Project (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.

Works well with

Top models

Compatibility data appears once enough Projects have used this MCP together with a given model.

How Switchy teams use it

Not enough Projects yet to publish anonymised usage stats (we require ≥ 50 Projects per week).

Starter prompts

Log New Lead

@Holded create a new lead contact named 'Acme Corp' with email hello@acmecorp.com and phone +34 912 345 678.

Find Overdue Invoices

@Holded find all invoices that are overdue and still unpaid, sorted by due date oldest first.

Lookup Customer by Email

@Holded find the contact with email support@clientdomain.com and show me their full profile including tax ID and address.

Draft Invoice for Deal

@Holded create an invoice for contact ID 12345 with one line item: 'Annual subscription' quantity 1 at €1200, due in 30 days.

Check Payment Status

@Holded get invoice ID 67890 and tell me if it's been paid, how much is outstanding, and when it was issued.

Example outputs

Illustrative - representative of the model's voice and quality, not literal recordings.

Prompt

@holded pull the last 10 invoices issued in March and draft a one-paragraph revenue summary for our board deck

Output

Retrieved 10 invoices issued between March 1–31, 2024. Total billed: €47,320.00 across 7 customers. Eight invoices are fully paid (€39,100.00 collected), one is partially paid (€3,200.00 of €5,500.00), and one remains unpaid (€2,720.00, due Mar 28). Average invoice value: €4,732.00. Largest single invoice: €12,400.00 to Beta Industries. Draft summary: 'March invoicing reached €47.3K across ten transactions, with 82% collected to date. One invoice remains outstanding as of early April, representing 6% of the month's billings. Average deal size held steady at €4.7K.'

Notes

Showcases the find-invoices tool filtered by issue date, combined with the AI's summarization and financial reasoning. Holded returns line-item and payment data; the AI calculates collection rates and drafts prose. This workflow is read-only and safe to run repeatedly. If your Holded account has hundreds of March invoices, you may need to paginate or narrow the date range to stay within rate limits.

Use-case deep-dives

Freelancer invoice follow-up

When Holded MCP replaces your invoice-chasing spreadsheet

A 2-person consulting shop sends 15-20 invoices a month and spends Friday mornings checking who paid. The Holded MCP wins here because Find Invoices filters by payment status and due date in one call, and Get Invoice shows the payment summary without opening the web app. You can script a weekly Slack reminder that lists overdue invoices with contact names pulled from Get Contact. The 10-tool scope is tight enough that you won't accidentally delete a contact when you meant to look one up. If you're issuing fewer than 10 invoices a month, the manual Holded UI is faster than teaching your team the MCP syntax.

Agency client onboarding automation

Holded MCP cuts new-client setup from 12 minutes to 30 seconds

A 6-person creative agency onboards 3-5 new clients each month, and every onboarding means creating a Holded contact, a project folder, and a first invoice. The Create Contact and Create Invoice tools let you wire this into a single Slack command or form submission. The representative tools show you can pass custom fields and tax IDs at creation time, so European VAT numbers go straight into Holded without a second pass. The boundary: if your onboarding also provisions Notion databases or sends DocuSign envelopes, you'll need a second MCP in the same workspace. Holded MCP handles the billing spine; pair it with a document or project MCP for the rest.

SaaS support ticket billing lookup

When support needs invoice history without finance-system access

A 12-person SaaS company fields 40 support tickets a week, and 8 of those ask about billing. The support team doesn't have Holded logins, so they ping finance in Slack and wait. The Holded MCP changes this: Find Contacts by email returns the contact ID, then Find Invoices by contact ID shows the last six months of invoices in 2 seconds. Get Invoice pulls line items if the customer disputes a charge. The auth is API-key, so you can scope one key to read-only and share it across the support team's Switchy workspace. If your ticket volume is under 10 billing questions a month, the Slack-ping overhead is lower than teaching the MCP flow.

Frequently asked

What does the Holded MCP let me do in Switchy?

It connects your Holded account so AI agents can create and find contacts, create and delete invoices, and retrieve full customer or invoice details. The MCP does not send invoices, record payments, or approve documents — it handles the data layer only. Use it to automate contact imports, generate draft invoices from chat, or pull invoice status into team workflows.

Do I need admin access to connect Holded?

You need a Holded API key, which typically requires admin or developer permissions in your Holded account. The key grants read and write access to contacts and invoices, so only connect it if you trust the team members who will use Switchy. Holded does not offer scoped OAuth — the API key has full access to the modules it covers.

Can the Holded MCP send invoices or record payments?

No. The MCP creates draft invoices and retrieves invoice data, but it does not send invoices to customers, mark them as paid, or post payment transactions. You still handle approval, sending, and payment recording inside Holded itself. If you need automated invoice delivery, use Holded's native automations or a separate integration tool.

How does this compare to using Holded's web app directly?

The MCP is faster for bulk lookups and repetitive data entry — an agent can create ten contacts from a spreadsheet in seconds, or find all overdue invoices matching a date range. The web app gives you richer editing, document previews, and approval workflows. Use the MCP for data tasks; use the app for review and final actions.

Who on the team should connect the Holded integration?

Whoever owns your Holded API keys — usually the finance lead or operations manager. Because the key grants write access to contacts and invoices, limit connection to people who understand the impact of automated changes. Other team members can query data through Switchy once the integration is live, without needing their own Holded credentials.

More crm MCPs

See all crm MCPs →

Data last verified 61 hours ago.Sources aggregated hourly to weekly. See docs/architecture/model-directory.md.