Skip to content

Yhdistä AI-avustaja (MCP)

MoneyLightsissa on sisäänrakennettu MCP palvelin, joten AI-avustaja — Claude Desktop, Claude Code, IDE-agentti, mikä tahansa, joka puhuu protokollaa — voi työskennellä organisaatiosi tietojen kanssa pyynnöstä.

Se on sama tunnistetieto kuin REST API:ssa: MCP-yhteys on API-avain, jolla on samat käyttöoikeudet, samat rajoitukset ja sama peruutuspainike. Ei ole mitään erillistä hallittavaa.

Päätepiste on https://api.moneylights.app/mcp (Streamable HTTP). Tyypillinen asiakaskonfiguraatio:

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

Claude Codella se on yksi komento:

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

Luo avain Asetukset → API-avaimet ja myönnä sille vain ne käyttöoikeudet, joita avustaja tarvitsee. Kaikki vaatii avaimen, mukaan lukien työkalujen listaaminen.

Työkalulista lasketaan avaimesi käyttöoikeuksista jokaisessa pyynnössä. Avaimella, jolla ei ole käyttöoikeutta, ei kerrota edes vastaavan työkalun olemassaolosta.

TyökaluKäyttöoikeusMitä se tekee
get_cashflow_overviewcashflow:readKuukausittaiset tulot/kulut/netto, avaussaldo, tärkeimmät kategoriat
get_analytics_overviewanalytics:readYhteenveto kategorian, asiakkaan, projektin ja henkilön mukaan
list_transactionstransactions:readTapahtumat, suodatettuna ja sivutettuna, jokaisella asiakirjat linkitettynä
list_documentsdocuments:readAsiakirjat ja niistä poimitut kentät, jokaisella liikkeet linkitettynä
get_document_filedocuments:readYhden asiakirjan alkuperäinen tiedosto — PDF tai kuva, jonka sovellus näyttää
get_pending_distributionprofitpulse:readOdottavat Turvallisesti käytettävissä -jakelut
list_vendorsvendors:readToimittajat, kokonaiskulut mukaan lukien
list_clientsclients:readAsiakkaat, kokonaisliikevaihto mukaan lukien
list_projectsprojects:readProjektit, kokonaismäärät ja tavoitteet mukaan lukien
upload_documentdocuments:writeArkistoi laskun tai kuitin asiakirjoihisi

Molemmat yhteenvedot lasketaan saman perustan mukaan ja sanovat niin: jokainen vastaus sisältää basis — ajanjakso, valuutat, käsitellyt tilit (kaikki näkyvät, ellei pyydetty id:n mukaan) ja miten siirtoja organisaation omien tilien välillä käsiteltiin. Oletuksena ne on poissuljettu tuloista ja kuluista, siirron kumpikin puoli erikseen, tarkalleen kuten sovelluksen Kassavirta-näkymä näyttää; anna includeInternalTransfers: true kummalle tahansa työkalulle saadaksesi raa’an pankkiliikkeen, jonka basis sitten merkitsee sellaiseksi ja jota ei voi verrata oletustulokseen. Vertaile lukuja kahden työkalun välillä vain, kun niiden basis täsmää. netCashResult on pankkiliikkeiden tulot miinus kulut — kassatulos, ei kirjanpidollinen voitto.

Molemmat listat sanovat sen, molemmilta puolilta, kuten sovellus näyttää. Jokaisessa tapahtumassa on linkedDocuments ja jokaisessa asiakirjassa on linkedTransactions; jokainen merkintä nimeää toisen puolen ja link:

  • confirmed — asiakirja on yhdistetty liikkeeseen, mikä lasketaan dokumentoiduksi.
  • suggested — yhdistäjä ehdottaa paritusta; kukaan ei ole vahvistanut sitä ja liike odottaa yhä asiakirjaansa. Merkinnässä on yhdistäjän score.

Avustaja osaa siis erottaa toisistaan tilanteet ei laskua, lasku odottaa vahvistusta ja jo arkistoitu — mutta ei voi muuttaa niistä mitään, koska tällä yhteydellä ei ole siihen työkalua.

Liike voi sisältää useita vahvistettuja asiakirjoja. Asiakirja linkittää korkeintaan yhteen liikkeeseen, joten useassa erässä maksettu lasku näyttää vain sen liikkeen, johon se on yhdistetty. Asiakirja, joka on yhä Processing, ei vielä sisällä linkkejä; None tarkoittaa, ettei linkkejä ole.

