Skip to content

Ühenda AI assistent (MCP)

MoneyLights’il on sisseehitatud MCP server, nii et AI assistent — Claude Desktop, Claude Code, IDE agent, mis iganes, mis protokolli räägib — saab töötada sinu organisatsiooni andmetega soovi korral.

See on sama mandaat mis REST API-l: MCP ühendus on API võti, sama ulatusega, sama piirangute ja sama tühistamise nupuga. Ei ole midagi eraldi hallata.

Lõpp-punkt on https://api.moneylights.app/mcp (Streamable HTTP). Tüüpiline kliendi konfiguratsioon:

{
"mcpServers": {
"moneylights": {
"url": "https://api.moneylights.app/mcp",
"headers": { "X-API-Key": "ml_sk_..." }
}
}
}

Claude Code’i puhul on see üks käsk:

Terminal window
claude mcp add --transport http moneylights https://api.moneylights.app/mcp \
--header "X-API-Key: ml_sk_..."

Loo võti Seaded → API võtmed ja anna sellele ainult need ulatused, mida assistent vajab. Kõik vajab võtit, sealhulgas tööriistade loetlemine.

Tööriistade loend arvutatakse sinu võtme ulatustest, iga taotluse korral. Võti ilma ulatuseta ei saa kunagi isegi teada, et vastav tööriist eksisteerib.

TööriistUlatusMida see teeb
get_cashflow_overviewcashflow:readIgakuine sissetulek/kulu/neto, algsaldo, peamised kategooriad
get_analytics_overviewanalytics:readKoondandmed kategooriate, klientide, projektide ja isikute kaupa
list_transactionstransactions:readTehingud, filtreeritud ja leheküljelised, igaühel on seotud dokumendid
list_documentsdocuments:readDokumendid ja nende väljavõetud väljad, igaühel on seotud liikumised
get_document_filedocuments:readÜhe dokumendi originaalfail — PDF või pilt, mida rakendus näitab
get_pending_distributionprofitpulse:readOotel Ohutult kulutatavad jaotused
list_vendorsvendors:readTarnijad, koos kogukuludega
list_clientsclients:readKliendid, koos kogutuludega
list_projectsprojects:readProjektid, koos kokkuvõtete ja sihtidega
upload_documentdocuments:writeArhiveerib arve või kviitungi sinu dokumentide hulka

Mõlemad ülevaated arvutatakse sama aluse pealt ja ütlevad seda: iga vastus sisaldab basis — periood, valuutad, kaetud kontod (iga nähtav, välja arvatud juhul, kui küsitakse id järgi), ja kuidas ülekandeid organisatsiooni enda kontode vahel käsitleti. Vaikimisi on need välja jäetud sissetulekust ja kuludest, ülekande kumbki pool eraldi, täpselt nagu rakenduse Rahavoogude vaade neid näitab; edasta includeInternalTransfers: true kummalegi tööriistale toore pangaliikumise jaoks, mille basis siis selliseks märgib ja mis ei ole vaikimisi tulemusega võrreldav. Võrdle numbreid kahe tööriista vahel ainult siis, kui nende basis ühtib. netCashResult on sissetulek miinus kulud pangaliikumistest — rahaline tulemus, mitte raamatupidamislik kasum.

Milline dokument käib millise liikumisega

Section titled “Milline dokument käib millise liikumisega”

Mõlemad loendid ütlevad seda, mõlemalt poolt, nagu rakendus seda näitab. Iga tehing kannab linkedDocuments ja iga dokument kannab linkedTransactions; iga kirje nimetab teise poole ja link:

  • confirmed — dokument on liikumisega seotud, mis loetakse dokumenteerituks.
  • suggested — sobitaja pakub paaritamist; keegi ei ole seda kinnitanud ja liikumisel on endiselt puudu selle dokument. Kirje kannab sobitaja score.

Seega oskab assistent eristada olukordi arvet pole, arve ootab kinnitamist ja juba arhiveeritud — kuid ei saa neist midagi muuta, sest sellel ühendusel ei ole selleks tööriista.

