Gib deinem KI-Agenten Dokumentbearbeitung â in unter 60 Sekunden
AgentDoc ist ein öffentlicher Model-Context-Protocol-Server (MCP). Jeder LLM-Agent, der MCP spricht â Gemini, Claude, GPT oder dein eigener â kann sich verbinden, authentifizieren und eine vollstĂ€ndige typisierte API zur Dokumentbearbeitung nutzen: lesen, schreiben, formatieren, navigieren, PDFs exportieren. Kein SDK zum Einbinden, kein Schema, das du auf deiner Seite pflegen musst, kein Mensch in der Schleife.
Diese Seite ist der kanonische Onboarding-Pfad fĂŒr Agenten und die Menschen, die sie betreiben. Wenn du (oder dein Modell) einen funktionierenden Dokumenteneditor als Tool verfĂŒgbar haben willst, ist das hier alles, was du brauchst.
MCP-Endpunkt
Standard-Model-Context-Protocol ĂŒber Server-Sent Events. JWT-Bearer-Token-Authentifizierung (siehe Schnellstart unten). Kostenloses Token-Budget pro Konto; keine Kreditkarte erforderlich.
Schnellstart (ein HTTP-Aufruf)
Registriere ein isoliertes Agentenkonto und erhalte seinen API-Key in einer einzigen Anfrage. Kein Browser, keine E-Mail, kein Mensch in der Schleife. Jeder registrierte Agent ist sein eigener Nutzer mit eigenem Dokumentbereich â verschiedene Agenten sehen niemals die Dokumente der jeweils anderen.
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..."
# }
Das war's. Verwende den api_key als Bearer-Token gegen /mcp/sse und der Agent verfĂŒgt ĂŒber 35 typisierte Tools, um Dokumente zu lesen, zu schreiben, zu formatieren, zu paginieren und zu exportieren â vollstĂ€ndig auf sein eigenes Konto begrenzt.
Zwei Wege zur Authentifizierung
Option A â Agent registriert sich selbst (empfohlen fĂŒr autonome Workflows)
Verwende POST /api/agents/register wie oben gezeigt. Der Agent erhĂ€lt sein eigenes Nutzerkonto und seinen eigenen Dokument-Namensraum. Verschiedene Agenten kollidieren nie. Rate-Limit: 5 Registrierungen pro Stunde und IP. Das ist der richtige Pfad fĂŒr Brief-Pipelines, Batch-Prozessoren, geplante Jobs und Multi-Agenten-Workflows.
Option B â Eigenes Nutzerkonto verwenden (fĂŒr âgib meinem eigenen Assistenten Dokumentbearbeitung")
Ăffne /app, melde dich an, Seitenleiste â âAPI-Keys fĂŒr Agenten" â â+ Neuen Key erstellen". Der Key wird nur einmal angezeigt. Verwende ihn als Bearer-Token. Der Agent teilt sich dein Konto, deine Dokumente und deinen aktiven Dokumentstatus. NĂŒtzlich, wenn ein Co-Pilot-Agent neben dir an einem einzigen Korpus arbeiten soll.
Was abgerechnet wird (und was nicht)
Agenten bringen ihr eigenes LLM mit. Du bezahlst deinen Modellanbieter fĂŒr Reasoning-Token. Wir sehen diese nicht, berechnen sie nicht und drosseln nicht danach. Unser Dienst hostet den MCP-Server, die Dokumentspeicherung und die Rendering-Pipeline. Die Spalte token_limit bei Agentenkonten ist als defensiver Schutzgurt auf 0 gesetzt: Falls irgendein zukĂŒnftiger Codepfad jemals versuchen wĂŒrde, unseren internen Gemini-Agenten mit Agentenkonto-Authentifizierung auszufĂŒhren, wĂŒrde er sich weigern â Agenten bleiben strikt auf dem MCP-Tool-Pfad.
Wichtig: Das ist autonom, nicht kollaborativ
Dieser Pfad ist fĂŒr autonome Agenten-Workflows gebaut â dein Agent denkt mit seinem eigenen LLM, ruft unsere MCP-Tools direkt auf, bearbeitet Dokumente auf seinem eigenen Konto und exportiert ein Ergebnis. Dieselbe praxiserprobte Tool-OberflĂ€che, die unsere Sprach- und Text-Agenten in Produktion nutzen, treibt deinen Agenten an â aber dein Agent spricht nie mit unserem. Es gibt keinen KI-zu-KI-Hop, keinen internen LLM-Aufruf in deinem Namen, keine gemeinsame Sitzung mit unserem In-Browser-Editor.
Wenn du möchtest, dass ein Mensch und unser Sprach-/Text-Agent live gemeinsam bearbeiten, nutze /app direkt â das ist ein anderer Pfad. Wenn du möchtest, dass dein eigener Agent den Editor ohne Menschen bedient, ist der hier beschriebene MCP-Endpunkt die richtige OberflĂ€che.
Von jedem MCP-Client verbinden
Python (mcp client / 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 (Anthropic SDK)
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 (rohe Erkundung)
curl -N -H "Authorization: Bearer $TOKEN" \
-H "Accept: text/event-stream" \
https://agent-doc-edit.com/mcp/sse
Tool-Katalog â Workflow T wird automatisch angewendet
Externe Agenten (d. h. Anfragen, die mit einem ak_*-API-Key authentifiziert sind) werden automatisch auf die Tool-OberflĂ€che Workflow T beschrĂ€nkt â den Pareto-optimalen Produktionsstandard, den unsere eigenen Sprach- und Text-Agenten verwenden. Du wendest diesen Filter nicht an; der MCP-Server wendet ihn serverseitig sowohl bei tools/list als auch bei tools/call an. So erhĂ€ltst du das kuratierte Subset aus ~35 Tools (typisierte Primitive + Makros + beobachtendes Feedback zu Index-Verschiebungen), entfernst die Scratchpad- und FSM-Intent-Tools, die nicht zu T gehören, und schlieĂt die atomaren âexplodierten" Varianten aus, die nur unser Tool-Bloat-Benchmark verwendet. Jedes Tool hat ein JSON-Schema fĂŒr seine Argumente und liefert eine strukturierte Antwort mit expliziten Erfolgs-/Fehlermarkierungen; indexverschiebende Operationen enthalten beobachtendes Feedback ("observation": "INDEX SHIFT â re-read before next mutation"), damit der Agent zwischen den Schritten geerdet bleibt.
Ein Dokument aus einer vorhandenen DOCX vorbefĂŒllen
Die MCP-Tool-OberflĂ€che lĂ€sst deinen Agenten Dokumente von Grund auf erstellen. FĂŒr Workflows, die mit einer vorab erstellten Word-Datei beginnen â Vorlagen mit Firmenbriefkopf, Vertragsbausteine, ein eingehender Entwurf zur Ăberarbeitung â nimmt ein zusĂ€tzlicher One-Shot-HTTP-Endpunkt .docx-Uploads entgegen, erstellt ein frisches Document auf dem Konto des Agenten und schaltet es aktiv, sodass der nĂ€chste MCP-Aufruf auf dem importierten Inhalt landet:
# 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"
SeitenumbrĂŒche, Hyperlinks, Kopf-/FuĂzeilen, Schriftarten, Farben und ZeilenabstĂ€nde ĂŒberstehen den Import alle. VollstĂ€ndige technische Aufarbeitung: DOCX-Import â Word-Dokumente im Round-Trip.
AnwendungsfĂ€lle, die dein Agent autonom ĂŒbernehmen kann
- Brief-Generierungspipeline. Der Agent erhĂ€lt ein strukturiertes Event (âentschuldige dich bei Kunde X fĂŒr Verzögerung Y"), entwirft den Brief, formatiert ihn, exportiert ein PDF und hĂ€ngt es an eine ausgehende E-Mail an.
- Berichtsgenerator. Der Agent liest eine CSV ein, fasst die Erkenntnisse zusammen, gliedert den Bericht in Ăberschriften, fĂŒgt ein Inhaltsverzeichnis ein, formatiert SchlĂŒsselzahlen farbig und exportiert.
- Dokument-Refactoring. Der Agent liest einen vorhandenen Entwurf, ordnet AbsĂ€tze neu an, wendet eine einheitliche Ăberschriftenhierarchie an, korrigiert uneinheitliche Terminologie mit einem einzigen
macro_replace_all-Durchlauf und exportiert. - Multi-Agenten-Workflows. Ein Planungsagent entscheidet, was geschrieben werden soll; ein Schreibagent ruft die AgentDoc-Tools auf, um das Artefakt zu erstellen; ein PrĂŒfagent liest das Ergebnis und stöĂt Ăberarbeitungen an.
- Sprach-Ăbergabe. Ein Sprachagent nimmt gesprochene Anweisungen des Nutzers entgegen und ĂŒbergibt strukturierte Aufgabenbeschreibungen an einen Textagenten, der die eigentlichen Dokumentoperationen gegen denselben MCP-Server ausfĂŒhrt.
- Vorlagen-BefĂŒllung. Der Agent lĂ€dt eine
.docxmit Firmenbriefkopf ĂŒber/api/docs/import/docxhoch, fĂŒllt Platzhalterfelder mitmacro_replace_textaus und exportiert das Ergebnis â der Mitarbeiter des Nutzers öffnet eine Word-Datei in genau dem Word, mit dem er begonnen hat.
Was das hier (konkret) agentenfreundlich macht
- Typisierte Tools, keine Freitext-Prompts. Jede Operation ist ein per JSON-Schema validiertes Tool. Der Agent kann ein Tool nicht âfast" aufrufen â die Argumente parsen oder eben nicht.
- Strukturierte Tool-RĂŒckgaben.
create_documentliefert{"status":"success","doc_id":N,"title":...}â kein Regex ĂŒber Prosa.trigger_pdf_downloadliefert ein selbstbeschreibendes{"pdf_url":"/api/doc/N/pdf","method":"GET"}, sodass ein einziges nachgelagertes HTTP GET die Bytes abruft. - Automatische Token-Injektion. Der Bearer-Token aus deinem
Authorization-Header wird automatisch in jeden Tool-Aufruf injiziert â deine Tool-Argumente bleiben frei von Auth. (Der interne Sprach-/Text-Agent nutzt eine Ă€ltere Konvention mit explizitemtoken-Argument; dieser Pfad bleibt aus GrĂŒnden der AbwĂ€rtskompatibilitĂ€t unterstĂŒtzt.) - Stand-off-Formatierung. Der Agent schreibt nie rohes HTML. Formatierung ist ein typisierter Aufruf (
format_text(..., format_type="color", format_value="blue")) â die OberflĂ€che, die am leichtesten zu halluzinieren ist, wurde entfernt. - Ganzzahlige Dokument-IDs. Automatisch hochzĂ€hlende Ganzzahlen, keine UUIDs â das eliminiert Zeichen-Drop-Halluzinationen, wenn der Agent eine ID zwischen Tool-Aufrufen weitergibt.
- Beobachtendes Feedback bei jeder Mutation. RĂŒckgaben enthalten explizite Beobachtungen, wenn sich Indizes verschieben, sodass der Agent kein mentales Modell kumulativer Offsets fĂŒhren muss.
- Visueller Echtzeit-Spiegel. Dasselbe Dokument, das der Agent bearbeitet, wird live unter
/appgerendert. NĂŒtzlich fĂŒr menschliche ĂberprĂŒfung, Demos und multimodale Ăbergaben. - Sprach-und-Text-Symmetrie. Der Sprachagent und der Textagent sehen exakt dieselbe Tool-OberflĂ€che. Wenn dein Agent als Text-Client funktioniert, funktioniert er auch als Sprach-Client.
Grenzen und ehrliche EinschrÀnkungen
- Die LLM-Abrechnung liegt bei dir. Agenten bringen ihr eigenes Modell mit. Du bezahlst deinen Anbieter fĂŒr Reasoning-Token. Unser Dienst hostet den MCP-Server und die Dokumentspeicherung; wir rechnen die LLM-Nutzung nicht ab und sehen sie nicht.
- Rate-Limit bei der Registrierung. 5 Agenten-Selbstregistrierungen pro Stunde und IP. Gedacht fĂŒr legitime Bereitstellung, nicht fĂŒr Massenmissbrauch.
- Tool-Aufruf-Rate. Weiches Limit pro Konto auf der Proxy-Schicht. Heute keine aggressive Drosselung, aber unbegrenzte Schleifen treffen irgendwann auf nginx-seitige Obergrenzen.
- DokumentgröĂe. Der praktische Idealbereich liegt bei 1â50 Seiten (A4). Sehr groĂe Dokumente (200+ Seiten) funktionieren, aber das Reasoning des Agenten verlangsamt sich, weil das Lese-Tool den vollstĂ€ndigen Zustand zurĂŒckgibt.
- Konto-Isolation. Jeder registrierte Agent ist sein eigener Nutzer. Dokumente sind nur diesem Nutzer zugeordnet â Agenten lesen oder schreiben nie kontenĂŒbergreifend. Um Dokumente bewusst zwischen Agenten zu teilen, teile den API-Key (Option B oben).
- VerfĂŒgbarkeit des Dienstes. Dies ist ein öffentlicher Dienst auf Forschungsniveau, kein produktives SLA. Wir streben eine hohe VerfĂŒgbarkeit an, geben aber keine formale Garantie.
Metadaten zur Auffindbarkeit
- llms.txt â eine Klartext-Sitemap fĂŒr LLM-Crawler unter
/llms.txt. - OpenGraph / JSON-LD â jede Seite stellt, wo passend, WebAPI-/TechArticle-/FAQPage-Schema bereit.
- Stabile URLs â
/agentsist kanonisch und wird sich nicht Àndern.
Jetzt ausprobieren
Ăffne den Editor in einem Tab, fĂŒhre deinen Agenten in einem anderen aus. Die Bearbeitungen des Agenten erscheinen in Echtzeit auf demselben Bildschirm â nĂŒtzlich zum Debuggen, fĂŒr Demos oder fĂŒr eine Mensch-+-Agent-Zusammenarbeit.
Editor öffnen âTechnische Aufarbeitungen
- Tool-GranularitĂ€t in LLM-Agenten â Designprinzipien fĂŒr die MCP-Tool-OberflĂ€che, die dein Agent aufrufen wird.
- PDF- + DOCX-Export neu gebaut â wie die Export-Endpunkte das Bildschirm-Layout originalgetreu reproduzieren, wenn ein Agent einen Download auslöst.
- Patch Notes April 2026 â aktuelle Korrekturen an Renderer-/Dekorations-/Toggle-Semantik, auf die sich Agenten verlassen.