NOVA MCP Server
NOVA MCP Server
Model Context Protocol-Server im Nur-Lese-Modus, der die Buchhaltungs- und
Geschäftsdaten der Demonstrationsgesellschaft NOVA (Dolibarr 23.0.3) für die schrittweise
Untersuchung durch einen KI-Assistenten über Cowork bereitstellt. Siehe spec-final.md
für die vollständige Spezifikation.
Architektur
Auth (
app/auth/) : JWT-Keycloak-Validierung (JWKS überPyJWKClient), Identitätsauflösung(iss, sub),CredentialStore(lokales YAML), das auf einen Dolibarr-API-Schlüssel pro Benutzer abbildet, Middlewarecredential_gate(403, wenn die Identität nicht zugeordnet ist).Dolibarr (
app/dolibarr/) : zentraler HTTP-Client (persistenter Verbindungspool, begrenzte Wiederholungsversuche, Decimal-Konvertierung) für die Dolibarr-REST-API (Drittanbieter, Rechnungen, Zahlungen, Bank).NOVA-Begleitmodul (
dolibarr-module/) : Der Kontenplan und das Hauptbuch werden von der Standard-Dolibarr-API nicht bereitgestellt – siehe den entsprechenden Abschnitt unten.Privacy Layer (
app/privacy/) : ersetzt jede Drittanbieter-Identität durch eine stabile technische Referenz (THIRDPARTY:<id>, usw.), die von den Diensten systematisch angewendet wird.Domain (
app/domain/) : deterministische Buchhaltungsregeln (EBITDA, Aging, Paginierung, Validierung), unabhängig von jedem Framework.Services (
app/services/) : Geschäftslogik, ein Modul pro Domäne.MCP (
app/mcp_server/) : MCP-Server (offizielles Anthropic-SDK), Tools pro Domäne, zentraler Dekorator für Fehlerübersetzung + Protokollierung (errors.py).
Related MCP server: ERPNext MCP Server
Warum ein Dolibarr-Begleitmodul?
Die Dolibarr-23.0-REST-API bietet keinen Endpoint für den Kontenplan oder das Hauptbuch (der
einzige native Einstiegspunkt, GET /accountancy/exportdata, schreibt eine Datei auf der
Serverseite, ohne sie in der HTTP-Antwort zurückzugeben). dolibarr-module/nova/ fügt zwei
Nur-Lese-Endpoints hinzu (GET /nova/accounts, GET /nova/bookkeeping) unter demselben
nativen REST-Mechanismus (DOLAPIKEY, Anwendungsberechtigungen). Dieses Modul wird separat
auf der Dolibarr-NOVA-Instanz installiert – siehe dolibarr-module/README.md.
Lokaler Start
uv sync --extra dev
cp .env.example .env # renseigner OIDC_ISSUER, CREDENTIAL_STORE_PATH, DOLIBARR_API_URL
cp credentials/credentials.example.yaml credentials/credentials.yaml # ne pas versionner
uv run uvicorn app.main:app --reloadGET /health/live,GET /health/ready: Healthchecks (nicht authentifiziert).POST /mcp: MCP-Endpoint (Streamable HTTP).
Tests
uv run pytest # suite complète (couverture terminal + coverage.xml)
uv run pytest --cov=app --cov-report=htmlKeine Datenbank: Die Tests verwenden einen Test-Double (tests/fixtures/) für
DolibarrClient, keine PostgreSQL/NullPool-Fixtures.
Docker
docker compose up --buildDer CredentialStore ist schreibgeschützt gemountet (./credentials:/app/credentials:ro) –
credentials/credentials.yaml niemals versionieren.
Voraussetzungen auf der Dolibarr-NOVA-Seite
dolibarr-module/nova/installieren (siehe dessen README).Für jeden Prüfer: einen dedizierten Dolibarr-Benutzer erstellen, dessen
DOLAPIKEYgenerieren, das Recht Kontenplan und Hauptbuch über die NOVA-API lesen gewähren und dann seinen Eintrag incredentials/credentials.yamlhinzufügen (mit demsubseines Keycloak-Tokens) – den MCP-Server neu starten, damit die Änderung wirksam wird (kein Hot-Reload, H2).Für
get_company: die Dolibarr-KonstanteAPI_LOGINS_ALLOWED_FOR_GET_COMPANYausfüllen (oder das Admin-Recht gewähren) für jeden verwendeten Login – andernfalls schlägt genau dieses Tool mit einem Upstream-403-Fehler fehl (erwartetes Verhalten).
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables e-commerce shop owners to query their business data using natural language through local AI models. Provides secure, privacy-focused access to sales reports, inventory management, customer analytics, and order data without sending sensitive information to external services.
- AlicenseNot gradedqualityDmaintenanceEnables comprehensive interaction with ERPNext systems through natural language, providing secure access to any document type (customers, items, invoices, etc.) with enterprise-grade permission controls and audit logging.MIT
- AlicenseCqualityCmaintenanceA complete MCP server for Dolibarr ERP/CRM, enabling AI assistants to perform billing, accounting, CRM, project, stock, and contract management.100328MIT
- AlicenseNot gradedqualityBmaintenanceA read-only MCP server for the NuMetric.work accounting/POS/ERP platform, exposing 38 tools to query live business data such as financial statements, invoices, taxes, projects, inventory, and documents. It enables AI assistants to answer from real accounting data without any create, edit, or delete capabilities.MIT
Related MCP Connectors
Open-source AI accounting skills verified by licensed accountants (tax, VAT, payroll).
Read-only NuMetric.work accounting & ERP data: statements, KPIs, reports, invoices, documents.
AI-native ERP MCP: ES/EU fiscal compliance (VeriFactu/TicketBAI/Facturae), invoicing, tax, banking
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/CATS70/dolibarr-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server