Anslut en AI-assistent (MCP)
MoneyLights har en inbyggd MCP server, så en AI-assistent — Claude Desktop, Claude Code, en IDE-agent, vad som helst som pratar protokollet — kan arbeta med din organisations data på begäran.
Det är samma autentisering som REST API: en MCP-anslutning är en API-nyckel, med samma omfattningar, samma begränsningar och samma återkalla-knapp. Det finns inget separat att hantera.
Anslutning
Section titled “Anslutning”Slutpunkten är https://api.moneylights.app/mcp (Streamable HTTP). En typisk
klientkonfiguration:
{ "mcpServers": { "moneylights": { "url": "https://api.moneylights.app/mcp", "headers": { "X-API-Key": "ml_sk_..." } } }}Med Claude Code är det en kommando:
claude mcp add --transport http moneylights https://api.moneylights.app/mcp \ --header "X-API-Key: ml_sk_..."Skapa nyckeln i Inställningar → API-nycklar och ge den endast de omfattningar som assistenten behöver. Allt kräver nyckeln, inklusive att lista verktygen.
Vad assistenten kan göra
Section titled “Vad assistenten kan göra”Verktygslistan beräknas utifrån dina nyckelns omfattningar, vid varje begäran. En nyckel utan en omfattning får aldrig ens veta att det motsvarande verktyget finns.
| Verktyg | Omfattning | Vad det gör |
|---|---|---|
get_cashflow_overview | cashflow:read | Månatlig inkomst/utgift/netto, öppningsbalans, toppkategorier |
get_analytics_overview | analytics:read | Sammanställningar per kategori, klient, projekt och person |
list_transactions | transactions:read | Transaktioner, filtrerade och paginerade, varje med de dokument som är kopplade till den |
list_documents | documents:read | Dokument och deras extraherade fält, varje med rörelser kopplade till den |
get_document_file | documents:read | Den ursprungliga filen av ett dokument — PDF:en eller bilden som appen visar |
get_pending_distribution | profitpulse:read | Utestående Safe-to-Spend-fördelningar |
list_vendors | vendors:read | Leverantörer, med total utgift |
list_clients | clients:read | Klienter, med total intäkt |
list_projects | projects:read | Projekt, med totalsummor och mål |
upload_document | documents:write | Laddar upp en faktura eller kvitto i dina dokument |
Båda översikterna beräknas på samma grund och säger så: varje svar bär en basis — period,
valutor, de konton som omfattas (alla synliga, om inte begärt med id), och hur överföringar mellan
organisationens egna konton har behandlats. Som standard är de exkluderade från inkomst och utgifter,
ben för ben, precis som appens Cashflow-vy visar dem; skicka includeInternalTransfers: true till
något av verktygen för den råa bankrörelsen, som basis sedan märker som sådan och som inte är
jämförbar med standarden. Jämför siffror över de två verktygen endast när deras basis matchar.
netCashResult är inkomst minus utgifter av bankrörelser — ett kassaflödesresultat, inte redovisningsvinst.
Vilket dokument hör ihop med vilken rörelse
Section titled “Vilket dokument hör ihop med vilken rörelse”Båda listorna säger det, från båda sidor, på det sätt som appen visar det. Varje transaktion bär
linkedDocuments och varje dokument bär linkedTransactions; varje post namnger den andra
sidan och en link:
confirmed— dokumentet är matchat till rörelsen, vilket räknas som dokumenterat.suggested— matcharen föreslår parningen; ingen har bekräftat det och rörelsen saknar fortfarande sitt dokument. Posten bär matcharensscore.
En assistent kan därför inte skilja ingen faktura från en faktura som väntar på att bekräftas från redan arkiverad — och kan inte ändra något av det, eftersom denna koppling inte har något verktyg för det.
En rörelse kan bära flera bekräftade dokument. Ett dokument länkar till högst en rörelse, så
en faktura som betalats i flera delar visar endast den rörelse den matchades mot. Ett dokument som fortfarande
Processing har inga länkar än; None betyder ingen.
Omfattningar gäller fortfarande: den avlägsna sidan av en länk beskrivs (leverantör och nummer, eller beskrivning och belopp) endast för en nyckel som också kan läsa den resursen. Med en omfattning får du den andra sidans id, typen av länk och poängen — tillräckligt för att veta att en rörelse är dokumenterad, inte vad fakturan säger.
Läsa en original
Section titled “Läsa en original”get_document_file tar en documentId från list_documents och returnerar den lagrade filen
själv — samma PDF eller bild som appen öppnar — som en inbäddad resurs med sin MIME-typ
(application/pdf, image/jpeg, …), bredvid dokumentets id, filnamn och storlek — filer upp
till 10MB, samma tak som en uppladdning. Det är
så en assistent kontrollerar om en skillnad kommer från fakturan, från vad som extraherades eller
från rörelsen den matchades mot, utan att exportera något. Det är en läsning: inget på dokumentet,
dess extraherade fält eller dess länkar ändras. Ett dokument som inte är ditt hittas helt enkelt
inte.
Arkivera dokument
Section titled “Arkivera dokument”upload_document är det enda verktyget som skriver, och det valdes för den
rollen medvetet: det lägger bara till. Assistenten skickar filen
(PDF eller bild, upp till 10MB) och MoneyLights kör den genom samma pipeline
som en uppladdning i appen — lagrad, dess fält extraherade (leverantör, datum,
nummer, belopp) och automatiskt matchad mot dina banktransaktioner.
Att skicka samma fil två gånger duplicerar aldrig dina data: den andra uppladdningen registreras som en flaggad duplikat som pekar på originalet. Allt som assistenten arkiverar är synligt — och kan raderas — i appen.
Varje annan skrivning (skapa klienter, omklassificera transaktioner, konfigurera kuvert…) stannar i appen avsiktligt: dessa åtgärder förutsätter en människa som bekräftar dem.
Kuraterade uppmaningar
Section titled “Kuraterade uppmaningar”Servern erbjuder också färdiga startpunkter — en månatlig cashflow översyn, en leverantörsutgiftsanalys, en städning av saknade dokument — listade endast när din nyckel kan köra varje verktyg de behöver. Använd dem som de är eller redigera fritt.
Säkerhet
Section titled “Säkerhet”- Assistenten är begränsad av nyckeln, kontrolleras på nytt vid varje begäran. Nedgradera eller ta bort nyckelns skapare och assistenten begränsas eller stoppas vid nästa anrop.
- Finansiella data innehåller text skriven av främlingar — betalningsreferenser, e-postade dokument. Verktygsresultat levereras inom en markerad gräns som säger till modellen att behandla dem som data, aldrig som instruktioner. Behandla det som en åtgärd, inte en garanti, och begränsa nycklar noggrant.
- För att koppla bort en assistent, återkalla dess nyckel i Inställningar → API-nycklar. Omedelbart, alltid tillgängligt.
Ge varje assistent sin egen nyckel — en per klient betyder att du kan ta bort en utan att störa resten.