# Intégrer avec une IA

Claude Code, Cursor, Devin : toute la documentation leur est servie en texte brut, et un serveur MCP la cherche, la lit et l’essaie en mode test.

## La documentation en Markdown

Nos pages font une centaine de kilo-octets de HTML pour quelques kilo-octets de texte utile. Un agent qui en lit trois a rempli son contexte de balises. Les mêmes pages se servent donc en Markdown pur, à trois adresses :

- `/llms.txt` — le sommaire, avec un lien vers chaque page. C’est ce qu’un agent lit en premier.
- `/llms-full.txt` — toute la documentation en une seule requête, pour qui préfère tout avaler d’un coup.
- `/n-importe-quelle-page.md` — chaque page, seule. Par exemple `/api/paiements/creer.md` ou `/webhooks.md`.

Elles sont rendues depuis les mêmes sources que les pages que vous lisez : la spécification pour la référence, le texte des guides pour le reste. Elles ne peuvent pas être en retard.

```bash
curl https://docs.payiz.app/llms.txt
curl https://docs.payiz.app/api/paiements/creer.md
```

## Le serveur MCP

Mieux que de tout avaler : branchez `https://docs.payiz.app/mcp`. L’agent cherche ce dont il a besoin, lit la page entière, et peut essayer l’appel en mode test avant d’écrire une ligne.

Dans Claude Code, une ligne suffit — `--scope project` l’écrit dans le fichier que votre équipe partage :

```bash
claude mcp add --transport http payiz https://docs.payiz.app/mcp --scope project
```

Ou directement dans `.mcp.json`, à la racine de votre projet — Claude Code, Cursor et les autres lisent ce fichier :

```json
{
  "mcpServers": {
    "payiz": {
      "type": "http",
      "url": "https://docs.payiz.app/mcp"
    }
  }
}
```

Quatre outils :

- `chercher_dans_la_documentation` — la question en mots ordinaires, les pages qui répondent avec leur extrait.
- `lire_une_page` — une page entière, en Markdown.
- `lister_les_appels` — les 27 appels de l’API, leur méthode et leur chemin.
- `essayer_un_appel` — appelle vraiment l’API, en mode test : il lance même une demande sur le simulateur, et pose sa clé d’idempotence.

## Laisser l’agent essayer

Le dernier outil ne fait rien tant qu’on ne lui a pas confié de clé. Donnez-lui une [clé secrète de test](https://docs.payiz.app/cles) dans l’en-tête du serveur :

```bash
claude mcp add --transport http payiz https://docs.payiz.app/mcp \
  --header "Authorization: Bearer sk_test_votre_cle"
```

Ou dans le fichier :

```json
{
  "mcpServers": {
    "payiz": {
      "type": "http",
      "url": "https://docs.payiz.app/mcp",
      "headers": { "Authorization": "Bearer sk_test_votre_cle" }
    }
  }
}
```

**Une clé réelle est refusée**, quoi qu’on lui demande : cet outil ne prend que `sk_test_`. Un agent qui se trompe d’appel perd une minute, pas de l’argent.

## Et la spécification

Si votre outil sait lire de l’OpenAPI, [api.payiz.app/v1/openapi.json](https://api.payiz.app/v1/openapi.json) se lit sans clé et décrit les 27 appels avec tous leurs champs, et ses webhooks. C’est elle qui écrit la [référence](https://docs.payiz.app/api), et elle génère un client dans à peu près tous les langages.

