PluginBench
MCP Server

Web Task MCP Server

io.github.rich-jojo/web-task-api

What is the Web Task MCP server?

Browser tasks, sessions, and recipes for MCP and HTTP automation.

How to install Web Task

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • WEB_TASK_API_DATA_DIR

    Optional mutable data root for web-task-api runs, sessions, profiles, and temp state. When omitted, the runtime uses a platform user-data directory instead of the ambient cwd.

  • WEB_TASK_API_RECIPES_DIR

    Optional recipes directory override. When omitted, web-task-api reads bundled recipes from the installed package.

  • WEB_TASK_API_TEMP_DIR

    Optional temp root override used when incoming temp env variables point at your home directory or working directory.

  • CLIPROXY_BASE_URL

    Optional CLIProxy base URL for the cliproxy planner backend.

  • CLIPROXY_AUTH_TOKEN
    secret

    Optional CLIProxy auth token for the cliproxy planner backend.

  • CLIPROXY_MODEL

    Optional CLIProxy model alias for the cliproxy planner backend.

  • OPENCODE_BASE_URL

    Optional OpenCode base URL for the opencode planner backend.

  • OPENCODE_MODEL

    Optional OpenCode model name for the opencode planner backend.

  • BROWSER_USER_DATA_DIR

    Optional existing Chromium/Chrome user-data directory for warmed browser state reuse.

  • BROWSER_CHANNEL

    Optional Playwright browser channel override, for example `chrome`.

  • HEADLESS

    Optional browser headless toggle. Set `false` to prefer a visible browser.

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "web-task-api": {
      "command": "npx",
      "args": [
        "-y",
        "web-task-api"
      ],
      "env": {
        "WEB_TASK_API_DATA_DIR": "<YOUR_WEB_TASK_API_DATA_DIR>",
        "WEB_TASK_API_RECIPES_DIR": "<YOUR_WEB_TASK_API_RECIPES_DIR>",
        "WEB_TASK_API_TEMP_DIR": "<YOUR_WEB_TASK_API_TEMP_DIR>",
        "CLIPROXY_BASE_URL": "<YOUR_CLIPROXY_BASE_URL>",
        "CLIPROXY_AUTH_TOKEN": "<YOUR_CLIPROXY_AUTH_TOKEN>",
        "CLIPROXY_MODEL": "<YOUR_CLIPROXY_MODEL>",
        "OPENCODE_BASE_URL": "<YOUR_OPENCODE_BASE_URL>",
        "OPENCODE_MODEL": "<YOUR_OPENCODE_MODEL>",
        "BROWSER_USER_DATA_DIR": "<YOUR_BROWSER_USER_DATA_DIR>",
        "BROWSER_CHANNEL": "<YOUR_BROWSER_CHANNEL>",
        "HEADLESS": "<YOUR_HEADLESS>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "web-task-api": {
      "command": "npx",
      "args": [
        "-y",
        "web-task-api"
      ],
      "env": {
        "WEB_TASK_API_DATA_DIR": "<YOUR_WEB_TASK_API_DATA_DIR>",
        "WEB_TASK_API_RECIPES_DIR": "<YOUR_WEB_TASK_API_RECIPES_DIR>",
        "WEB_TASK_API_TEMP_DIR": "<YOUR_WEB_TASK_API_TEMP_DIR>",
        "CLIPROXY_BASE_URL": "<YOUR_CLIPROXY_BASE_URL>",
        "CLIPROXY_AUTH_TOKEN": "<YOUR_CLIPROXY_AUTH_TOKEN>",
        "CLIPROXY_MODEL": "<YOUR_CLIPROXY_MODEL>",
        "OPENCODE_BASE_URL": "<YOUR_OPENCODE_BASE_URL>",
        "OPENCODE_MODEL": "<YOUR_OPENCODE_MODEL>",
        "BROWSER_USER_DATA_DIR": "<YOUR_BROWSER_USER_DATA_DIR>",
        "BROWSER_CHANNEL": "<YOUR_BROWSER_CHANNEL>",
        "HEADLESS": "<YOUR_HEADLESS>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "web-task-api": {
      "command": "npx",
      "args": [
        "-y",
        "web-task-api"
      ],
      "env": {
        "WEB_TASK_API_DATA_DIR": "<YOUR_WEB_TASK_API_DATA_DIR>",
        "WEB_TASK_API_RECIPES_DIR": "<YOUR_WEB_TASK_API_RECIPES_DIR>",
        "WEB_TASK_API_TEMP_DIR": "<YOUR_WEB_TASK_API_TEMP_DIR>",
        "CLIPROXY_BASE_URL": "<YOUR_CLIPROXY_BASE_URL>",
        "CLIPROXY_AUTH_TOKEN": "<YOUR_CLIPROXY_AUTH_TOKEN>",
        "CLIPROXY_MODEL": "<YOUR_CLIPROXY_MODEL>",
        "OPENCODE_BASE_URL": "<YOUR_OPENCODE_BASE_URL>",
        "OPENCODE_MODEL": "<YOUR_OPENCODE_MODEL>",
        "BROWSER_USER_DATA_DIR": "<YOUR_BROWSER_USER_DATA_DIR>",
        "BROWSER_CHANNEL": "<YOUR_BROWSER_CHANNEL>",
        "HEADLESS": "<YOUR_HEADLESS>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "web-task-api": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "web-task-api"
      ],
      "env": {
        "WEB_TASK_API_DATA_DIR": "<YOUR_WEB_TASK_API_DATA_DIR>",
        "WEB_TASK_API_RECIPES_DIR": "<YOUR_WEB_TASK_API_RECIPES_DIR>",
        "WEB_TASK_API_TEMP_DIR": "<YOUR_WEB_TASK_API_TEMP_DIR>",
        "CLIPROXY_BASE_URL": "<YOUR_CLIPROXY_BASE_URL>",
        "CLIPROXY_AUTH_TOKEN": "<YOUR_CLIPROXY_AUTH_TOKEN>",
        "CLIPROXY_MODEL": "<YOUR_CLIPROXY_MODEL>",
        "OPENCODE_BASE_URL": "<YOUR_OPENCODE_BASE_URL>",
        "OPENCODE_MODEL": "<YOUR_OPENCODE_MODEL>",
        "BROWSER_USER_DATA_DIR": "<YOUR_BROWSER_USER_DATA_DIR>",
        "BROWSER_CHANNEL": "<YOUR_BROWSER_CHANNEL>",
        "HEADLESS": "<YOUR_HEADLESS>"
      }
    }
  }
}
Claude Code
claude mcp add web-task-api --env WEB_TASK_API_DATA_DIR=<YOUR_WEB_TASK_API_DATA_DIR> --env WEB_TASK_API_RECIPES_DIR=<YOUR_WEB_TASK_API_RECIPES_DIR> --env WEB_TASK_API_TEMP_DIR=<YOUR_WEB_TASK_API_TEMP_DIR> --env CLIPROXY_BASE_URL=<YOUR_CLIPROXY_BASE_URL> --env CLIPROXY_AUTH_TOKEN=<YOUR_CLIPROXY_AUTH_TOKEN> --env CLIPROXY_MODEL=<YOUR_CLIPROXY_MODEL> --env OPENCODE_BASE_URL=<YOUR_OPENCODE_BASE_URL> --env OPENCODE_MODEL=<YOUR_OPENCODE_MODEL> --env BROWSER_USER_DATA_DIR=<YOUR_BROWSER_USER_DATA_DIR> --env BROWSER_CHANNEL=<YOUR_BROWSER_CHANNEL> --env HEADLESS=<YOUR_HEADLESS> -- npx -y web-task-api

Related MCP servers

Web search, direct-URL fetch, crawl, and docs export MCP. smartfetch for URLs.

View repository →