Donnez Ă  votre agent IA l'Ă©dition de documents – en moins de 60 secondes

AgentDoc est un serveur Model Context Protocol (MCP) public. Tout agent LLM qui parle MCP – Gemini, Claude, GPT ou le vĂŽtre – peut se connecter, s'authentifier et utiliser une API d'Ă©dition de documents typĂ©e complĂšte : lire, Ă©crire, mettre en forme, naviguer, exporter des PDF. Aucun SDK Ă  intĂ©grer, aucun schĂ©ma Ă  maintenir de votre cĂŽtĂ©, aucun humain dans la boucle.

Cette page est le parcours d'intégration canonique pour les agents et les personnes qui les exécutent. Si vous (ou votre modÚle) souhaitez disposer d'un éditeur de documents fonctionnel sous forme d'outil, voici tout ce dont vous avez besoin.

Point de terminaison MCP

https://agent-doc-edit.com/mcp/sse

Model Context Protocol standard via Server-Sent Events. Authentification par jeton bearer JWT (voir Démarrage rapide ci-dessous). Budget de jetons gratuit par compte ; aucune carte bancaire requise.

Démarrage rapide (un seul appel HTTP)

Enregistrez un compte d'agent isolĂ© et recevez sa clĂ© API en une seule requĂȘte. Aucun navigateur, aucun e-mail, aucun humain dans la boucle. Chaque agent enregistrĂ© est son propre utilisateur avec sa propre portĂ©e documentaire – les diffĂ©rents agents ne voient jamais les documents les uns des autres.

curl -X POST https://agent-doc-edit.com/api/agents/register \
  -H "Content-Type: application/json" \
  -d '{"name": "my-research-agent"}'

# Response
# {
#   "user_id":        "...",
#   "username":       "agent_AbCdEfGh",
#   "name":           "my-research-agent",
#   "api_key":        "ak_...",          <-- shown ONLY here, store it
#   "api_key_prefix": "ak_AbCdEfGh",
#   "created_at":     "2026-04-25T..."
# }

C'est tout. Utilisez la api_key comme jeton bearer auprĂšs de /mcp/sse et l'agent dispose de 35 outils typĂ©s pour lire, Ă©crire, mettre en forme, paginer et exporter des documents – entiĂšrement limitĂ©s Ă  son propre compte.

Deux façons de s'authentifier

Option A – L'agent s'enregistre lui-mĂȘme (recommandĂ© pour les workflows autonomes)

Utilisez POST /api/agents/register comme indiqué ci-dessus. L'agent obtient son propre compte utilisateur et son propre espace de noms documentaire. Les différents agents n'entrent jamais en collision. Limite de débit : 5 enregistrements par heure et par IP. C'est le bon parcours pour les pipelines de lettres, les traitements par lots, les tùches planifiées, les workflows multi-agents.

