io.github.agente-dev/wfirma-mcp

Registre officiel Finance et paiements

Unofficial read-only MCP server for the wFirma API v2: invoices, contractors, expenses, payments.

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

NPM package wfirma-mcp
Claude Code
claude mcp add wfirma-mcp -e 'WFIRMA_ACCESS_KEY=<your wfirma_access_key>' -e 'WFIRMA_SECRET_KEY=<your wfirma_secret_key>' -e 'WFIRMA_APP_KEY=<your wfirma_app_key>' -- npx -y wfirma-mcp@1.0.0
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "wfirma-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "wfirma-mcp@1.0.0"
            ],
            "env": {
                "WFIRMA_ACCESS_KEY": "<your wfirma_access_key>",
                "WFIRMA_SECRET_KEY": "<your wfirma_secret_key>",
                "WFIRMA_APP_KEY": "<your wfirma_app_key>"
            }
        }
    }
}

Variables d'environnement

  • WFIRMA_ACCESS_KEY obligatoire secret wFirma access key from your panel (Integrations → API)
  • WFIRMA_SECRET_KEY obligatoire secret wFirma secret key paired with the access key
  • WFIRMA_APP_KEY obligatoire secret wFirma app key for the API application

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. wFirma MCP
  2. Tools (9, all read-only)
  3. Why read-only
  4. Setup
  5. Design notes
  6. License

wFirma MCP

Unofficial, read-only MCP server for the wFirma API v2 (api2.wfirma.pl). Gives MCP-compatible AI assistants typed, read-only access to company data, invoices, contractors, expenses, and payments — with credentials that never leave your machine and no commercial middleware between you and wFirma.

Not affiliated with wFirma. "wFirma" is a trademark of its respective owner.

Tools (9, all read-only)

ToolEndpoint
wfirma_list_companiesGET /user_companies/find
wfirma_list_invoicesGET /invoices/find
wfirma_get_invoiceGET /invoices/get/{id}
wfirma_list_contractorsGET /contractors/find
wfirma_get_contractorGET /contractors/get/{id}
wfirma_list_expensesGET /expenses/find
wfirma_get_expenseGET /expenses/get/{id}
wfirma_list_paymentsGET /payments/find
wfirma_get_paymentGET /payments/get/{id}

Every company-scoped tool requires the internal companyId returned by wfirma_list_companies. A Polish NIP is not accepted as a company id.

Why read-only

The server intentionally contains no add, edit, delete, send, fiscalization, KSeF, or payment-mutation operation. The full list of excluded categories, reviewed against the official documentation at doc.wfirma.pl, is recorded in coverage-manifest.json. If you need writes, use wFirma's own tooling — not this server.

Setup

Credentials

wFirma API keys are created in your wFirma panel (Integrations → API). Required environment variables:

  • WFIRMA_ACCESS_KEY
  • WFIRMA_SECRET_KEY
  • WFIRMA_APP_KEY

See .env.example. Never commit real values.

Build
pnpm install
pnpm build      # → dist/index.js (self-contained esbuild bundle)
pnpm test       # all HTTP traffic is mocked; no live account needed
Claude Desktop / any stdio MCP client
{
  "mcpServers": {
    "wfirma": {
      "command": "node",
      "args": ["/absolute/path/to/wfirma-mcp/dist/index.js"],
      "env": {
        "WFIRMA_ACCESS_KEY": "your-access-key",
        "WFIRMA_SECRET_KEY": "your-secret-key",
        "WFIRMA_APP_KEY": "your-app-key"
      }
    }
  }
}
Claude Code / Cursor (scope: project)
claude mcp add wfirma -- node /absolute/path/to/wfirma-mcp/dist/index.js

Design notes

  • No runtime dependencies beyond the MCP SDK and zod. The client uses Node's stdlib https with a hard 20s timeout and a bounded response-size guard.
  • Fail-closed error taxonomy. Missing credentials, non-numeric company ids, oversized responses, and auth failures each raise a distinct wfirma_* error code instead of a generic failure.
  • No PII in logs. Tool parameters are never logged.
  • Coverage manifest. coverage-manifest.json maps every tool to its endpoint, risk class, and the test that proves it; a CI test enforces the manifest stays in sync with the source.

License

MIT

Questions fréquentes

Qu'est-ce que io.github.agente-dev/wfirma-mcp ?

Unofficial read-only MCP server for the wFirma API v2: invoices, contractors, expenses, payments.

Comment installer io.github.agente-dev/wfirma-mcp ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add wfirma-mcp -e 'WFIRMA_ACCESS_KEY=<your wfirma_access_key>' -e 'WFIRMA_SECRET_KEY=<your wfirma_secret_key>' -e 'WFIRMA_APP_KEY=<your wfirma_app_key>' -- npx -y wfirma-mcp@1.0.0. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour io.github.agente-dev/wfirma-mcp ?

Oui. Il attend WFIRMA_ACCESS_KEY, WFIRMA_SECRET_KEY, WFIRMA_APP_KEY, à renseigner dans sa configuration.

io.github.agente-dev/wfirma-mcp est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient io.github.agente-dev/wfirma-mcp ?

Il est publié par agente-dev. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.