Ikiform

io.github.preetsuthar17Published by GitHub account preetsuthar17v0.1.0Updated Nov 8, 2026

Backend for any website form: create forms, read and triage submissions, debug webhooks.

VerifiedStreamable HTTPWeb executableDeveloper ToolsBusiness & Commerce

Overview

AI-generated overview

Ikiform's hosted MCP server lets an assistant look up and create website forms, read and triage submissions, and debug webhooks.

What you can do
  • List forms and read a form's endpoint, fields and setup steps
  • Create forms and change name, allowed domains or redirect URL
  • List and read submissions, mark spam or not spam, and delete submissions
  • List webhook endpoints and deliveries, send test events and replay failed deliveries
  • Return setup steps for connecting a form through a connect_form prompt
When to use it
Useful when you are wiring an HTML, framework or server-side form to Ikiform and want the assistant to fetch form details, check incoming submissions for spam, or diagnose failing webhook deliveries without leaving the chat.
Requirements
Remote Streamable HTTP endpoint at ikiform.com/mcp. Requires a secret Ikiform API key (ik_sk_...) sent as an Authorization bearer header; the plugin reads it from the IKIFORM_API_KEY environment variable. The key is created in the Ikiform dashboard with scopes such as forms:read, forms:write, submissions:read, submissions:write, webhooks:read and webhooks:write. An Ikiform account is needed.
Before you install
The API key is a secret and should stay in a shell profile or secrets manager, never in a repository or browser code. Scopes control what the assistant can do: write scopes allow creating and changing forms, deleting submissions, and replaying webhook deliveries, which the agent is documented to confirm first. Grant only the scopes you need; forms:read alone is enough to wire forms into code.

Installation

In SourceWeft

  1. Open Ikiform in the dashboard and add it to a workspace.
  2. Connect Authorization token credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.preetsuthar17%2Fikiform/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "ikiform": {
      "type": "http",
      "url": "https://ikiform.com/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

README

Ikiform for Claude Code and other agents

Ikiform is the backend for any form. Point an HTML form, a framework form or a server request at https://ikiform.com/f/<formId>. Ikiform validates the post, blocks spam, stores it and sends signed webhooks.

This repository has two things:

  • An Agent Skill (ikiform) that teaches a coding agent to connect a form to Ikiform, post from a server, verify Ikiform webhooks and triage submissions. It works in Claude Code and any agent that reads SKILL.md skills.
  • A Claude Code plugin that bundles the skill with the Ikiform MCP server, so the agent can look up your forms, create them, read submissions and debug webhooks.

Install in Claude Code

In a Claude Code session:

/plugin marketplace add preetsuthar17/ikiform-plugin/plugin install ikiform@ikiform

Or from your shell:

bash
claude plugin marketplace add preetsuthar17/ikiform-pluginclaude plugin install ikiform@ikiform

Set your API key

The plugin's MCP server reads your key from the IKIFORM_API_KEY environment variable.

  1. Create a secret key at https://ikiform.com/dashboard/api-keys.

  2. Give it the scopes you want the agent to have:

    ScopeLets the agent
    forms:readList forms and read a form's endpoint, fields and setup steps
    forms:writeCreate forms and change name, allowed domains or redirect URL
    submissions:readList and read submissions
    submissions:writeMark spam or not spam, and delete submissions
    webhooks:readList webhook endpoints and deliveries
    webhooks:writeSend test events and replay failed deliveries

    forms:read is enough to wire forms into your code. Add more only if you want the agent to do more.

  3. Export it in the shell you start Claude Code from, for example in ~/.zshrc:

    bash
    export IKIFORM_API_KEY=ik_sk_...
  4. Start Claude Code and run /mcp. The server shows as plugin:ikiform:ikiform.

The key is a secret. Keep it in your shell profile or a secrets manager, never in a repository or in browser code.

The skill works without the key. Without it, the agent asks you for the form id from the dashboard instead of looking it up.

Use it

Ask in plain words, for example:

  • "Connect the contact form in this project to Ikiform."
  • "Add a waitlist form to the landing page and send it to Ikiform."
  • "Verify Ikiform webhooks in our Express server."
  • "Show me this week's spam on the Contact form."
  • "Why is my Ikiform webhook failing?"

Or run the skill directly with /ikiform:ikiform.

The agent asks before it deletes a submission or replays webhook deliveries.

Use the skill in other agents

The skill is a plain Agent Skills folder: plugins/ikiform/skills/ikiform/. Copy it into your agent's skills directory.

With the skills CLI, for Claude Code, Cursor, Codex and other agents:

bash
npx skills add preetsuthar17/ikiform-plugin

Claude Code without the plugin:

bash
git clone https://github.com/preetsuthar17/ikiform-plugin ikiform-pluginmkdir -p ~/.claude/skillscp -R ikiform-plugin/plugins/ikiform/skills/ikiform ~/.claude/skills/ikiform

Use .claude/skills/ikiform inside a project instead to share it with your team. For other agents, copy the same folder into the directory that agent reads skills from. The skill uses only name, description and license in its frontmatter, so it stays portable.

Connect the MCP server without the plugin

Server: https://ikiform.com/mcp, Streamable HTTP, authenticated with Authorization: Bearer ik_sk_....

Claude Code

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

Cursor

In ~/.cursor/mcp.json, or .cursor/mcp.json in a project:

json
{  "mcpServers": {    "ikiform": {      "url": "https://ikiform.com/mcp",      "headers": {        "Authorization": "Bearer ${env:IKIFORM_API_KEY}"      }    }  }}

VS Code

In .vscode/mcp.json. VS Code asks for the key the first time and stores it securely:

json
{  "inputs": [    {      "type": "promptString",      "id": "ikiform-api-key",      "description": "Ikiform secret API key (ik_sk_...)",      "password": true    }  ],  "servers": {    "ikiform": {      "type": "http",      "url": "https://ikiform.com/mcp",      "headers": {        "Authorization": "Bearer ${input:ikiform-api-key}"      }    }  }}

Tools

The full list of tools and the scope each one needs is at https://ikiform.com/docs/mcp#tools.

The server also has a connect_form prompt that returns setup steps for a form.

Layout

.claude-plugin/marketplace.json        the "ikiform" marketplaceplugins/ikiform/  .claude-plugin/plugin.json           plugin manifest  .claude-plugin/icon.png              listing icon  .mcp.json                            the Ikiform MCP server  skills/ikiform/SKILL.md              the skill  skills/ikiform/references/*.md       detail the skill loads when neededserver.json                            MCP Registry listingglama.json                             Glama listing.github/workflows/publish-mcp.yml      publishes server.json to the MCP Registryscripts/check.mjs                      offline checks

Check changes

With Claude Code installed:

bash
claude plugin validate --strict .claude plugin validate --strict ./plugins/ikiform

Without it, or in CI, run the offline checks. They need Node 20 or later and no packages:

bash
node scripts/check.mjs

They check that every JSON file parses, that SKILL.md has a valid name and description under the Agent Skills limits, that its relative links resolve, and that the marketplace entry matches the plugin manifest.

To try a local copy before publishing:

bash
claude plugin marketplace add ./claude plugin install ikiform@ikiform

Docs

License

MIT. See LICENSE.

Source: README.md at commit 299d645

Tools

0
This server asks for a credential such as an API key, so SourceWeft could not read its tools without one and has not indexed them.

Version history

1
  1. v0.1.0LatestNov 8, 2026

Score

85% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts