Byg sikrere agenter med Flowtly MCP dokumentation
Forbind assistenter, redskaber eller brugerdefinerede agenter til Flowtly med sikkerhedsmekanismer. MCP-serveren eksponerer 19 navnerum, 8 indbyggede agenter, 14 logiske oversigter og fuld læse-/skriveadgang til Flowtly-platformen via JSON-RPC 2.0.
Dokumentationsstatus
Sidst synkroniseret den 2026-05-15 14:13
Synkroniser regelmæssigt for at holde MCP-dokumentationen opdateret med det nyeste server-build.
Sektioner
Sådan holder du dig opdateret
- Kør synkroniseringskommandoen, når MCP-opdateringer er sendt.
- Genstart din agent-stak for at hente kapabilitetsændringer.
- Sæt bogmærke ved denne side for den nyeste Flowtly MCP-vejledning.
Hvad er inkluderet
- Auth, CORS og caching-regler for MCP-endpoints.
- 19 ressourcenavnerum med liste-/læse-/skrive-operationer.
- 8 indbyggede agenter med rollebaseret adgangskontrol.
- 14 logiske oversigter til beregnede analyser.
- JSON-RPC-payloads, kodeeksempler og integrationstips.
Hurtigstart
- Trin 1 — Hent en token: Naviger til Flowtly Workspace → Agent Tokens og generer en klienttoken.
-
Trin 2 — Initialisér: POST til
https://mcp.flowtly.eu/mcpmed{"jsonrpc":"2.0","id":"init-1","method":"initialize","params":{"protocolVersion":"2024-11-05"}} -
Trin 3 — Læs data: POST
{"jsonrpc":"2.0","id":"read-1","method":"resources/work-times/read","params":{"uri":"/api/work-times"}} -
Trin 4 — Skriv data: POST
{"jsonrpc":"2.0","id":"write-1","method":"resources/work-times/write","params":{"uri":"/api/work-times","contents":[{"text":"{\"date\":\"2026-04-03\",\"seconds\":3600,\"project\":\"/projects/1\",\"description\":\"Support\"}"}]}} -
Alle anmodninger bruger
Authorization: Bearer <YOUR_TOKEN>ogContent-Type: application/json.
Transport og auth
-
Base URL (prod):
https://mcp.flowtly.eu - Endpoints: POST /mcp (JSON-RPC entry), GET /health (liveness check)
-
Auth:
Authorization: Bearer <token>(foretrukket). Fallback: miljøvariablenFLOWTLY_API_KEY. Tokengenerering: workspace.flowtly.eu/user/agent-tokens -
Content-Type:
application/json. Body: JSON-RPC 2.0{"jsonrpc":"2.0","id":"...","method":"...","params":{...}} -
CORS: Legitimationsoplysninger tilladt kun fra
https://workspace.flowtly.eu. Kombiner aldrigAccess-Control-Allow-Origin: *medAccess-Control-Allow-Credentials: true. -
Upstream API:
https://api.flowtly.eu— MCP-serveren proxyer alle anmodninger til Flowtly REST API.
initialize
- Forhandler protokolversion, kapabiliteter og tilgængelige navnerum.
-
Anmodning:
{"jsonrpc":"2.0","id":"init-1","method":"initialize","params":{"protocolVersion":"2024-11-05"}} -
Svarkapabiliteter:
{"resources":{"list":true,"read":true,"write":true}} - Tilgængelige navnerum: work-times, projects, employees, vacations, holidays, responsibilities, cost-groups, budget-groups, budgets, logical, project-rates, transactions, transaction-attachments, suppliers, organization, candidates, resource-requests.
resources/list
-
Metode:
resources/{namespace}/list— standardnavnerum:work-timesnår udeladt. - Navnerum (19): work-times, projects, employees, vacations, holidays, responsibilities, cost-groups, budget-groups, budgets, logical, project-rates, transactions, transaction-attachments, suppliers, organization, candidates, resource-requests, candidate-notes, resource-request-candidates.
-
Returnerer et array af
{uri, name}-objekter, der beskriver tilgængelige ressourcer per navnerum. Se navnerumsoversigten nedenfor for detaljer. -
Eksempel:
{"jsonrpc":"2.0","id":"list-1","method":"resources/projects/list","params":{}}
resources/read
-
Metode:
resources/{namespace}/read— standardnavnerum:work-times. -
Parametre:
uri(påkrævet) — ressource-URI'en, f.eks./api/work-times. - allowPrefixes: aktiverer matches på tværs af navnerum. Enhver URI, der starter med et tilladt præfiks, accepteres.
-
{current}-løsning:
{current}i medarbejderforespørgselsparametre løses automatisk til/api/employees/me. - Automatiske standarder: work-times tilføjer date[after]/date[before] (de seneste 30 dage), employees tilføjer itemsPerPage=200, holidays/vacations tilføjer pagineringsstandarder.
- Berigelse: Responsibilities read følger op til 10 @id-links for at berige title/name-felter.
- Logisk navnerum: returnerer serverberegnede oversigter i stedet for rå API-payloads.
-
Svar:
{"jsonrpc":"2.0","id":"...","result":{"contents":[{"uri":"...","text":"{...}","mimeType":"application/json"}]}}
resources/write
-
Metode:
resources/{namespace}/write— kun ressourcer medallowWriteaccepterer skrivninger. -
Routing: POST til oprettelse, PATCH (med
application/merge-patch+json) når URI'en slutter med et ID. Tilsidesæt viaparams.contentType. -
Oprettelsesstier:
/api/.../createtvinger POST selv hvis et ID er til stede. -
IRI-konvention:
params.uribruger/api/...-stier, men enhedsreferencer inde i JSON-payloads skal bruge upstream-IRI'er (f.eks."project": "/projects/1", ikke"/api/projects/1"). - Skrivbare navnerum: work-times, holidays (holiday-requests), transactions, transaction-attachments, suppliers (contractors), budgets, budget-groups, candidates, candidate-notes, resource-requests, resource-request-candidates.
-
Logiske skrivehjælpere:
resources/logical/writeunderstøtter/logical/work-times/log(POST til /api/work-times),/logical/recruiting/resource-requests/update?id=<id>og/logical/recruiting/resource-request-candidates/update?id=<id>(PATCH).
Indbyggede agenter
-
EmployeeAgent (
employee): Daglige opgaver — log arbejdstid, tjek fravær, se opgaver. Adgang: enhver godkendt bruger (afgrænset af token/instans). -
ManagerAgent (
manager): Projekt-/teknisk lederstøtte — takster, bemanding, omkostninger, godkendelser. Kræver: rollen project_manager eller admin. -
ExecutiveAgent (
executive): Ledelsesoversigter — KPI'er, budgetter, sammendrag, godkendelser. Kræver: rollen admin, executive, director, vp eller c-level. -
HRManagerAgent (
hr): HR og fravær — feriesaldi, fraværshistorik, teamferier. Adgang: enhver godkendt bruger. -
AccountancyAgent (
accountancy): Finansforespørgsler — vis transaktioner, opsummer beløb. Viser aldrig vedhæftnings-URL'er. Adgang: enhver godkendt bruger. -
RecruiterAgent (
recruiter): Rekruttering — vis ledige stillinger, søg/opret kandidater, tilknyt til stillinger, tilføj noter. Kræver: rollen candidates_manager, admin eller recruiter. -
OnboardingAgent (
onboarding): Vejledning til nye brugere — opsætningshjælp, navigation, svar på "hvor finder jeg X". Adgang: enhver godkendt bruger. -
TechAgent (
tech): Teknisk opsætning — MCP/ChatGPT-legitimationsanmodninger. Genererer brugerspesifikke klientlegitimationsoplysninger efter admin-godkendelse. Adgang: åben for alle roller (vil blive strammet). -
Agentvalg: Brug
employeetil personlige opgaver;hrtil fravær/ferie;managertil bemanding/omkostninger;executivetil KPI'er;accountancytil økonomi;recruitertil kandidater;onboardingtil opsætning. - Adgangsmodel: Rollekontroller bruger Flowtly-roller/autoriteter/tilladelser. Begrænsede agenter afviser handlinger, når ingen påkrævet rolle matcher. Alle agenter bruger kun MCP API-redskabet — ingen eksterne tjenester.
Logisk navnerum — beregnede oversigter
-
Tidsregistreringsoversigter:
/logical/work-times/summary— aggregerede timer per medarbejder/projekt. Understøtterdate[after]/date[before](standard de seneste 7 dage). -
Medarbejderoversigt:
/logical/employees/summary— medarbejderantal, afdelinger og statusoversigt. -
Projektoversigt:
/logical/projects/summary— aktive projekter, faktureringstyper og kundedistribution. -
Medarbejder-tidsregistreringer:
/logical/employee-work-times/summary— per-medarbejder udnyttelsesfordeling. -
Projekttakster:
/logical/project-rates/summary— takstkort og faktureringstaksoversigt. -
Transaktioner:
/logical/transactions/summary— forbrugstotaler, kategorisering og tendenser. -
Projektrentabilitet:
/logical/project-profitability/summary— omsætning vs. omkostning per projekt. -
Budgetgrupper:
/logical/budget-groups/summary— budgetgruppefordeling og forbrugsstatus. -
Budgetter:
/logical/budgets/summary— individuel budgetudnyttelse og advarsler. -
Virksomhedsonboarding:
/logical/company-onboarding/status— fremgang i arbejdsområdeopsætning og afventende trin. -
Åbne stillinger:
/logical/recruiting/open-roles— ubesatte ressourceanmodninger og rekrutteringspipeline. -
Kandidater:
/logical/recruiting/candidates— kandidatpipelinestadiefordeling. -
Ferier:
/logical/holidays— aggregerede fraværsdata og teamtilgængelighed. -
Tidsregistreringslog (skriv):
/logical/work-times/log— POST opretter en tidsregistrering via /api/work-times.
Caching og performance
- Redis logisk cache: Valgfri cache til logiske læsninger. Kan dele Redis med hoved-API'et til invalideringsmønstre.
-
Miljøvariabler:
MCP_LOGICAL_CACHE_ENABLED(aktiveres automatisk, når Redis URL eksisterer),MCP_LOGICAL_CACHE_REDIS_URL(fallbacks: REDIS_URL, CACHE_REDIS_URL). -
Nøgleformat: Præfiks
mcp:logical:v1:— afgrænset af instans + principal, inkluderer normaliseret logisk URI. Konfigurér præfiks viaMCP_LOGICAL_CACHE_PREFIX. -
TTL: 86400 sekunder (24 timer). Konfigureres via
MCP_LOGICAL_CACHE_TTL_SECONDS.
Fejlhåndtering
-
Standard JSON-RPC-fejl:
{"jsonrpc":"2.0","id":"...","error":{"code":-32000,"message":"Upstream Flowtly API failed","data":{"status":502}}} - Almindelige fejlkoder: -32700 (parse-fejl), -32600 (ugyldig anmodning), -32601 (metode ikke fundet), -32000 (upstream API-fejl).
-
Feltet
data.statusafspejler HTTP-statuskoden fra den upstream Flowtly API, når den er tilgængelig.
Yderligere noter
-
allowPrefixes: Giver
resources/readmulighed for at acceptere URI'er, der starter med tilladte præfikser, og muliggør opslag på tværs af navnerum. -
OpenAPI-reference: Tilgængelig på
public/mcp/openapi.json(kopieres tildist/mcp/openapi.jsonved byggetidspunkt). -
LLM intent-kontrakter: Router- og managermønstre dokumenteret i
docs/llm-intent-architecture.md, implementeret ipackages/agent/src/intents/contract.ts. - Paginering: Standarder anvendes automatisk per navnerum. Tilsidesæt med eksplicitte forespørgselsparametre ved behov.
Navnerumreference — resources/list pr. navnerum
work-times
- Liste: /api/work-times (auto-sætter date[after]/date[before] for de seneste 30 dage), /api/employees/me
- Læsning: de samme URI'er — returnerer loggede timer med projekt, medarbejder, beskrivelse og sekunder
- Skrivning: POST /api/work-times (opret), PATCH /api/work-times/{id} (opdater). Payload: {date, seconds, project, description}
projects
- Liste: /api/projects, /api/projects?employee={current} (løses automatisk), /api/employees/me
- Læsning: returnerer projektmetadata, medlemmer, faktureringstype, kunde, valuta og datoer
employees og responsibilities
- employees Liste: /api/employees/me, /api/employees (itemsPerPage=200)
- responsibilities Liste: /api/responsibility-employees?employee={current}, /api/responsibilities, /api/responsibility-groups
- Læsning: responsibilities beriger @id-links (op til 10) med title/name-kontekst
vacations og holidays
- vacations: balance?employee={current}, holiday-days-limits (itemsPerPage=50), holidays (itemsPerPage=50)
- holidays: /api/holidays?employee={current} (itemsPerPage=200), /api/holiday-requests
- Skrivning: POST/PATCH /api/holiday-requests til håndtering af fraværsanmodninger
transactions og vedhæftninger
- transactions: /api/transactions (itemsPerPage=200&page=1), /api/bank-accounts
- transaction-attachments: /api/transaction-attachments, /api/transaction-attachments/create
- Skrivning: transactions (POST/PATCH), vedhæftninger (POST/PATCH, /create tvinger POST)
suppliers og cost-groups
- suppliers: /api/contractors (itemsPerPage=100&page=1)
- cost-groups: /api/cost-groups (itemsPerPage=200&page=1)
- Skrivning: /api/contractors (POST/PATCH)
budget-groups og budgets
- budget-groups: /api/budget-groups (skrivning tilladt, itemsPerPage=200&page=1)
- budgets: /api/budgets (skrivning tilladt, itemsPerPage=200&page=1)
- Skrivning: POST/PATCH for både budget-groups og budgets
project-rates
- Liste: /api/employees/{current}/project-rates (itemsPerPage=200, løser automatisk nuværende medarbejder)
- Logisk: /logical/project-rates/summary, /logical/project-profitability/summary
candidates og resource-requests
- candidates: /api/candidates (itemsPerPage=50&page=1), /api/candidates/search, /api/candidate-notes
- resource-requests: /api/resource-requests (itemsPerPage=50&page=1), /api/resource-request-candidates (itemsPerPage=50&page=1)
- Skrivning: candidates, candidate-notes, resource-requests, resource-request-candidates (POST/PATCH)
- Logiske skrivninger: /logical/recruiting/resource-requests/update?id=<id>, /logical/recruiting/resource-request-candidates/update?id=<id> (PATCH)
logical (14 endpoints)
- Kerne: /logical/work-times/summary, /logical/employees/summary, /logical/projects/summary
- Analyser: /logical/employee-work-times/summary, /logical/project-rates/summary, /logical/transactions/summary, /logical/project-profitability/summary
- Budgetter: /logical/budget-groups/summary, /logical/budgets/summary
- Rekruttering: /logical/company-onboarding/status, /logical/recruiting/open-roles, /logical/recruiting/candidates
- Andet: /logical/holidays, /logical/work-times/log (skrivehjælper)
organization
- Læsning: /api/organization — arbejdsområdeprofil, navn, indstillinger og abonnementsdetaljer