Web3Forms MCP
An MCP server hosted by usefulapi that allows AI assistants to interact with Web3Forms. It enables users to list forms, read form submissions, and create new submissions programmatically. The server handles authentication via OAuth using a Web3Forms Submissions API key and provides tools for managing form data within the Web3Forms ecosystem.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://web3forms.usefulapi.io/mcpWhat you can do with it
- List all Web3Forms forms in the account
- Read the latest form submissions
- Create a test submission on a contact form
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- web3forms-mcp 1.0.0
- MCP protocol
- 2025-06-18
- Tools
- 4 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- 1 advertised
{
"tools": {
"listChanged": true
},
"prompts": {
"listChanged": true
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
4 advertised
web3forms_list_forms — List forms
List all Web3Forms forms in the account: form_id, form_name, created_at and total_count of submissions. Good first call to find a form_id. API: GET /forms.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {}
}{
"title": "List forms",
"readOnlyHint": true
}web3forms_list_submissions — List submissions
List submissions of one form, newest first, with fields, submitter IP address, user agent, site_url and attachments. Returns has_more and next_cursor: pass next_cursor as cursor to get the next page. API: GET /submissions.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"form_id"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Page size, 1-100 (default 50)."
},
"cursor": {
"type": "string",
"description": "next_cursor from a previous response."
},
"form_id": {
"type": "string",
"minLength": 1,
"description": "The form id (from web3forms_list_forms)."
}
}
}{
"title": "List submissions",
"readOnlyHint": true
}web3forms_get_submission — Get a submission
Get one submission by id (for example sub_a1b2c3d4e5f6), with its fields, IP address, user agent, site_url and attachments. API: GET /submissions/{id}.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"submission_id"
],
"properties": {
"submission_id": {
"type": "string",
"minLength": 1,
"description": "The submission id (from web3forms_list_submissions)."
}
}
}{
"title": "Get a submission",
"readOnlyHint": true
}web3forms_create_submission — Create a submission
WRITE: create a submission on a form you own, as if a visitor sent it. It is stored, counts toward the monthly quota, and sends the notification email, autoresponder and integrations. Needs a key with the 'Create submissions' permission. There is NO idempotency key: if a call times out, check web3forms_list_submissions before you retry, or you may create a duplicate. API: POST /submissions.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"form_id",
"fields"
],
"properties": {
"cc": {
"type": "string",
"description": "CC address."
},
"bcc": {
"type": "string",
"description": "BCC address."
},
"fields": {
"type": "object",
"description": "Form fields as name/value pairs (1 to 100 entries).",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"form_id": {
"type": "string",
"minLength": 1,
"description": "The form to submit to (must be a form you own)."
},
"replyto": {
"type": "string",
"description": "Reply-To address of the notification email."
},
"subject": {
"type": "string",
"description": "Override the notification email subject."
},
"metadata": {
"type": "object",
"properties": {
"ip": {
"type": "string"
},
"site_url": {
"type": "string"
},
"user_agent": {
"type": "string"
}
},
"description": "Attribution of the real submitter: ip, user_agent, site_url."
},
"from_name": {
"type": "string",
"description": "Override the sender name."
},
"preheader": {
"type": "string",
"description": "Email preheader text."
}
}
}{
"title": "Create a submission",
"destructiveHint": true
}Prompts
1 advertised
getting_started — Get started with Web3Forms
What you can do with Web3Forms here, with example requests to try.
Resources
Not advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 578 ms
- 95th percentile latency
- 578 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 578 ms · metadata changed · 4 tool(s), 1 prompt(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http web3forms-mcp https://web3forms.usefulapi.io/mcpCodex
codex mcp add web3forms-mcp --url https://web3forms.usefulapi.io/mcpCursor
{
"mcpServers": {
"web3forms-mcp": {
"url": "https://web3forms.usefulapi.io/mcp"
}
}
}Cline
{
"mcpServers": {
"web3forms-mcp": {
"type": "streamableHttp",
"url": "https://web3forms.usefulapi.io/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"web3forms-mcp": {
"type": "http",
"url": "https://web3forms.usefulapi.io/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http web3forms-mcp https://web3forms.usefulapi.io/mcpClaude Desktop
{
"mcpServers": {
"web3forms-mcp": {
"url": "https://web3forms.usefulapi.io/mcp"
}
}
}Windsurf
{
"mcpServers": {
"web3forms-mcp": {
"serverUrl": "https://web3forms.usefulapi.io/mcp"
}
}
}Let your agent find its tools
Find servers like Web3Forms MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other productivity and knowledge servers
Do you run Web3Forms MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.