Gebruik je eigen LLM (Infomaniak, lokaal, soeverein)
De handleiding AI-assistenten (MCP) laat zien hoe je een kant-en-klare assistent verbindt. Deze handleiding is voor developers die een niveau dieper willen gaan en zelf het model willen kiezen — bijvoorbeeld om alles op EU- of Zwitserse infrastructuur te houden, volledig offline te draaien, of simpelweg een model te gebruiken dat je organisatie als standaard hanteert.
Het kernidee: bij MCP zijn het model en de verbinding gescheiden zaken. De Peerdom MCP-server weet niet en geeft er niet om welke LLM je gebruikt. Jij brengt het model mee; Peerdom beantwoordt enkel zijn vragen.
Hoe de onderdelen samenkomen
Een model “spreekt” nooit MCP. Het geeft alleen intenties voor tool-aanroepen af — “Ik wil list_vacant_roles aanroepen.” De omringende runtime (de MCP-client) voert de MCP-handshake uit, roept de Peerdom-server aan en voert het resultaat terug naar het model. Er moeten dus twee dingen waar zijn:
- (A) Je runtime is een MCP-client — hij kan verbinding maken met een MCP-server met een aangepaste header.
- (B) Je model is goed in function/tool calling — zodat het de juiste tool en argumenten kiest.
┌─────────────────────────────┐
│ Your MCP client / runtime │ (LibreChat, Goose, Cline, Open WebUI, LM Studio …)
│ │
│ ├── model API ────────────┼──▶ Your LLM (Infomaniak, local, or any provider)
│ │ │
│ └── MCP + X-Api-Key ───────┼──▶ https://mcp.peerdom.org/mcp
└─────────────────────────────┘
De runtime is de enige component die met beide praat. Wissel het model vrij uit zonder iets aan de Peerdom-kant te veranderen, en omgekeerd.
Waarom Infomaniak als voorbeeld
Infomaniak is een Zwitserse provider met een OpenAI-compatibele LLM-API. Het is een goed uitgewerkt voorbeeld van een leverancier-onafhankelijke, soevereine modeloptie: data wordt in Zwitserland gehost onder de AVG en de Zwitserse DPA, en het biedt standaard tools/tool_choice function calling — precies wat MCP nodig heeft. Dezelfde stappen gelden voor elk OpenAI-compatibel endpoint (een lokale server, een andere EU-host of je eigen deployment).
Stap 1: Verkrijg een Infomaniak-modelendpoint
Maak in het Infomaniak AI Tools-product een modeldeployment aan en noteer drie dingen:
- Base URL —
https://api.infomaniak.com/2/ai/{PRODUCT_ID}/openai/v1 - API-token — je Infomaniak API-token
- Een model dat function calling ondersteunt — kies er een die in de catalogus is gemarkeerd met “Function call: Yes” (recente Qwen-, Mistral Small- of Gemma-instructmodellen zijn goede keuzes).
Stap 2: Verkrijg je Peerdom API-sleutel
Maak een sleutel aan in Instellingen > Mijn gegevens > API-sleutels (Organisatie-instellingen, Eigenaar/es-toegang vereist) — dezelfde sleutel die wordt beschreven in de handleiding AI-assistenten (MCP). Dit is wat de MCP-verbinding authenticeert.
Stap 3: Koppel beide aan je MCP-client
Configureer twee dingen in je runtime: de modelprovider (Infomaniak) en de MCP-server (Peerdom). Hier een uitgewerkt voorbeeld met LibreChat, dat aangepaste OpenAI-compatibele endpoints en MCP-servers in één configuratiebestand ondersteunt:
# librechat.yaml
endpoints:
custom:
- name: "Infomaniak"
apiKey: "${INFOMANIAK_API_TOKEN}"
baseURL: "https://api.infomaniak.com/2/ai/${INFOMANIAK_PRODUCT_ID}/openai/v1"
models:
default: ["mistral-small"] # elk model gemarkeerd met "Function call: Yes"
fetch: false
mcpServers:
peerdom:
type: streamable-http
url: "https://mcp.peerdom.org/mcp"
headers:
X-Api-Key: "${PEERDOM_API_KEY}"
Start een chat tegen het Infomaniak-endpoint en de Peerdom-tools zijn beschikbaar voor het model. Vraag “Welke rollen zijn vacant?” en het Zwitsers gehoste model redeneert over het antwoord dat de Peerdom-server teruggeeft.
https://mcp.peerdom.org/mcp) met je X-Api-Key.
Andere runtimes volgen hetzelfde tweedelige patroon — verwijs de modelinstelling naar de Infomaniak base URL en voeg het Peerdom MCP-serverblok toe uit de hoofdhandleiding:
- Goose, Cline, Continue — stel de modelprovider in op een aangepast OpenAI-compatibel endpoint en voeg dan de Peerdom MCP-server toe.
- Open WebUI — voeg Infomaniak toe als een OpenAI-compatibele verbinding; bereik MCP via HTTP (of via de MCPO-proxy).
- LM Studio — voor een volledig offline stack draai je een lokaal function-calling-model in plaats van Infomaniak, en houd je hetzelfde Peerdom MCP-blok aan.
Je eigen agent bouwen
Als je de agent zelf schrijft, is de modelaanroep gewoon OpenAI-compatibel — verwijs de SDK naar de base URL van Infomaniak en geef de Peerdom-tools (ontdekt via de MCP-server) door als tools:
from openai import OpenAI
client = OpenAI(
base_url="https://api.infomaniak.com/2/ai/{PRODUCT_ID}/openai/v1",
api_key="INFOMANIAK_API_TOKEN",
)
# `tools` zijn de Peerdom MCP-tools, opgehaald via een MCP-clientbibliotheek en
# omgezet naar OpenAI-functiedefinities; tool-aanroepen worden teruggestuurd
# naar https://mcp.peerdom.org/mcp met je X-Api-Key.
response = client.chat.completions.create(
model="mistral-small",
messages=[{"role": "user", "content": "Which roles are vacant in Marketing?"}],
tools=tools,
tool_choice="auto",
)
Een MCP-clientbibliotheek handelt de handshake en tool-dispatch af; jouw lus geeft enkel tool-aanroepen door tussen het model en de Peerdom-server.
Goed om te weten
- De kwaliteit van tool calling telt. Zwakkere modellen kunnen blijven loopen, toolnamen hallucineren of een benodigde aanroep overslaan. Als de resultaten onbetrouwbaar zijn, stap dan over op een sterker function-calling-model voordat je iets anders gaat debuggen.
- Dataresidentie is in jouw handen. Met Infomaniak of een lokaal model wordt er over je organisatiedata geredeneerd op EU-/Zwitserse of on-premises infrastructuur — alleen je API-sleutel bereikt Peerdom, en de MCP-server bewaart niets.
- Op dit moment alleen-lezen. Net als bij elke MCP-client kan de verbinding je organisatie lezen en samenvatten, maar niet wijzigen.
Gerelateerd
- AI-assistenten (MCP), verbind een kant-en-klare assistent in een minuut
- API en Webhooks, de REST API achter de MCP-server
- Overzicht integraties, alle beschikbare integraties in een oogopslag