Kodierung technischer Dokumente mit KI und MCP
Wie Claude Code und der Sutram MCP Server einen 30-seitigen Standard in Minuten in ein funktionierendes System verwandelten
Die Herausforderung
Der Petrobras-Standard N-1710 Rev. N (Kodierung technischer Ingenieurdokumente) definiert ein strenges System zur Identifikation technischer Dokumente. Jedes Dokument erhält einen Code, der aus bis zu 7 Gruppen besteht, getrennt durch Bindestriche:
[A-]BB-CDDD.EE-FGGGG-HHH-III-JJJ
Wobei jede Gruppe jeweils darstellt: Sprache, Dokumentkategorie, Anlage, Tätigkeitsbereich, Dienstleistungsklasse, Herkunft und eine laufende Nummer. Die Anhänge des Standards beschreiben Hunderte gültiger Codes für jedes Feld — Anhang C (Tätigkeitsbereich) allein hat über 900 Codes, und Anhang D (Dienstleistungsklasse) etwa 690.
Dieses System manuell zu implementieren — Felder definieren, Hunderte von Werten registrieren, Regeln zur automatischen Codegenerierung konfigurieren — ist eine Arbeit, die normalerweise Stunden, wenn nicht Tage dauern würde.
Die anfängliche Anweisung
Alles begann mit einer einfachen Anweisung an Claude Code:
„Lies den Standard N-1710 und seine Anhänge (A, C und D) im PDF. Konfiguriere dann eine Record Category in Sutram, die die im Standard definierte Kodierung implementiert."
Aus dieser einzelnen Anfrage musste der Agent:
- Den Hauptstandard und 3 Anhänge im PDF lesen und interpretieren (insgesamt 48 Seiten)
- Alle Codes und Beschreibungen aus den Anhängen extrahieren
- Die Metadatenstruktur in Sutram modellieren
- Mehr als 1.600 aufgezählte Werte registrieren
- Die automatische Slug-Generierung im Format des Standards konfigurieren
- Das Ergebnis testen und validieren
Die Sutram MCP Server Tools
Sutram bietet einen MCP Server (Model Context Protocol), der es KI-Agenten ermöglicht, direkt mit der Plattform zu interagieren. Das war der entscheidende Unterschied, der die Implementierung in einer einzigen Sitzung ermöglichte.
Die verwendeten Tools in der Reihenfolge des Workflows:
1. sutram_project_info — Erkundung
Erster Aufruf: den Projektstatus prüfen. Ergebnis: null Metadatendefinitionen, null Record Categories. Saubere Ausgangslage.
2. sutram_upsert_metadata — Feldmodellierung
Mit dem bereits interpretierten Standard erstellte der Agent 7 Metadatendefinitionen in parallelen Aufrufen:
| Feld | Typ | Werte |
|---|---|---|
idioma (Sprache) |
enum | 6 (Englisch, Deutsch, Französisch etc.) |
categoria_documento (Dokumentkategorie) |
enum | 21 (Zeichnung, Bericht, Datenblatt etc.) |
instalacao (Anlage) |
text | Freitext (Format CDDD.EE) |
area_atividade (Tätigkeitsbereich) |
enum | 903 Codes aus Anhang C |
classe_servico (Dienstleistungsklasse) |
enum | 690 Codes aus Anhang D |
origem (Herkunft) |
text | Freitext (NORTEC-Code) |
sequencial (Laufend) |
computed | automatisch generiert, 3 Stellen |
Parallelisierung war entscheidend — unabhängige Felder wurden gleichzeitig erstellt, was Zeit sparte.
3. sutram_add_enum_values — Massives Laden von Daten
Hier ist der beeindruckendste Teil. Die Anhänge C und D des Standards enthalten zusammen fast 1.600 Codes. Der Agent:
- Las die PDFs Seite für Seite (Anhang C allein hat 27 Seiten)
- Extrahierte jeden Code und seine Beschreibung
- Lud die Werte in parallelen Stapeln mit
sutram_add_enum_values
Beispiel eines Stapels aus Anhang C:
{
"key": "area_atividade",
"values": [
{"code": "2111", "label": "Atmosphärische Destillationsanlage"},
{"code": "2112", "label": "Vakuumdestillationsanlage"},
{"code": "2113", "label": "Pre-Flash-Anlage"},
...
]
}
Mehrere Runden paralleler Aufrufe waren nötig, um alle Werte zu laden — insgesamt etwa 15 Aufrufe für beide Anhänge. Das Tool sutram_add_enum_values führt intelligentes Zusammenführen durch: Doppelte Codes werden ignoriert, und alles wird automatisch neu sortiert.
4. sutram_upsert_record_category — Kodierungskonfiguration
Mit den fertigen Metadaten erstellte ein einziger Aufruf die Record Category mit der gesamten Codegenerierungslogik:
computed_from: definiert, welche Felder die „Eindeutigkeitsbasis" für die laufende Nummer bilden (Kategorie + Anlage + Bereich + Klasse + Herkunft)slug_from: definiert, wie der endgültige Code zusammengesetzt wird, Feld für Feld, mit Auswahl zwischencodeoderlabeljedes Enumsslug_separator: der Bindestrich, der die Gruppen trennt
{
"slug_from": [
{"key": "idioma", "use": "code"},
{"key": "categoria_documento", "use": "code"},
{"key": "instalacao", "use": "label"},
{"key": "area_atividade", "use": "code"},
{"key": "classe_servico", "use": "code"},
{"key": "origem", "use": "label"},
{"key": "sequencial", "use": "label"}
],
"slug_separator": "-"
}
5. sutram_create_record — Validierung
Der abschließende Test: Records erstellen und prüfen, ob der generierte Code dem Format des Standards entspricht.
Test 1 — Beschreibendes Memorial auf Portugiesisch:
Eingabe: category=Descriptive Memorial, facility=4300.06,
area=Laboratory, class=Drilling, origin=PTD
Ergebnis: MD-4300.06-8222-114-PTD-001 ✓
Test 2 — Dieselbe Kombination, zweites Dokument:
Ergebnis: MD-4300.06-8222-114-PTD-002 ✓ (Laufnummer erhöht)
Test 3 — Dokument auf Englisch:
Eingabe: language=English, category=Drawing, facility=5285.00,
area=Laboratory, class=Towers, origin=PPC
Ergebnis: I-DE-5285.00-8222-550-PPC-001 ✓ ("I-" Präfix für Englisch)
Die Rolle von MCP (Model Context Protocol)
MCP ist das, was diese Integration möglich macht. Es erlaubt Claude Code, mit Sutram zu interagieren, als wäre es ein fortgeschrittener Plattformbenutzer — aber mit der Fähigkeit:
- Unabhängige Aufrufe zu parallelisieren (mehrere Metadatenfelder gleichzeitig erstellen)
- Große Datenmengen stapelweise zu verarbeiten (Hunderte von Codes pro Aufruf)
- Abhängige Operationen zu verketten (Metadaten erstellen → Kategorie erstellen → testen)
- Ergebnisse in Echtzeit zu validieren und Fehler im selben Ablauf zu korrigieren
Ohne MCP hätte dieselbe Aufgabe erfordert, durch Sutrams Oberfläche zu navigieren, jedes Feld manuell zu registrieren, Hunderte von Codes einzeln einzutippen oder zu importieren und Slug-Regeln über die Benutzeroberfläche zu konfigurieren. Mit MCP erledigte der Agent alles programmatisch, direkt vom Terminal aus.
Sitzungszahlen
| Metrik | Wert |
|---|---|
| Gelesene PDF-Seiten | 48 |
| Erstellte Metadatendefinitionen | 7 |
| Registrierte Enum-Werte | 1.614 (903 + 690 + 21) |
| Konfigurierte Record Category | 1 |
| Erstellte und validierte Test-Records | 3 |
| Echtzeitkorrekturen | 1 (slug_from Anpassung von label auf code) |
Fazit
Die Kombination eines KI-Agenten, der technische Dokumente interpretieren kann (Claude Code liest die PDFs des Standards) mit MCP-Tools, die direkte Aktionen auf der Plattform ermöglichen (der Sutram MCP Server), schafft einen Workflow, der vorher einfach nicht möglich war.
Was zuvor Stunden manueller Arbeit erfordert hätte — den Standard lesen, die Regeln interpretieren, Hunderte von Codes registrieren, die Generierungslogik konfigurieren — wurde in einer einzigen Konversationssitzung gelöst. Und das Ergebnis ist kein Prototyp: Es ist ein funktionales, validiertes System, bereit für den Produktiveinsatz.
Das ist das Versprechen von MCP: nicht nur fragen und antworten, sondern handeln.