Liikumisel võib olla mitu kinnitatud dokumenti. Dokument on seotud maksimaalselt ühe liikumisega, seega arve, mis on makstud mitmes osas, näitab ainult liikumist, millega see oli seotud. Dokument, mis on veel Processing, ei oma linke veel; None tähendab, et linke ei ole.

Ulatused kehtivad endiselt: lingi kaugel poolel on kirjeldatud (tarnija ja number, või kirjeldus ja summa) ainult võtme jaoks, mis saab ka seda ressurssi lugeda. Ühe ulatusega saad teise poole id, lingi tüübi ja skoori — piisavalt, et teada, et liikumine on dokumenteeritud, mitte seda, mida arve ütleb.

get_document_file võtab documentId list_documents-ist ja tagastab salvestatud faili ise — sama PDF või pilt, mille rakendus avab — kui manustatud resursi koos selle MIME tüübiga (application/pdf, image/jpeg, …), dokumenti id, faili nime ja suurusega — failid kuni 10MB, sama piirang nagu üleslaadimisel. Nii kontrollib assistent, kas erinevus tuleneb arvest, sellest, mis on väljavõetud või liikumisest, millega see oli seotud, ilma midagi eksportimata. See on lugemine: dokument, selle väljavõetud väljad või selle lingid ei muutu. Dokument, mis ei ole sinu, ei leidu lihtsalt.

upload_document on ainus tööriist, mis kirjutab, ja see valiti selle rolli jaoks teadlikult: see ainult lisab. Assistent saadab faili (PDF või pilt, kuni 10MB) täpselt ühel kahest viisis — selle baitide (contentBase64, koos fileName), või url, mille MoneyLights allalaadib, näiteks eelnevalt allkirjastatud link, mille teine teenus andis (fileName on siis valikuline: ilma selleta nimetatakse fail allalaadimise järgi, mitte kunagi lingi järgi, mis võib oma saladust kanda) — ja MoneyLights käitab selle sama toru kaudu nagu rakenduses üleslaadimine — salvestatud, selle väljad on väljavõetud (tarnija, kuupäev, number, summad) ja automaatselt sobitatud sinu pangatehingutega.

Sama faili saatmine kaks korda ei dubleeri sinu andmeid: uuesti üleslaadimine registreeritakse kui lipuga dubleerimine, mis osutab originaalile — olgu see siis saadud baitidena või URL-ina. Kõik, mida assistent arhiveerib, on nähtav — ja kustutatav — rakenduses.

url peab olema https, ei tohi sisaldada mandaate ja peab osutama avalikult juurdepääsetavale hostile; ümbersuunamisi järgitakse ainult paar korda ja kontrollitakse iga hüppe juures, ning allalaadimine peab olema PDF, PNG või JPEG, mille suurus on maksimaalselt 10MB ja mis saabub 30 sekundi jooksul. Keeldumised ütlevad, mida parandada, ilma et linki kordaks, ja allkirjastatud lingi salajane osa ei logita kunagi.

Iga teine kirjutamine (kliendi loomine, tehingute ümberklassifitseerimine, ümbrike seadistamine…) jääb rakendusse teadlikult: need toimingud eeldavad inimese kinnitust.

Server pakub ka valmis aluspunkte — igakuine rahavoogude ülevaade, tarnija kulude analüüs, puuduolevate dokumentide puhastus — loetletud ainult siis, kui sinu võti suudab käitada kõiki tööriistu, mida nad vajavad. Kasuta neid sellisena või muuda vabalt.

  • Assistent on piiratud võtmega, kontrollitakse iga taotluse korral. Alanda või eemalda võtme looja ja assistent kitsendab või peatab järgmise kõne korral.
  • Finantsandmed sisaldavad võõraste kirjutatud teksti — makseviited, e-kirjaga saadetud dokumendid. Tööriista tulemused edastatakse märgitud piiri sees, öeldes mudelile, et neid tuleb käsitleda andmetena, mitte kunagi juhistena. Käsitle seda kui leevendust, mitte garantiid, ja piira võtmeid rangelt.
  • Assistentide lahtiühendamiseks tühista nende võti Seaded → API võtmed. Kohene, alati saadaval.

Anna igale assistendile oma võti — üks klientide kohta tähendab, et saad ühe katkestada, ilma et see segaks ülejäänud.