MCP
Koppla en AI-agent till din arbetsplats kunskapsbas över Model Context Protocol med en API-nyckel.
Nordvec tillhandahåller Model Context Protocol (MCP), så en agent eller assistent som talar MCP kan upptäcka ditt workspaces operationer som verktyg och anropa dem direkt, utan ett OpenAPI-dokument att resonera kring.
Det finns två servrar:
| Server | URL | Autentisering | Vad den exponerar |
|---|---|---|---|
| Dokumentation | https://nordvec.com/api/mcp | ingen | Dessa guider och anslutningskatalogen, för en agent som integrerar med Nordvec |
| Kunskapsbas | https://nordvec.com/api/v1/mcp | API-nyckel | Ditt workspaces dokument, sökning och inmatning: samma operationer som REST API:t |
Båda körs i EU, på samma infrastruktur som resten av API:t.
Ansluta en klient
Peka en MCP-klient mot kunskapsbas-servern med din API-nyckel som bearer-token. De flesta klienter tar emot ett konfigurationsblock som detta:
{
"mcpServers": {
"nordvec": {
"url": "https://nordvec.com/api/v1/mcp",
"headers": {
"Authorization": "Bearer nv_your_api_key"
}
}
}
}Servern är tillståndslös Streamable HTTP: varje meddelande är en POST som bär en JSON-RPC-förfrågan, och svaret kommer tillbaka i svarskroppen. Det finns inga sessioner att upprätthålla och ingen serverinitierad ström, så ett GET på URL:en svarar 405, och ett POST vars Content-Type inte är application/json svarar 415 innan kroppen läses.
Endast en API-nyckel kan använda kunskapsbas-servern. En inloggad webbläsarsession nekas, och varje verktyg kräver samma nyckelomfång som motsvarande REST-operation, så en nyckel skapad för ett specifikt jobb kan utföra exakt det jobbet via MCP också.
Servern autentiserar med en statisk bearer-nyckel och erbjuder inte OAuth-upptäckt. En klient som låter dig ställa in rubriker (kodningsagenter, IDE-tillägg, MCP Inspector i rubrikläge) ansluter som visat ovan. En hostad klient som endast stöder OAuth-auktoriseringsflöde kan ännu inte ansluta.
En klient som skickar MCP-Protocol-Version-rubriken besvaras med den versionen när servern stöder den (2025-06-18 och 2024-11-05) och nekas med 400 när den inte gör det, så en versionskonflikt rapporteras vid första meddelandet istället för som ett felaktigt svar senare.
Verktyg
Verktygen härleds från REST API:t, ett verktyg per operation som en API-nyckel får anropa. Ett verktygs namn är operationens SDK-sökväg i snake case, där ett segment som upprepar det föregående utelämnas:
| REST-operation | SDK-sökväg | MCP-verktyg |
|---|---|---|
POST /documents/search | documents.search | documents_search |
GET /documents/{id} | documents.get | documents_get |
POST /documents/batch | documents.batchGet | documents_batch_get |
POST /documents/push | documentPush.push | document_push |
POST /documents/push/bulk | documentPush.pushBulk | document_push_bulk |
GET /documents/push/status | documentPush.pushStatus | document_push_status |
GET /quota/embedding | quota.embedding | quota_embedding |
tools/list är den auktoritativa katalogen: den visar endast de verktyg som dess omfång tillåter, och varje verktygs beskrivning anger vilket omfång som krävs. Ett verktygs inputSchema är operationens förfrågningschema och, när operationen returnerar ett objekt, är dess outputSchema svarschemat och resultaten innehåller structuredContent tillsammans med JSON-texten.
Ett anrop till ett verktyg som nyckelns omfång inte tillåter besvaras med ett verktygsfel som anger FORBIDDEN, samma avslag som REST-routen ger. På så sätt får en klient som har en cachad lista från en annan nyckel reda på varför, istället för att bara få veta att verktyget saknas.
Begränsningar och fel
Ett verktygsanrop drar från samma rate-limit-hink som motsvarande REST-operation, och alla andra meddelanden på slutpunkten delar en egen hink. X-RateLimit-*-rubrikerna, 429-svaret med dess Retry-After, och felkuvertet är desamma som i REST API:t, så en klient som redan hanterar dem för REST hanterar dem här också.
Ett misslyckat verktygsanrop returnerar ett MCP-verktygsresultat med isError: true vars text är REST-felkroppen (code, message, data). Valideringsfel har samma fieldErrors-form som REST API:t returnerar. Ett JSON-RPC-fel är reserverat för själva protokollet: en ofullständig kropp, en okänd metod eller ett serverfel.
Förfrågningskroppar är begränsade till 1 MB, samma gräns som för REST-rutterna.
Ett första utbyte
# Discover the tools your key can call
curl https://nordvec.com/api/v1/mcp \
-H "Authorization: Bearer $NORDVEC_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
# Search the workspace
curl https://nordvec.com/api/v1/mcp \
-H "Authorization: Bearer $NORDVEC_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"documents_search","arguments":{"query":"data retention policy"}}}'Dokumentationsservern
Dokumentationsservern på /api/mcp kräver ingen nyckel. Den erbjuder list_guides, get_guide, search_docs och list_connectors, så en agent som bygger en integration kan läsa dessa guider direkt. Den är rate-begränsad per IP precis som de andra publika slutpunkterna.