# mcp-holded

Lets an AI assistant work inside Holded: invoices, contacts, products, treasury, payroll and accounting. Requires a Holded API v2 key.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 20
- Author: nubiia-dev
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/nubiia-dev/mcp-holded
- Updated: 2026-10-22
- HTML: https://affpapa.org/en/nevibecode/mcp/mcp-holded

## What it does

This server sits in front of Holded API v2. Once you supply a working key, all 119 tools register. Documents get 16 of them, covering invoices, estimates and credit notes: create, update, delete, pay, send, fetch a PDF. Contacts, products, warehouses, sales channels, numbering series, taxes and payment methods are grouped separately. Treasury v2 adds 15 tools for bank accounts, movements, invoice forecasts and reconciliation.

Accounting and HR are wired in too. The chart of accounts and the daily ledger are read-only; ledger entries can be created. Team/HR carries 22 tools, payroll records and clock in/out among them. So the server earns its place beyond bookkeeping chores: an agent can draft an invoice from a chat message, then follow up on whether the payment landed.

Bring Node.js 22.14 or newer and a Holded key starting with `pat_` or `sk_live_`, generated under Holded → Settings → API. It goes into `HOLDED_API_KEY`. If the key lacks a required scope, calls come back with 403. Money arrives as strings using a decimal comma; parse with a locale-aware number parser before any arithmetic. Running several companies? Give each one a `TENANT_N_NAME` and `TENANT_N_API_KEY` pair.

## Requirements
- Needs: Node.js (commands run via npx)
- Environment variables: `HOLDED_API_KEY` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add mcp-holded -e HOLDED_API_KEY=<HOLDED_API_KEY> -- npx -y @nubiia/mcp-holded
```
Replace <…> with your own values

### Codex

**Platform CLI**
```bash
codex mcp add mcp-holded --env HOLDED_API_KEY=<HOLDED_API_KEY> -- npx -y @nubiia/mcp-holded
```
Replace <…> with your own values

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "mcp-holded": {
            "command": "npx",
            "args": [
                "-y",
                "@nubiia/mcp-holded"
            ],
            "env": {
                "HOLDED_API_KEY": "<HOLDED_API_KEY>"
            }
        }
    }
}
```
Replace <…> with your own values

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "mcp-holded": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@nubiia/mcp-holded"
            ],
            "env": {
                "HOLDED_API_KEY": "<HOLDED_API_KEY>"
            }
        }
    }
}
```
Replace <…> with your own values

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e HOLDED_API_KEY=<HOLDED_API_KEY> mcp-holded npx -y @nubiia/mcp-holded
```
Replace <…> with your own values

## When to use it
- issue an invoice to a client mid-conversation
- pull up a supplier contact with its attachments
- match a bank movement against the books
- check stock levels per warehouse
- list ledger entries for a given day

## Example prompts
- List my Holded invoices from last month
- Create an invoice for this client and fetch the PDF
- Did the payment on the last invoice go through?

## Similar
- [World Monitor](https://affpapa.org/en/nevibecode/mcp/world-monitor.md) — MCP server · ★ 89408
- [CCXT](https://affpapa.org/en/nevibecode/mcp/ccxt.md) — MCP server · ★ 44583
- [Finance Toolkit](https://affpapa.org/en/nevibecode/mcp/finance-toolkit.md) — MCP server · ★ 5458
- [EdgarTools](https://affpapa.org/en/nevibecode/mcp/edgartools.md) — MCP server · ★ 2814
- [LetsFG — Flights & Hotels](https://affpapa.org/en/nevibecode/mcp/letsfg-flights-hotels.md) — MCP server · ★ 2188
- [AutoTS](https://affpapa.org/en/nevibecode/mcp/autots.md) — MCP server · ★ 1434

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
