SkillAgentSearch skills...

qontoctl

CLI and MCP server for the Qonto banking API

Install / Use

claude mcp add alexey-pelykh -- npx -y github:alexey-pelykh/qontoctl

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

67/100

Supported Platforms

Claude Code
Claude Desktop

QontoCtl: The Complete CLI & MCP for Qonto

CI Codecov npm version npm downloads GitHub Repo stars License

CLI and MCP server for the Qonto banking API.

This project is brought to you by Alexey Pelykh.

Unofficial project. QontoCtl is independent and not affiliated with, endorsed by, or supported by Qonto. See the Disclaimer.

What It Does

QontoCtl lets AI assistants (Claude, etc.) interact with Qonto through the Model Context Protocol. It can:

  • Organizations — retrieve organization details and settings
  • Accounts — list, create, update, close bank accounts; download IBAN certificates
  • Transactions — list, search, filter bank transactions; manage transaction attachments
  • Bank Statements — list, view, and download bank statements
  • Labels — manage transaction labels and categories
  • Memberships — view team members, show current membership, invite new members
  • SEPA Beneficiaries — list, add, update, trust/untrust SEPA beneficiaries
  • SEPA Transfers — list, create, cancel transfers; download proofs; verify payees
  • Internal Transfers — create transfers between accounts in the same organization
  • Bulk Transfers — list, view, and create bulk SEPA transfer batches
  • Recurring Transfers — list, view, create, cancel recurring transfers
  • International Transfers (SWIFT) — create SWIFT transfers and manage international beneficiaries
  • Cards — list, create, update, lock/unlock, report lost/stolen, discard cards
  • Teams — list and create teams
  • Webhooks — create and manage webhook subscriptions
  • Payment Links — create, deactivate, and manage Stripe-backed payment links
  • Insurance — show, create, update insurance contracts and manage documents
  • Terminals (POS) — list Qonto Terminals and initiate terminal payments
  • Products — list catalogue products
  • Clients — list, create, update, delete clients
  • Client Invoices — full lifecycle: create, update, finalize, send, mark paid, cancel, upload files
  • Quotes — create, update, delete, send quotes
  • Credit Notes — list and view credit notes
  • Supplier Invoices — list, view, and bulk-create supplier invoices
  • Requests — list organization requests
  • Attachments — upload and view attachments
  • E-Invoicing — retrieve e-invoicing settings

QontoCtl and Qonto's official MCP

QontoCtl is an independent, unofficial project — not affiliated with or endorsed by Qonto.

Qonto ships its own official MCP server — hosted, free on every plan, and installable in a tap from Claude, ChatGPT, Cursor, and more. If you want to talk to your finances — "show my balances", "chart last month's spending", "draft an invoice" — it's an excellent, well-made option.

QontoCtl is built for a different job: automating Qonto, not just chatting with it.

The official MCP is a hosted assistant you log into as a user. QontoCtl is a local, open-source toolkit — a CLI, an MCP server, and a library — that runs on your own machine with your own credentials, including as a headless service account.

| | Official MCP | QontoCtl | | ---------------------------------------------- | -------------------------- | ------------------------------------- | | Runs headless — CI, cron, scripts, no chat | Interactive only | ✅ CLI + MCP + library | | Authentication | OAuth, per-user | ✅ API key (service account) or OAuth | | Executes SEPA / internal / recurring transfers | Prepares approval requests | ✅ Yes, with SCA handled* | | API coverage | Curated subset | ✅ Comprehensive | | Self-hosted · your credentials · open source | Qonto-hosted | ✅ AGPL-3.0, local-first |

<sub>Comparison based on Qonto's public MCP documentation as of July 2026.</sub>

<sub>* Transfers to untrusted payees still require your Strong Customer Authentication approval, as they must. QontoCtl handles the SCA continuation so scripted flows — to trusted beneficiaries and between your own accounts — complete without a human at the terminal.</sub>

QontoCtl also supports multiple Qonto organizations from one setup via named profiles — handy for accountants, holding companies, and anyone running the books for several entities.

The official MCP talks to Qonto. QontoCtl automates it. Many people will use both — the official MCP in a chat window, QontoCtl in a pipeline.

