Het probleem
In een opdracht voor een administratiekantoor ontwikkelen wij een AI-automatiseringsstack voor financiële administratie: inkomende facturen via e-mail of webhook worden geparsed, gekoppeld aan leveranciers, voorzien van een boekingsvoorstel en afhankelijk van de policy automatisch geboekt of voorgelegd aan een operator. De boekhoudsoftware in kwestie is Yuki.
Bij het ontwerp liepen we tegen een terugkerende vraag aan: hoe geef je een AI-agent op een gecontroleerde manier toegang tot de Yuki API zonder dat elke agent zijn eigen integratie-laag bouwt? Yuki's SOAP API is krachtig, maar wordt traditioneel benaderd door vaste applicaties en niet door agents die zelf moeten kunnen kiezen welke tool ze inzetten.
De aanpak
We isoleerden de Yuki-integratielaag uit de bredere automatiseringsstack en bouwden hem opnieuw als zelfstandige Model Context Protocol (MCP) server. MCP is een open standaard van Anthropic waarmee AI-agents tools, resources en prompts via één gestandaardiseerd protocol kunnen aanroepen.
Het resultaat is een Node.js-pakket dat de complete Yuki SOAP API (authenticatie, sessies, XML-envelopes, veldverschillen tussen webservices) verbergt achter een set begrijpelijke tools per domein:
- Administraties:
get_administrations,get_administration_id,reload_keys - Relaties:
search_relations,upsert_contact - Facturen:
get_sales_invoices,process_sales_invoice,get_purchase_invoices,process_purchase_invoice,get_missing_invoices - Documenten:
upload_document,upload_document_from_path,search_documents,download_document - Backoffice:
get_workflow,get_outstanding_questions
Met multi-administratie ondersteuning: per administrationId kan een eigen API-sleutel worden geconfigureerd, en een reload_keys tool herlaadt nieuwe sleutels zonder herstart. Essentieel voor administratiekantoren met tientallen klantadministraties.
Wat het oplevert
Voor onze klant: de AI-agents in hun automatiseringsstack hebben nu een gestandaardiseerde, audit-baar interface naar Yuki. Geen losse integratiecode per agent, geen onbedoelde API-misbruiken: alleen tools die expliciet zijn vrijgegeven.
Voor de community: een herbruikbare bouwsteen voor iedereen die met Yuki en AI-agents wil werken, zoals accountantskantoren, finance-teams en automatiseringspartners. Het pakket is gepubliceerd onder de naam @codemill-solutions/yuki-mcp op npm en de broncode staat op GitHub.
Voor CodeMill: een vlaggenschip-project dat onze MCP-expertise zichtbaar maakt en als blueprint dient voor vergelijkbare integraties op andere accounting- en ERP-platformen.
Doorontwikkeling op basis van feedback
Open source publiceren betekent dat feedback snel binnenkomt. Een gebruiker vroeg om ondersteuning voor ontbrekende facturen: betalingen die Yuki in bankafschriften detecteert maar waarvoor nog geen inkoopfactuur is aangeleverd. Een belangrijk controlepunt voor accountants. We hebben dat opgepakt in versie 1.4.0 met de get_missing_invoices tool.
In combinatie met upload_document en process_purchase_invoice ontstaat een end-to-end workflow: agent signaleert ontbrekende facturen, vraagt of er een PDF beschikbaar is, uploadt deze en verwerkt de inkoopfactuur. Precies waar een MCP-laag waarde toevoegt: niet boekhouding volledig automatiseren zonder controle, maar terugkerende administratieve signalen sneller zichtbaar en opvolgbaar maken.
Stack en aanpak
| Laag | Keuze |
|---|---|
| Runtime | Node.js 20+, TypeScript |
| MCP | @modelcontextprotocol/sdk (officiële SDK) |
| HTTP | axios |
| XML | fast-xml-parser |
| Validatie | zod |
| Auth | Sessie-caching per Yuki API-sleutel |
| Distribution | npm (scoped public package), GitHub |
We hebben bewust geen klant- of bedrijfsspecifieke aannames in de server vastgelegd. Alle policy, fuzzy matching en mens-in-de-loop-logica leeft in de bredere automatiseringsstack die er bovenop draait. Dat houdt de MCP server schoon en breed inzetbaar.
Voor wie is dit interessant?
- Boekhoudkantoren die hun klantprocessen willen versnellen met AI
- Finance-teams die maandafsluitingen, debiteurenopvolging of leveranciersbeheer willen automatiseren
- Software-partners die bovenop Yuki bouwen en moderne AI-interfaces willen aanbieden
- Andere bedrijven met een SOAP-API die overwegen hoe ze die voor AI-agents toegankelijk maken. De architectuur is generaliseerbaar
Meer lezen
- Technische blogpost: Yuki MCP, AI agents koppelen aan je boekhouding
- GitHub: CodeMill-Solutions/yuki-mcp
- npm: @codemill-solutions/yuki-mcp
- Onze AI-diensten
Zelf met AI en boekhouding aan de slag?
Werk je met Yuki, ander accountingplatform of een eigen API en wil je verkennen welke processen zich lenen voor AI-automatisering? Plan een vrijblijvend gesprek via info@codemill.dev of het contactformulier. We denken graag mee over een veilige, praktische en toekomstbestendige aanpak.
