Web2Actions
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Web2Actionscapture my CRM's traffic and expose it as MCP tools"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Web2Actions
Turn a website into an MCP server your AI agent can use — no API required.
Web2Actions watches a website's browser traffic, reverse-engineers the site's real network endpoints, and packages them into a clean set of named tools your AI agent can call via Model Context Protocol (MCP). No public API required.
How it works
Capture — log into a site once; the browser traffic is recorded.
Generate — an LLM turns the captured traffic into a connector definition: clean named tools with inputs, outputs, and risk tags.
Validate — every tool is smoke-tested against the live site.
Serve — the validated connector is exposed as a standard MCP server.
Capture is human-driven, not automatic. We don't guess every button or click the site for you. A real browser opens on your machine; you log in and perform the actions you want turned into tools, and we record that traffic. The same philosophy applies in the hosted product — it's a popup browser you drive. The CLI just runs that browser for you.
Related MCP server: ApiTap
Install
pip install -e .Commands
Every command is web2actions <command> [options].
model — choose your LLM provider and model (persisted)
web2actions model # show current
web2actions model google/gemini-2.5-flash # set default model (persisted)
web2actions model --provider openrouter # set default provider
web2actions model --alias sonnet=anthropic/claude-sonnet-4 # alias
web2actions model --aliases # list aliasescapture — record a site's traffic
Opens a browser to the URL, records the network traffic you generate as you log in and click, then writes a JSON dump.
# Open the site; log in and click around manually; press Enter when done.
web2actions capture https://app.example.com
# Filter out analytics/static noise and save to a chosen file.
web2actions capture https://app.example.com --filter -o dump.json
# Automate a simple form login (fill + submit), then continue capturing.
web2actions capture https://app.example.com --login \
--username you@example.com --password "..." \
--username-selector "#username" --password-selector "#password" \
--submit-selector "#submit-btn" --success-indicator "#dashboard"Options: --login, --username, --password, --username-selector,
--password-selector, --submit-selector, --success-indicator,
--filter, --output/-o.
generate — turn captured traffic into a connector definition
web2actions generate dump.json --model claude-sonnet-4 -o connector.jsonOptions: --model (or WEB2ACTIONS_MODEL env), --output/-o.
validate — check a connector against the schema
web2actions validate connector.json
# -> VALIDserve — expose a connector as an MCP server (stdio)
web2actions serve connector.jsonWires the connector to your AI agent's MCP client over stdio.
End-to-end example
web2actions capture https://example.com --filter -o dump.json
web2actions generate dump.json --model claude-sonnet-4 -o connector.json
web2actions validate connector.json
web2actions serve connector.jsonStart from an existing example (no capture needed)
web2actions validate connector-spec/examples/simple-crm.json
web2actions serve connector-spec/examples/simple-crm.jsonBringing your own LLM (BYOK)
Web2Actions uses litellm, which connects to 100+ providers through one OpenAI-compatible interface. You pick a provider and a model with simple commands — no code changes, and the choice is remembered for future runs.
Supported providers
litellm supports 100+ providers, including OpenAI, Anthropic, Google Gemini, OpenRouter, DeepSeek, Groq, xAI, Mistral, OpenAI-compatible local servers (Ollama / llama.cpp / vLLM), Bedrock, Azure, and more.
Each provider reads its standard API-key environment variable (for example
OPENAI_API_KEY, ANTHROPIC_API_KEY, GEMINI_API_KEY, OPENROUTER_API_KEY,
DEEPSEEK_API_KEY, GROQ_API_KEY, XAI_API_KEY) or, for local servers,
needs no key at all.
Set the default model with a simple command
# Pick a provider + model once; it is remembered (saved to ~/.web2actions/config.toml)
web2actions model openai/gpt-4o-mini
web2actions model anthropic/claude-sonnet-4
web2actions model gemini/gemini-2.5-flash
web2actions model openrouter/anthropic/claude-sonnet-4
web2actions model deepseek/deepseek-chat
# Show the current model
web2actions model
# Set a default provider
web2actions model --provider openrouter
# Add a short alias, then use it anywhere
web2actions model --alias sonnet=anthropic/claude-sonnet-4
web2actions generate dump.json --model sonnet
# List your aliases
web2actions model --aliasesOnce set, generate uses that model automatically:
web2actions model google/gemini-2.5-flash
export GEMINI_API_KEY=... # only needed the first time, per provider
web2actions generate dump.json # uses gemini-2.5-flashOverride per run
Pass --model to use a different provider/model for a single command, or set
the WEB2ACTIONS_MODEL env var. Precedence: --model > WEB2ACTIONS_MODEL >
saved config.
web2actions generate dump.json --model openai/gpt-4o-miniIf no key is set
generate fails gracefully and tells you which key to set — it never crashes
with a raw stack trace.
Repository layout
connector-spec/— the connector definition schema + validatorcapture/— browser session + traffic recording + noise filteringgenerate/— LLM extraction (cheap path) + sandboxed fallbackvalidate/— live tool smoke tests + risk taggingmcp-runtime/— the shared MCP server that serves any connectorcli/— theweb2actionscommand-line wrapper
License
Apache-2.0. Built on top of the open-source CLI-Anything / CLI-Anything-Web projects.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables real browser automation as tools in Cursor, Claude Desktop, Windsurf, and any MCP-compatible client, allowing AI agents to interact with web pages through natural language.24MIT
- AlicenseNot gradedqualityAmaintenanceMCP server that turns any website into an API by capturing or importing API endpoints, enabling AI agents to interact with web services without a browser, with 20-100x token cost reduction versus browser automation.159124Apache 2.0
- AlicenseNot gradedqualityCmaintenanceCaptures browser network traffic, analyzes API patterns, and exposes analysis tools through an MCP server for AI-assisted workflows.1MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to call web APIs extracted from HAR files, turning browser traffic into MCP tools.261MIT
Related MCP Connectors
Screenshot, diff, audit and sitemap-capture any web page — 5 MCP tools for AI agents.
Live browser debugging for AI assistants — DOM, console, network via MCP.
Stealth web browser for agents: search, fetch, click, download and type in persistent MCP sessions.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/rashidb0t/web2actions'
If you have feedback or need assistance with the MCP directory API, please join our Discord server