Prerequisites

  • Node.js >= 24
  • A Qonto business account with API access

Installation

npm install -g qontoctl

Or run directly with npx:

npx qontoctl --help

Or install via Homebrew:

brew install qontoctl/tap/qontoctl

Quick Start

# 1. Install
npm install -g qontoctl

# 2. Create a profile with your Qonto API credentials
qontoctl profile add mycompany

# 3. Test the connection
qontoctl profile test --profile mycompany

# 4. List your accounts
qontoctl account list --profile mycompany

MCP Integration

QontoCtl implements the Model Context Protocol (MCP), letting AI assistants interact with your Qonto account through natural language.

MCP Client Configuration

<details> <summary><b>Claude Desktop</b></summary>

Add to your Claude Desktop configuration (claude_desktop_config.json):

{
    "mcpServers": {
        "qontoctl": {
            "command": "npx",
            "args": ["qontoctl", "mcp"]
        }
    }
}
</details> <details> <summary><b>Claude Code</b></summary>
claude mcp add qontoctl -- npx qontoctl mcp
</details> <details> <summary><b>Cursor</b></summary>

Add to .cursor/mcp.json in your project root:

{
    "mcpServers": {
        "qontoctl": {
            "command": "npx",
            "args": ["qontoctl", "mcp"]
        }
    }
}
</details> <details> <summary><b>Windsurf</b></summary>

Add to ~/.codeium/windsurf/mcp_config.json:

{
    "mcpServers": {
        "qontoctl": {
            "command": "npx",
            "args": ["qontoctl", "mcp"]
        }
    }
}
</details>

Pointing MCP at a non-default config file

The MCP server has no CLI flags. To load credentials from a config file other than ~/.qontoctl.yaml, set QONTOCTL_CONFIG_FILE in the host's env block:

{
    "mcpServers": {
        "qontoctl": {
            "command": "npx",
            "args": ["qontoctl", "mcp"],
            "env": {
                "QONTOCTL_CONFIG_FILE": "/abs/path/to/qontoctl.yaml",
            },
        },
    },
}

The path is captured at server startup. See docs/configuration.md for the full resolution chain.

Available MCP Tools

| Tool | Description | | ------------------------------- | --------------------------------------------------------------------- | | Organization | | | org_show | Show organization details including name, slug, and bank accounts | | Accounts | | | account_list | List all bank accounts for the organization | | account_show | Show details of a specific bank account | | account_iban_certificate | Download IBAN certificate PDF for a bank account | | account_create | Create a new bank account | | account_update | Update an existing bank account | | account_close | Close a bank account | | Transactions | | | transaction_list | List transactions for a bank account with optional filters | | transaction_show | Show details of a specific transaction | | transaction_attachment_list | List attachments for a transaction | | transaction_attachment_add | Attach a file to a transaction | | transaction_attachment_remove | Remove attachment(s) from a transaction | | Statements | | | statement_list | List bank statements with optional filters | | statement_show | Show details of a specific bank statement | | Labels | | | label_list | List all labels in the organization | | label_show | Show details of a specific label | | Memberships | | | membership_list | List all memberships in the organization | | membership_show | Show the current authenticated user's membership | | membership_invite | Invite a new member to the organization | | SEPA Beneficiaries | | | beneficiary_list | List SEPA beneficiaries in the organization | | beneficiary_show | Show details of a specific SEPA beneficiary | | beneficiary_add | Create a new SEPA beneficiary | | beneficiary_update | Update an existing SEPA beneficiary | | beneficiary_trust | Trust one or more SEPA beneficiaries | | beneficiary_untrust | Untrust one or more SEPA beneficiaries | | SEPA Transfers | | | transfer_list | List SEPA transfers with optional filters | | transfer_show | Show details of a specific SEPA transfer | | transfer_create | Create a SEPA transfer | | transfer_cancel | Cancel a pending SEPA transfer

Truncated for display — read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars3
CategoryDevelopment
Updated16d ago
Forks0

Languages

TypeScript

Security Score

87/100

Audited on Jul 30, 2026

2 low