Option B – Utilisez votre propre compte humain (pour « donner l'Ă©dition de documents Ă  mon propre assistant »)

Ouvrez /app, connectez-vous, barre latĂ©rale → « API Keys for Agents » → « + Create New Key ». La clĂ© est affichĂ©e une seule fois. Utilisez-la comme jeton bearer. L'agent partage votre compte, vos documents et l'Ă©tat de votre document actif. Utile lorsque vous voulez qu'un agent copilote opĂšre Ă  vos cĂŽtĂ©s sur un mĂȘme corpus.

Ce qui est facturé (et ce qui ne l'est pas)

Les agents apportent leur propre LLM. Vous payez votre fournisseur de modĂšle pour les jetons de raisonnement. Nous ne les voyons pas, ne les facturons pas, ne les limitons pas. Notre service hĂ©berge le serveur MCP, le stockage des documents et le pipeline de rendu. La colonne token_limit sur les comptes d'agent est fixĂ©e Ă  0 comme ceinture de sĂ©curitĂ© dĂ©fensive : si un futur chemin de code tentait un jour d'exĂ©cuter notre agent Gemini interne sur une authentification de compte d'agent, il refuserait – les agents restent strictement sur le chemin des outils MCP.

Important : ceci est autonome, pas collaboratif

Ce parcours est conçu pour les workflows d'agents autonomes – votre agent raisonne avec son propre LLM, appelle directement nos outils MCP, Ă©dite des documents sur son propre compte et exporte un rĂ©sultat. La mĂȘme surface d'outils Ă©prouvĂ©e que nos agents vocaux et textuels utilisent en production alimente votre agent – mais votre agent ne parle jamais au nĂŽtre. Il n'y a pas de saut IA-Ă -IA, pas d'appel LLM interne en votre nom, pas de session partagĂ©e avec notre Ă©diteur intĂ©grĂ© au navigateur.

Si vous souhaitez qu'un humain et notre agent vocal/textuel coĂ©ditent en direct, utilisez directement /app – c'est un parcours diffĂ©rent. Si vous voulez que votre propre agent pilote l'Ă©diteur sans humain, le point de terminaison MCP dĂ©crit ici est la bonne surface.

Se connecter depuis n'importe quel client MCP

Python (client mcp / Anthropic / Google ADK)

from mcp.client.sse import sse_client
from mcp import ClientSession
import json

AGENTDOC_TOKEN = "ak_..."  # from POST /api/agents/register

async def edit_document():
    headers = {"Authorization": f"Bearer {AGENTDOC_TOKEN}"}
    async with sse_client("https://agent-doc-edit.com/mcp/sse",
                          headers=headers) as (read, write):
        async with ClientSession(read, write) as session:
            await session.initialize()
            # Workflow T (~35 tools) is applied automatically. Token is
            # injected from the Authorization header – do NOT pass `token`
            # in tool arguments.
            tools = await session.list_tools()

            # Create a document
            res = await session.call_tool("create_document",
                                          {"title": "My Report"})
            payload = json.loads(res.content[0].text)
            doc_id = payload["doc_id"]   # structured field, no regex

            # Insert content
            await session.call_tool("insert_string", {
                "doc_id": doc_id,
                "text":   "# Hello\n\nFirst paragraph.",
                "index":  0,
            })

            # Trigger PDF; response includes a self-describing fetch URL
            res = await session.call_tool("trigger_pdf_download",
                                          {"doc_id": doc_id})
            pdf_meta = json.loads(res.content[0].text)
            print(pdf_meta["pdf_url"])  # → "/api/doc//pdf"

TypeScript (SDK Anthropic)

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js";

const transport = new SSEClientTransport(
  new URL("https://agent-doc-edit.com/mcp/sse"),
  { requestInit: { headers: { Authorization: `Bearer ${TOKEN}` } } }
);
const client = new Client({ name: "my-agent", version: "1.0" }, { capabilities: {} });
await client.connect(transport);

const tools = await client.listTools();
const result = await client.callTool({
  name: "insert_string",
  arguments: { text: "Hello from my agent.", index: 0 }
});

curl (exploration brute)

curl -N -H "Authorization: Bearer $TOKEN" \
     -H "Accept: text/event-stream" \
     https://agent-doc-edit.com/mcp/sse

Catalogue d'outils – le Workflow T est appliquĂ© automatiquement

Les agents externes (c.-Ă -d. les requĂȘtes authentifiĂ©es avec une clĂ© API ak_*) sont automatiquement restreints Ă  la surface d'outils Workflow T – le dĂ©faut de production optimal au sens de Pareto que nos propres agents vocaux et textuels utilisent. Vous n'appliquez pas ce filtre ; le serveur MCP l'applique cĂŽtĂ© serveur Ă  la fois sur tools/list et tools/call. Cela vous donne le sous-ensemble organisĂ© d'environ 35 outils (primitives typĂ©es + macros + retour d'observation sur les dĂ©calages d'index), supprime le bloc-notes et les outils d'intention FSM qui n'ont pas leur place dans T, et exclut les variantes atomiques « Ă©clatĂ©es » utilisĂ©es uniquement par notre benchmark de surcharge d'outils. Chaque outil possĂšde un schĂ©ma JSON pour ses arguments et renvoie une rĂ©ponse structurĂ©e avec des marqueurs explicites de succĂšs/erreur ; les opĂ©rations qui dĂ©calent les index incluent un retour d'observation ("observation": "INDEX SHIFT – re-read before next mutation") afin que l'agent reste ancrĂ© d'un tour Ă  l'autre.

get_document_context
Renvoie le Markdown brut + le HTML rendu en un seul appel. Outil de lecture principal.
find
Recherche par regex. Renvoie toutes les correspondances avec les index [début, fin) et un contexte de 150 caractÚres.
insert_string / delete_substring
Mutations de texte basĂ©es sur l'index. Variantes en-tĂȘte/pied de page pour les zones isolĂ©es.
replace_substring
Suppression + insertion atomique. Évite la dĂ©rive d'index entre deux appels distincts.
format_text
15 couleurs, 12 polices, 7 tailles, gras/italique/souligné/barré/indice/exposant, alignement, retrait, liens.
format_table
Style/couleur/épaisseur de bordure, arriÚre-plans, alignement, largeurs de colonnes, marges intérieures, rayures.
macro_replace_all / macro_format_all_matches
Opérations groupées atomiques. Traite les correspondances dans l'ordre inverse des index pour éviter la dérive.
insert_page_break / delete_page_break / find_page_breaks
Primitives de saut de page – marqueurs DOM invisibles, pas des sous-chaünes de caractùres.
generate_table_of_contents
Injecte automatiquement une table des matiÚres hyperliée à un index donné en fonction de la structure de titres existante.
create_document / rename_document / set_active_document / list_documents
Gestion des documents. La session de l'agent est routée automatiquement vers le document actif.
navigate_to_page / set_page_layout
Navigation entre les pages, ajustement des marges et de la taille de page.
trigger_pdf_download
Émet un Ă©vĂ©nement d'export PDF que l'utilisateur (ou un agent en aval) peut rĂ©cupĂ©rer.

Initialiser un document Ă  partir d'un DOCX existant

La surface d'outils MCP permet Ă  votre agent de construire des documents Ă  partir de zĂ©ro. Pour les workflows qui partent d'un fichier Word prĂ©-rĂ©digĂ© – modĂšles Ă  en-tĂȘte d'entreprise, texte standard de contrat, brouillon entrant Ă  rĂ©viser – un point de terminaison HTTP supplĂ©mentaire en un seul appel accepte les tĂ©lĂ©versements de fichiers .docx, crĂ©e un nouveau Document sur le compte de l'agent et le bascule en actif afin que le prochain appel MCP atterrisse sur le contenu importĂ© :

# Upload a .docx; response is the new {id, title, ...}
curl -X POST https://agent-doc-edit.com/api/docs/import/docx \
  -H "Authorization: Bearer $API_KEY" \
  -F "[email protected]" \
  -F "title=Q3 Customer Letter"

Les sauts de page, les hyperliens, les en-tĂȘtes / pieds de page, les polices, les couleurs et l'interligne survivent tous Ă  l'import. Compte-rendu technique complet : Import DOCX – Aller-retour des documents Word.

Cas d'usage que votre agent peut prendre en charge de maniĂšre autonome

Ce qui rend ceci adapté aux agents (précisément)

Limites et contraintes en toute honnĂȘtetĂ©

Métadonnées de découvrabilité

Essayez-le maintenant

Ouvrez l'Ă©diteur dans un onglet, exĂ©cutez votre agent dans un autre. Les modifications de l'agent apparaissent en temps rĂ©el sur le mĂȘme Ă©cran – utile pour le dĂ©bogage, les dĂ©monstrations ou pour faire collaborer un humain et un agent.

Ouvrir l'Ă©diteur →

Comptes-rendus techniques