Formular-ID

MCP-Server

Lass Claude Code, Cursor, VS Code und andere KI-Agenten über den MCP-Server von Ikiform Formulare, Einsendungen und Webhooks verwalten.

Ikiform betreibt einen Remote-Model-Context-Protocol-Server. Verbinde ihn mit einem KI-Agenten, und der Agent kann in deinem Workspace Formulare erstellen, verdrahten und konfigurieren, Einsendungen lesen und sichten sowie Webhooks einrichten und debuggen, mit denselben Secret Keys und Scopes wie die REST API.

URLhttps://ikiform.com/mcp
TransportStreamable HTTP, zustandslos, JSON-RPC über POST
AuthentifizierungAuthorization: Bearer ik_sk_...
Rate-Limit100 Requests pro Minute und Schlüssel, geteilt mit der REST-API

Schlüssel erstellen

Erstelle im Dashboard einen Secret Key und gib ihm nur die Scopes, die der Agent braucht. Jedes Tool arbeitet mit dem Workspace, dem der Schlüssel gehört. Halte den Schlüssel aus deinem Repository heraus: Nutze eine Umgebungsvariable oder die Secret-Abfrage deines Clients.

ScopeTools
forms:readlist_forms, get_form und connect_form mit einer form_id
forms:writecreate_form, update_form, set_form_fields, delete_form
submissions:readlist_submissions, get_submission
submissions:writemark_spam, mark_not_spam, delete_submission
webhooks:readlist_webhook_endpoints, list_deliveries
webhooks:writecreate_webhook_endpoint und update_webhook_endpoint (mit submissions:read), roll_webhook_secret, delete_webhook_endpoint, send_test_event, replay_failed_deliveries
Um Formulare in deinem Code anzubinden, reichen forms:read und forms:write. Zum reinen Sichten ohne Schreibzugriff nutze submissions:read. Ein Tool, das ohne seinen Scope aufgerufen wird, gibt einen forbidden-Fehler zurück, der den fehlenden Scope nennt.

Client verbinden

claude mcp add --transport http ikiform https://ikiform.com/mcp \
  --header "Authorization: Bearer ik_sk_..."

Setze in Cursor IKIFORM_API_KEY in deiner Umgebung. VS Code fragt beim ersten Mal nach dem Schlüssel und speichert ihn sicher. Jeder Client, der Remote-HTTP-Server mit eigenen Headern unterstützt, funktioniert genauso.

Ikiform ist in der offiziellen MCP Registry als io.github.preetsuthar17/ikiform eingetragen. In Claude Code fügt das Ikiform-Plugin den Server und einen Skill zum Anbinden von Formularen hinzu: Führe claude plugin marketplace add preetsuthar17/ikiform-plugin aus, dann claude plugin install ikiform@ikiform.

Tools

IDs sehen aus wie frm_... für Formulare, sub_... für Einsendungen, whk_... für Webhook-Endpunkte und dlv_... für Zustellungen. Listen liefern standardmäßig 25 Einträge und höchstens 100; wenn has_more true ist, übergib next_cursor als cursor.

ToolWas er macht
list_formsFormulare, neueste zuerst, mit ID, Name, Status, Anzahl der Einsendungen und Endpunkt
get_formEndpunkt, Felder, Honeypot-Feld, erlaubte Domains, Weiterleitungs-URL, Code-Snippets und Einrichtungsanleitung eines Formulars
create_formErstellt ein Formular aus einem Namen, optional mit erlaubten Domains und Weiterleitungs-URL
update_formPausiert oder setzt ein Formular fort und ändert seinen Namen, erlaubte Domains, die Weiterleitungs-URL, die Spamprüfung, Rate-Limits oder E-Mail-Benachrichtigungen
set_form_fieldsVeröffentlicht ein Feldschema, gegen das Posts validiert werden, oder entfernt es
delete_formLöscht ein Formular. Sein Endpunkt nimmt keine Posts mehr an
list_submissionsEinsendungen, neueste zuerst, gefiltert nach Formular, Status (received oder spam) oder Datum
get_submissionEine Einsendung mit ihren Feldern, Metadaten und ihrem Spam-Score
mark_spam, mark_not_spamVerschiebt eine Einsendung in den Spam oder zurück und sendet die passenden Webhooks
delete_submissionLöscht eine Einsendung endgültig. Kann nicht rückgängig gemacht werden
list_webhook_endpointsEndpunkte mit URL, Status, Events und Fehlerstatus. Secrets werden nie zurückgegeben
create_webhook_endpointFügt einen Endpunkt hinzu und gibt sein Signing-Secret einmalig zurück
update_webhook_endpointÄndert die URL, das Formular, die Ereignisse oder die eigenen Header eines Endpunkts oder schaltet ihn aus und wieder ein
roll_webhook_secretGibt ein neues Signing-Secret zurück. Das alte funktioniert noch 24 Stunden weiter
delete_webhook_endpointLöscht einen Endpunkt und seinen Zustellungsverlauf
list_deliveriesLetzte Zustellungen an einen Endpunkt, mit Status, Versuchen und dem letzten Fehler
send_test_eventSendet ein signiertes endpoint.test-Event an einen aktiven Endpunkt
replay_failed_deliveriesSendet fehlgeschlagene Zustellungen der letzten 24h, 3d oder 7d erneut

Der Server bietet außerdem einen connect_form-Prompt: eine Schritt-für-Schritt-Anleitung, um das Formular in deinem Projekt anzubinden, ausgefüllt mit Endpunkt und Feldern deines Formulars, wenn du eine form_id übergibst.

Was du fragen kannst

  • „Verbinde das Kontaktformular in diesem Projekt mit Ikiform.“
  • „Zeig mir den Spam der letzten Woche im Wartelisten-Formular und stelle alles wieder her, was echt aussieht.“
  • „Warum schlägt mein Webhook fehl? Korrigiere den Handler, sende einen Test und sende dann erneut, was heute fehlgeschlagen ist.“
  • „Sende neue Wartelisten-Anmeldungen an meine API-Route unter /api/ikiform und lege das Secret in .env ab.“
  • „Pausiere das alte Kontaktformular und schalte die Menschlichkeitsprüfung für das neue ein.“

Agenten sollten vor dem Löschen von Formularen, Einsendungen oder Endpunkten, dem erneuten Senden von Zustellungen, dem Veröffentlichen eines Feldschemas oder dem Ändern erlaubter Domains, Spam-Einstellungen oder Rate-Limits bei dir nachfragen. Der Skill des Claude-Code-Plugins weist sie dazu an. Signing- und Turnstile-Secrets gehören in Umgebungsvariablen, nie in den Code.

Nur im Dashboard

API-Schlüssel, Mitglieder, Benachrichtigungsempfänger und die Abrechnung bleiben im Dashboard, sodass ein geleakter Schlüssel keine Schlüssel erstellen, niemanden einladen, keine E-Mails an neue Adressen senden und kein Geld ausgeben kann.