Server definition
- Hash
- sha256:ac3edb56077aca1c02a154c368c2eb99625ff21f5ea0a93ac19efafbdde05fd2
- What it is
- What a remote MCP server returned when asked what it offers: 33 tools
The blob, as servednamed by its sha256
{
"instructions": "Tamgara: Rechts-PDF-Vorlagen (Kaufvertrag, Kündigung, Vollmacht u. a.) in vielen Sprachen ausfüllen und signieren. Ablauf: search_templates → get_template (Feld-Schema) → fill_template.",
"tools": [
{
"description": "Guthaben-Konto abfragen (Kostendeckel für kostenpflichtige KI-Calls). Das Konto mit 1 € Startgutschein wird beim ersten kostenpflichtigen Call ausgestellt und dort zurückgegeben — merken und künftig mitschicken. Kostenlose Funktionen brauchen kein Konto.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"account_id": {
"description": "Bestehendes Konto (optional).",
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "account_balance",
"outputSchema": null
},
{
"description": "Guthaben aufladen. Hinweis: Die Zahlung wird gerade eingerichtet — der Aufladewunsch wird vermerkt, aber noch nicht real belastet (die kostenlosen Funktionen bleiben ohnehin frei).",
"inputSchema": {
"additionalProperties": false,
"properties": {
"account_id": {
"description": "Konto (optional; sonst neu).",
"type": "string"
},
"amount_cents": {
"description": "Wunschbetrag in Cent (optional).",
"type": "integer"
}
},
"required": [],
"type": "object"
},
"name": "account_topup",
"outputSchema": null
},
{
"description": "Stellt einem PDF ein DIN-5008-Adressblatt voran (für den Postversand). recipient = {name,street,zip,city,country}.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"filename": {
"description": "Dateiname (optional).",
"type": "string"
},
"pdfBase64": {
"description": "Das PDF (base64).",
"type": "string"
},
"recipient": {
"additionalProperties": false,
"properties": {
"city": {
"description": "Ort.",
"type": "string"
},
"country": {
"description": "ISO-2, z. B. DE/AT/CH.",
"type": "string"
},
"name": {
"description": "Empfängername.",
"type": "string"
},
"street": {
"description": "Straße + Nr.",
"type": "string"
},
"zip": {
"description": "PLZ.",
"type": "string"
}
},
"required": [
"name",
"street",
"zip",
"city"
],
"type": "object"
},
"senderLine": {
"description": "Einzeilige Rücksendeangabe über dem Adressblock (optional).",
"type": "string"
}
},
"required": [
"pdfBase64",
"recipient"
],
"type": "object"
},
"name": "add_cover_page",
"outputSchema": null
},
{
"description": "Befüllt erkannte Felder eines gescannten (nicht-AcroForm-)PDFs: Text auf Schreiblinien, X in Checkboxen — per Ratio-Positionen (z. B. aus einer Feld-Erkennung).",
"inputSchema": {
"additionalProperties": false,
"properties": {
"fields": {
"description": "Erkannte Felder.",
"items": {
"additionalProperties": false,
"properties": {
"id": {
"description": "Feld-id (Schlüssel in values).",
"type": "string"
},
"pageIndex": {
"description": "Seitenindex (0-basiert).",
"type": "integer"
},
"type": {
"enum": [
"line",
"checkbox",
"signature"
],
"type": "string"
},
"xEndRatio": {
"description": "X-Ende 0..1.",
"type": "number"
},
"xStartRatio": {
"description": "X-Start 0..1.",
"type": "number"
},
"yRatio": {
"description": "Y 0..1 von oben (Basislinie/Mitte).",
"type": "number"
}
},
"required": [
"id",
"type",
"pageIndex",
"xStartRatio",
"xEndRatio",
"yRatio"
],
"type": "object"
},
"type": "array"
},
"filename": {
"description": "Dateiname (optional).",
"type": "string"
},
"lang": {
"description": "Sprachhinweis für die Schrift (optional).",
"type": "string"
},
"pdfBase64": {
"description": "Das gescannte PDF (base64).",
"type": "string"
},
"values": {
"additionalProperties": true,
"description": "Feld-id → Wert (Text; \"true\" für Checkbox).",
"type": "object"
}
},
"required": [
"pdfBase64",
"fields",
"values"
],
"type": "object"
},
"name": "apply_scan_answers",
"outputSchema": null
},
{
"description": "Storniert einen Brief im 15-Minuten-Fenster von LetterXpress.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"id": {
"description": "Brief-id.",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "brief_cancel",
"outputSchema": null
},
{
"description": "Nach Zahlung: Brief einreichen. Braucht die job_id aus brief_create_checkout.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"jobId": {
"description": "job_id aus brief_create_checkout.",
"type": "string"
}
},
"required": [
"jobId"
],
"type": "object"
},
"name": "brief_confirm",
"outputSchema": null
},
{
"description": "Startet den bezahlten Briefversand: liefert eine Stripe-Checkout-URL. Der MENSCH bezahlt; danach brief_confirm mit der job_id. (Kein kostenloser Direktversand über die KI.)",
"inputSchema": {
"additionalProperties": false,
"properties": {
"country": {
"description": "Zielland: DE | AT | CH.",
"type": "string"
},
"filename": {
"description": "Dateiname (optional).",
"type": "string"
},
"pages": {
"description": "Seitenzahl (optional).",
"type": "integer"
},
"pdfBase64": {
"description": "Das zu versendende PDF.",
"type": "string"
},
"recipient": {
"description": "Anzeigename des Empfängers (für Beleg).",
"type": "string"
},
"registered": {
"description": "Einwurf-Einschreiben.",
"type": "boolean"
}
},
"required": [
"pdfBase64",
"recipient"
],
"type": "object"
},
"name": "brief_create_checkout",
"outputSchema": null
},
{
"description": "Prüft, ob Briefversand (Post via LetterXpress) verfügbar/bezahlt ist.",
"inputSchema": {
"additionalProperties": false,
"properties": {},
"required": [],
"type": "object"
},
"name": "brief_ping",
"outputSchema": null
},
{
"description": "Preis für einen Postbrief (Standard oder Einschreiben). Länder: DE/AT/CH.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"country": {
"description": "Zielland: DE | AT | CH (Default DE).",
"type": "string"
},
"pages": {
"description": "Seitenzahl (optional; sonst aus PDF).",
"type": "integer"
},
"pdfBase64": {
"description": "Das zu versendende PDF.",
"type": "string"
},
"registered": {
"description": "Einwurf-Einschreiben statt Standard.",
"type": "boolean"
}
},
"required": [],
"type": "object"
},
"name": "brief_quote",
"outputSchema": null
},
{
"description": "Status/Tracking eines Briefs per id.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"id": {
"description": "Brief-id.",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "brief_status",
"outputSchema": null
},
{
"description": "Sendet ein PDF zur mehrparteiigen elektronischen Signatur (DocuSign-Stil). Liefert die Vorgangs-id, einen ownerKey (geheim halten!) und pro Empfänger einen Signier-Link. fields platzieren Signatur-/Text-/Datum-/Checkbox-Felder per Ratio (0..1, y von oben). Emails an Empfänger nur über den zurückgegebenen ownerKey.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"docName": {
"description": "Dokumentname, z. B. \"Mietvertrag.pdf\".",
"type": "string"
},
"expiresDays": {
"description": "Ablauf in Tagen (0 = kein Ablauf).",
"type": "integer"
},
"fields": {
"description": "Feld-Platzierungen.",
"items": {
"additionalProperties": false,
"properties": {
"label": {
"description": "Feldbeschriftung.",
"type": "string"
},
"pageIndex": {
"description": "Seitenindex (0-basiert).",
"type": "integer"
},
"recipient": {
"description": "Index des Empfängers (0-basiert).",
"type": "integer"
},
"type": {
"enum": [
"signature",
"initials",
"text",
"date",
"checkbox"
],
"type": "string"
},
"xRatio": {
"description": "X-Position 0..1 (Mitte).",
"type": "number"
},
"yRatio": {
"description": "Y-Position 0..1 von oben (Mitte).",
"type": "number"
}
},
"required": [
"type",
"recipient",
"pageIndex",
"xRatio",
"yRatio"
],
"type": "object"
},
"type": "array"
},
"isPublic": {
"description": "Öffentlicher Signier-Link statt fester Empfänger.",
"type": "boolean"
},
"message": {
"description": "Begleitnachricht an die Empfänger (optional).",
"type": "string"
},
"ownerName": {
"description": "Name des Absenders/Erstellers.",
"type": "string"
},
"pdfBase64": {
"description": "Das zu signierende PDF (z. B. aus fill_template).",
"type": "string"
},
"recipients": {
"description": "Empfänger (bei isPublic leer).",
"items": {
"additionalProperties": false,
"properties": {
"email": {
"description": "E-Mail (optional; für Einladung).",
"type": "string"
},
"lang": {
"description": "Sprache der Einladung: de | en.",
"type": "string"
},
"name": {
"description": "Name des Unterzeichners.",
"type": "string"
},
"order": {
"description": "Reihenfolge (optional).",
"type": "integer"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"ownerName",
"docName",
"pdfBase64"
],
"type": "object"
},
"name": "envelope_create",
"outputSchema": null
},
{
"description": "Verschickt (erneut) die Signier-Einladung per E-Mail an einen Empfänger. Nur mit ownerKey.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"email": {
"description": "Ziel-E-Mail.",
"type": "string"
},
"id": {
"description": "Vorgangs-id.",
"type": "string"
},
"ownerKey": {
"description": "ownerKey.",
"type": "string"
},
"recipient": {
"description": "Empfänger-Index (0-basiert).",
"type": "integer"
}
},
"required": [
"id",
"ownerKey",
"recipient",
"email"
],
"type": "object"
},
"name": "envelope_send_invite",
"outputSchema": null
},
{
"description": "Status eines Signier-Vorgangs (wer hat gesehen/unterschrieben) per id + ownerKey.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"id": {
"description": "Vorgangs-id.",
"type": "string"
},
"ownerKey": {
"description": "Der bei create erhaltene ownerKey.",
"type": "string"
},
"withInputs": {
"description": "Eingaben mitliefern.",
"type": "boolean"
}
},
"required": [
"id",
"ownerKey"
],
"type": "object"
},
"name": "envelope_status",
"outputSchema": null
},
{
"description": "Lädt das fertige (z. B. lokal signierte) PDF für einen Vorgang hoch. Nur mit ownerKey.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"id": {
"description": "Vorgangs-id.",
"type": "string"
},
"ownerKey": {
"description": "ownerKey.",
"type": "string"
},
"pdfBase64": {
"description": "Fertiges PDF.",
"type": "string"
}
},
"required": [
"id",
"ownerKey",
"pdfBase64"
],
"type": "object"
},
"name": "envelope_upload_final",
"outputSchema": null
},
{
"description": "Storniert/annulliert einen Signier-Vorgang. Nur mit ownerKey.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"id": {
"description": "Vorgangs-id.",
"type": "string"
},
"ownerKey": {
"description": "ownerKey.",
"type": "string"
}
},
"required": [
"id",
"ownerKey"
],
"type": "object"
},
"name": "envelope_void",
"outputSchema": null
},
{
"description": "Nach erfolgter Zahlung: Fax in die Warteschlange geben. Braucht die job_id aus fax_create_checkout.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"jobId": {
"description": "job_id aus fax_create_checkout.",
"type": "string"
}
},
"required": [
"jobId"
],
"type": "object"
},
"name": "fax_confirm",
"outputSchema": null
},
{
"description": "Unterstützte Fax-Zielländer + Hinweise zur E.164-Nummer.",
"inputSchema": {
"additionalProperties": false,
"properties": {},
"required": [],
"type": "object"
},
"name": "fax_countries",
"outputSchema": null
},
{
"description": "Startet den bezahlten Faxversand: liefert eine Stripe-Checkout-URL. Der MENSCH bezahlt über diese URL; danach fax_confirm mit der job_id. (Kein kostenloser Direktversand über die KI.)",
"inputSchema": {
"additionalProperties": false,
"properties": {
"filename": {
"description": "Dateiname (optional).",
"type": "string"
},
"pages": {
"description": "Seitenzahl (optional).",
"type": "integer"
},
"pdfBase64": {
"description": "Das zu faxende PDF.",
"type": "string"
},
"to": {
"description": "Zielnummer in E.164, z. B. +4976339202117.",
"type": "string"
}
},
"required": [
"to",
"pdfBase64"
],
"type": "object"
},
"name": "fax_create_checkout",
"outputSchema": null
},
{
"description": "Prüft, ob Faxversand verfügbar ist und ob er bezahlt (Stripe) läuft.",
"inputSchema": {
"additionalProperties": false,
"properties": {},
"required": [],
"type": "object"
},
"name": "fax_ping",
"outputSchema": null
},
{
"description": "Preis für einen Faxversand. Seitenzahl aus pdfBase64 abgeleitet, wenn nicht angegeben.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"pages": {
"description": "Seitenzahl (optional; sonst aus PDF).",
"type": "integer"
},
"pdfBase64": {
"description": "Das zu faxende PDF (z. B. aus fill_template).",
"type": "string"
},
"to": {
"description": "Zielnummer E.164 (optional, für Zonenpreis).",
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "fax_quote",
"outputSchema": null
},
{
"description": "Zustellstatus eines Fax (queued/sending/success/failed) per id.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"id": {
"description": "Fax-id.",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "fax_status",
"outputSchema": null
},
{
"description": "Ein BELIEBIGES (nicht-Katalog-)PDF ausfüllen und optional signieren → fertiges PDF (base64). answers = Feldname→Wert (aus inspect_pdf). Unterschrift wird in erkannte Signaturfelder gesetzt oder per manualPlacement platziert. lang (optional) wählt die Schrift für nicht-lateinische Eingaben (ar/zh/hi/…).",
"inputSchema": {
"additionalProperties": false,
"properties": {
"answers": {
"additionalProperties": true,
"description": "Feldname → Wert (String/Boolean).",
"type": "object"
},
"extraText": {
"additionalProperties": false,
"properties": {
"placement": {
"additionalProperties": false,
"properties": {
"pageIndex": {
"description": "Seitenindex.",
"type": "integer"
},
"xRatio": {
"description": "X 0..1.",
"type": "number"
},
"yRatio": {
"description": "Y 0..1 von oben.",
"type": "number"
}
},
"required": [],
"type": "object"
},
"text": {
"description": "Zusatztext (z. B. Ort, Datum).",
"type": "string"
}
},
"required": [],
"type": "object"
},
"filename": {
"description": "Dateiname (optional).",
"type": "string"
},
"lang": {
"description": "Sprachhinweis für die Schrift (z. B. ar, zh, hi) — optional.",
"type": "string"
},
"manualPlacement": {
"additionalProperties": false,
"properties": {
"pageIndex": {
"description": "Seitenindex (0-basiert).",
"type": "integer"
},
"xRatio": {
"description": "X 0..1.",
"type": "number"
},
"yRatio": {
"description": "Y 0..1 von oben.",
"type": "number"
}
},
"required": [],
"type": "object"
},
"pdfBase64": {
"description": "Das auszufüllende PDF (base64).",
"type": "string"
},
"signaturePngDataUrl": {
"description": "Unterschrift als PNG data:-URL (optional).",
"type": "string"
}
},
"required": [
"pdfBase64"
],
"type": "object"
},
"name": "fill_pdf",
"outputSchema": null
},
{
"description": "Vorlage ausfüllen (und optional signieren) → fertiges PDF als base64. answers ist ein Objekt Feldname→Wert (Text/Datum \"TT.MM.JJJJ\" als String, Checkbox true/false, Radio/Dropdown = Option). Feldnamen vorher mit get_template abfragen.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"account_id": {
"description": "Guthaben-Konto (nur für ai:true). Fehlt es, wird eins mit 1 € Startguthaben ausgestellt und in der Antwort zurückgegeben.",
"type": "string"
},
"ai": {
"description": "KI-Dokumenterstellung nutzen (kostenpflichtig, 0,20 € vom Guthaben; normales Ausfüllen ist kostenlos).",
"type": "boolean"
},
"answers": {
"additionalProperties": true,
"description": "Feldname → Wert (String oder Boolean).",
"type": "object"
},
"country": {
"description": "Land ISO-2 für den Rechtsraum-Vermerk (optional).",
"type": "string"
},
"id": {
"description": "Alternativ: sprachneutrale id (mit lang).",
"type": "string"
},
"lang": {
"description": "Basissprache, wenn per id adressiert.",
"type": "string"
},
"signaturePngDataUrl": {
"description": "Unterschrift als PNG data:-URL (optional).",
"type": "string"
},
"slug": {
"description": "Slug der Vorlage.",
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "fill_template",
"outputSchema": null
},
{
"description": "Ein Anbieter per id (Kündigungsadresse, Fax, typische Frist).",
"inputSchema": {
"additionalProperties": false,
"properties": {
"country": {
"description": "Land: de | at | ch.",
"type": "string"
},
"id": {
"description": "Anbieter-id.",
"type": "string"
}
},
"required": [
"id"
],
"type": "object"
},
"name": "get_provider",
"outputSchema": null
},
{
"description": "Details + Feld-Schema einer Vorlage: welche Felder (Name, Typ, Label, Optionen) auszufüllen sind, plus Rechtsraum. Adressierbar per slug ODER per id+lang. Feldnamen sind sprachübergreifend gleich.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"country": {
"description": "Land ISO-2 für den passenden Rechtsraum.",
"type": "string"
},
"id": {
"description": "Sprachneutrale Vorlagen-ID (mit lang kombinieren).",
"type": "string"
},
"includeBlankPdf": {
"description": "Blanko-PDF als base64 mitliefern.",
"type": "boolean"
},
"lang": {
"description": "Basissprache, wenn per id adressiert.",
"type": "string"
},
"slug": {
"description": "Global eindeutiger Slug (aus search_templates).",
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "get_template",
"outputSchema": null
},
{
"description": "Überblick über Tamgara: Anzahl Vorlagen, Sprachen, Rechtsräume.",
"inputSchema": {
"additionalProperties": false,
"properties": {},
"required": [],
"type": "object"
},
"name": "info",
"outputSchema": null
},
{
"description": "Ein BELIEBIGES PDF (base64) analysieren: Seitenzahl/-größen, ausfüllbare Formularfelder (Name, Typ, Label, Optionen), Signaturfelder und Unterschrifts-Positionen. Grundlage zum Ausfüllen fremder PDFs.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"pdfBase64": {
"description": "Das PDF als base64.",
"type": "string"
}
},
"required": [
"pdfBase64"
],
"type": "object"
},
"name": "inspect_pdf",
"outputSchema": null
},
{
"description": "Vorlagen-Kategorien mit Anzahl (cancellation, sale, rental, …).",
"inputSchema": {
"additionalProperties": false,
"properties": {},
"required": [],
"type": "object"
},
"name": "list_categories",
"outputSchema": null
},
{
"description": "Alle unterstützten Basissprachen mit Vorlagen-Anzahl, RTL-Flag und Rechtsräumen.",
"inputSchema": {
"additionalProperties": false,
"properties": {},
"required": [],
"type": "object"
},
"name": "list_languages",
"outputSchema": null
},
{
"description": "Alle Locales (Sprache×Land) mit lokalisierter Rechtsphrase.",
"inputSchema": {
"additionalProperties": false,
"properties": {},
"required": [],
"type": "object"
},
"name": "list_locales",
"outputSchema": null
},
{
"description": "Anbieter für Kündigungen (Kündigungsadresse/Fax/Frist). Länder: de, at, ch. Optional Freitextsuche.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"category": {
"description": "Anbieter-Kategorie (optional).",
"type": "string"
},
"country": {
"description": "Land: \"de\" | \"at\" | \"ch\" (Default de).",
"type": "string"
},
"limit": {
"description": "Max. Treffer (Default 25).",
"type": "integer"
},
"query": {
"description": "Freitext über Name/Aliase (min. 2 Zeichen).",
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "list_providers",
"outputSchema": null
},
{
"description": "Aus einem oder mehreren Bildern (base64 PNG/JPEG) ein PDF bauen — ein Bild pro Seite (Foto/Scan → PDF).",
"inputSchema": {
"additionalProperties": false,
"properties": {
"filename": {
"description": "Dateiname (optional).",
"type": "string"
},
"images": {
"description": "base64-Bilder (mit oder ohne data:-Präfix).",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"images"
],
"type": "object"
},
"name": "pdf_from_images",
"outputSchema": null
},
{
"description": "Vorlagen suchen/filtern. Freitext über Titel/Slug/Beschreibung, optional nach Sprache, Land (ISO-2, z. B. \"DE\", \"EG\") und Kategorie. Liefert Slugs zum Weiterverwenden.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"category": {
"description": "Kategorie aus list_categories.",
"type": "string"
},
"country": {
"description": "Ländercode ISO-2 groß, z. B. \"DE\", \"AT\", \"EG\".",
"type": "string"
},
"lang": {
"description": "Basissprache, z. B. \"de\", \"en\", \"ar\".",
"type": "string"
},
"limit": {
"description": "Max. Treffer (1–200, Default 50).",
"type": "integer"
},
"query": {
"description": "Freitext, z. B. \"Kündigung\" oder \"car purchase\".",
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "search_templates",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:ac3edb56077aca1c02a154c368c2eb99625ff21f5ea0a93ac19efafbdde05fd2 | sha256sum