Käyttöoikeudet ovat edelleen voimassa: linkin kaukainen puoli kuvataan (toimittaja ja numero, tai kuvaus ja määrä) vain avaimelle, joka voi lukea myös sen resurssin. Yhdellä käyttöoikeudella saat toisen puolen id:n, linkin tyypin ja pisteet — riittää tietää, että liike on dokumentoitu, ei mitä lasku sanoo.

get_document_file ottaa documentId arvon list_documents-komennosta ja palauttaa tallennetun tiedoston itsessään — saman PDF:n tai kuvan, jonka sovellus avaa — upotettuna resurssina sen MIME-tyypin (application/pdf, image/jpeg, …) kanssa, asiakirjan id:n, tiedoston nimen ja koon vieressä — tiedostot jopa 10MB, sama yläraja kuin latauksessa. Näin avustaja tarkistaa, tuleeko ero laskusta, siitä, mitä siitä poimittiin, tai liikkeestä, johon se on yhdistetty, ilman mitään vientiä. Se on lukemista: mikään asiakirjassa, siitä poimituissa kentissä tai sen linkeissä ei muutu. Asiakirjaa, joka ei ole sinun, ei yksinkertaisesti löydy.

upload_document on ainoa työkalu, joka kirjoittaa, ja se on valittu tähän rooliin tarkoituksella: se vain lisää. Avustaja lähettää tiedoston (PDF tai kuva, jopa 10MB) tarkalleen yhdellä kahdesta tavalla — sen tavut (contentBase64, mukana fileName), tai url, josta MoneyLights lataa sen, kuten esisigneerattu linkki, jonka toinen palvelu on antanut (fileName on silloin valinnainen: ilman sitä tiedosto nimetään latauksen mukaan, ei koskaan linkin mukaan, joka saattaa sisältää sen salaisuuden) — ja MoneyLights käsittelee sen samalla putkistolla kuin lataus sovelluksessa — tallennettuna, sen kentät poimittuina (toimittaja, päivämäärä, numero, määrät) ja automaattisesti yhdistettynä pankkitapahtumiisi.

Saman tiedoston lähettäminen kahdesti ei koskaan monista tietojasi: uudelleenlataus tallennetaan merkittynä kopiona, joka osoittaa alkuperäiseen — riippumatta siitä, tuliko se tavuina tai URL:n kautta. Kaikki, mitä avustaja arkistoi, on näkyvissä — ja poistettavissa — sovelluksessa.

url:n on oltava https, se ei saa sisältää tunnistetietoja ja sen on osoitettava julkisesti saavutettavalle isännälle; uudelleenohjauksia seurataan vain muutaman kerran ja tarkistetaan jokaisessa siirtymässä, ja latauksen on oltava PDF, PNG tai JPEG, joka on korkeintaan 10MB ja saapuu 30 sekunnissa. Kieltäytymiset sanovat, mitä korjata ilman linkin toistamista, ja allekirjoitetun linkin salaista osaa ei koskaan kirjata lokiin.

Kaikki muut kirjoitustoiminnot (asiakkaiden luominen, tapahtumien uudelleenluokittelu, kuorien konfigurointi…) pysyvät sovelluksessa tarkoituksella: nämä toimet edellyttävät ihmisen vahvistavan ne.

Palvelin tarjoaa myös valmiita aloituspisteitä — kuukausittaisen kassavirran arvion, toimittajan kuluanalyysin, puuttuvien asiakirjojen siivouksen — lueteltuna vain kun avaimesi voi käyttää kaikkia tarvittavia työkaluja. Käytä niitä sellaisenaan tai muokkaa vapaasti.

  • Avustaja on sidottu avaimen mukaan, tarkistetaan jokaisessa pyynnössä. Alenna tai poista avaimen luoja ja avustaja supistuu tai lakkaa seuraavassa kutsussa.
  • Rahoitustiedot sisältävät vieraan kirjoittamaa tekstiä — maksureferenssejä, sähköpostitse lähetettyjä asiakirjoja. Työkalujen tulokset toimitetaan merkittyjen rajojen sisällä, joka käskee mallia käsittelemään niitä datana, ei koskaan ohjeina. Käsittele sitä lieventämisenä, ei takuuna, ja rajaa avaimet tiukasti.
  • Katkaistaksesi avustajan yhteyden, peruuta sen avain Asetuksissa → API-avaimet. Välitön, aina saatavilla.

Anna jokaiselle avustajalle oma avain — yksi asiakasta kohden tarkoittaa, että voit katkaista yhden ilman, että se häiritsee muita.