> ## Documentation Index
> Fetch the complete documentation index at: https://docs.otbstudio.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Serveur MCP pour les données des entreprises belges

> Connectez Claude, Claude Code, Cursor ou ChatGPT au registre belge des entreprises avec le serveur MCP d'OTB Studio : sept outils pour la recherche, les profils, l'actionnariat, les comptes annuels et les administrateurs.

Le serveur MCP permet à un agent de répondre à des questions sur les entreprises belges à partir du registre, sans client API ni couche d'outils à développer.

## Ajoutez-le à votre client

**Claude**

1. Dans Claude, ouvrez **Paramètres → Connecteurs → Ajouter un connecteur personnalisé**.
2. Saisissez `https://mcp.otbstudio.ai/mcp`.
3. Connectez-vous avec votre compte OTB Studio. Une formule active est nécessaire.

Aucune clé à copier : le connecteur appartient à votre organisation, et vous le révoquez dans le tableau de bord comme une clé.

**Claude Code**

```bash theme={null}
claude mcp add --transport http otb-studio https://mcp.otbstudio.ai/mcp \
  --header "Authorization: Bearer $OTB_KEY"
```

**Cursor**

[Ajouter à Cursor](cursor://anysphere.cursor-deeplink/mcp/install?name=otb-studio\&config=eyJ1cmwiOiJodHRwczovL21jcC5vdGJzdHVkaW8uYWkvbWNwIiwiaGVhZGVycyI6eyJBdXRob3JpemF0aW9uIjoiQmVhcmVyICR7ZW52Ok9UQl9LRVl9In19), avec votre clé dans la variable d'environnement `OTB_KEY`. Ou ajoutez le même serveur à `.cursor/mcp.json` :

```json theme={null}
{
  "mcpServers": {
    "otb-studio": {
      "url": "https://mcp.otbstudio.ai/mcp",
      "headers": { "Authorization": "Bearer ${env:OTB_KEY}" }
    }
  }
}
```

**VS Code**

Ajoutez-le à `.vscode/mcp.json`. VS Code demande la clé une fois et la conserve comme secret :

```json theme={null}
{
  "inputs": [
    { "type": "promptString", "id": "otb-key", "description": "OTB Studio API key", "password": true }
  ],
  "servers": {
    "otb-studio": {
      "type": "http",
      "url": "https://mcp.otbstudio.ai/mcp",
      "headers": { "Authorization": "Bearer ${input:otb-key}" }
    }
  }
}
```

**Codex**

Avec votre clé dans la variable d'environnement `OTB_KEY` :

```bash theme={null}
codex mcp add otb-studio --url https://mcp.otbstudio.ai/mcp --bearer-token-env-var OTB_KEY
```

**Autres agents**

Tout client qui prend en charge MCP sur HTTP avec un en-tête de requête :

```json theme={null}
{
  "mcpServers": {
    "otb-studio": {
      "type": "http",
      "url": "https://mcp.otbstudio.ai/mcp",
      "headers": { "Authorization": "Bearer otb_live_…" }
    }
  }
}
```

Essayez ensuite : *« Qui sont les administrateurs de \[une entreprise], et à qui appartient-elle ? »* ou *« Montrez les capitaux propres et le résultat de \[une entreprise] sur les cinq dernières années. »*

## Outils

| Outil | Paramètres | Renvoie |
| - | - | - |
| `search_companies` | `query` (texte, dénomination en néerlandais ou en français), `limit` (1 à 25, 10 par défaut) | Résultats classés : numéro d'entreprise, nom trouvé, ETP, code de statut |
| `get_company` | `enterprise_number` (toute forme usuelle : `BE0712345630`, `0712.345.630`, `0712345630`) | Un profil : dénominations, adresse, activités, codes, chiffres clés, indicateurs de disponibilité |
| `get_company_ownership` | `enterprise_number` | Qui détient une participation dans l'entreprise, et les participations qu'elle détient dans d'autres |
| `get_company_financials` | `enterprise_number`, `years` (1 à 20, 10 par défaut), `detail` (postes de flux de trésorerie et de bilan) | Les chiffres déposés, une ligne par exercice |
| `get_company_people` | `enterprise_number`, `limit` (1 à 200, 50 par défaut) | Administrateurs et autres mandats, les mandats en cours d'abord |
| `search`, `fetch` | `query` ; `id` | La même recherche et le même profil, au format qu'exigent ChatGPT et deep research. Préférez les outils nommés lorsque le client vous laisse le choix |

Le parcours habituel est `search_companies`, puis `get_company`, puis l'outil d'actionnariat, de comptes annuels ou de personnes si la question l'exige. La recherche classe les résultats selon la correspondance du nom *et* la taille de l'entreprise : un nom connu renvoie donc d'abord la société d'exploitation, et non une coquille d'une seule personne qui porte le même mot dans sa dénomination. Une entreprise a une dénomination légale, commerciale, néerlandaise et française ; c'est celle qui a correspondu qui est renvoyée.

Les descriptions des outils indiquent au modèle ce qu'il ne peut pas déduire d'un schéma : un nom doit d'abord devenir un numéro, deux champs sont des codes sans libellé, et les chiffres proviennent d'un seul dépôt dont la date de clôture n'est souvent pas le 31 décembre. Voir [Bien lire les données](/fr/reading-the-data.md).

## Connexion

| | |
| - | - |
| Endpoint | `POST https://mcp.otbstudio.ai/mcp` |
| Transport | Streamable HTTP, sans état : pas de session, pas de `Mcp-Session-Id` |
| Authentification | `Authorization: Bearer otb_live_…`, ou connexion OAuth depuis Claude |
| Service | Le même service et les mêmes données que l'API REST |

## Dites à votre agent quand l'utiliser

Un agent de code utilise un serveur qu'il connaît. Collez ceci dans `AGENTS.md`, `CLAUDE.md` ou `.cursor/rules` :

```markdown theme={null}
## Belgian company data

For any question about a Belgian company (KBO/BCE enterprise number, directors,
shareholders, filed annual accounts), use the `otb-studio` MCP server. Find the
enterprise number with `search_companies` first, then call `get_company`,
`get_company_people`, `get_company_ownership` or `get_company_financials`.
REST API and field reference: https://docs.otbstudio.ai/llms.txt
```

Pour qu'un agent cherche aussi dans cette documentation, ajoutez `https://docs.otbstudio.ai/mcp`. Ce serveur ne cherche que dans la documentation ; les données des entreprises sont sur `https://mcp.otbstudio.ai/mcp`.

## Erreurs et limites

> [!NOTE]
>
> **Une recherche sans résultat est un résultat normal accompagné d'une phrase, pas une erreur.** Un nom qui ne correspond à rien, ou un numéro d'entreprise que personne ne porte, renvoie un résultat d'outil avec une `note` qui explique ce qui s'est passé et quoi essayer à la place. Un modèle peut agir sur une phrase ; il ne peut rien faire d'un `404`. Il en va de même pour un solde de crédits vide : un résultat normal dont la `note` invite à ajouter des crédits.

Deux échecs arrivent sous forme de statut HTTP, avant l'exécution de tout outil, et c'est votre client qui les gère : `401` pour une clé absente ou refusée (avec un en-tête `WWW-Authenticate`), et `429 rate_limited` avec `Retry-After` lorsque l'organisation dépasse sa [limite de débit](/fr/limits.md). Chaque requête MCP compte dans cette limite, `tools/list` compris. Un appel qui ne peut pas aboutir dans les 15 secondes revient sous forme d'erreur d'outil invitant à réessayer.

Les réponses MCP n'indiquent pas leur coût en crédits. La consommation figure dans le tableau de bord.

## Vérifier à la main

```bash theme={null}
curl -s -X POST https://mcp.otbstudio.ai/mcp \
  -H "Authorization: Bearer $OTB_KEY" \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

# The answer arrives as one text/event-stream message. Strip the
# "data: " prefix before parsing it.
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.