Skip to content
ToolCargo

The MCP directory / Open to explore

MCP server directory.
Find your next tool.

Search 3,974 indexed servers from the official MCP Registry and selected vendor documentation. Find remote endpoints and local packages, inspect the publisher’s setup details, then connect in your AI client.

Where will your next task take you?

Free discovery · no account · no API key

Let your agent do the finding.

Paste into your AI agent
Read https://toolcargo.com/agents.txt, then find the MCP servers I need and help me connect them. Ask me what I want to do first.

Or add https://toolcargo.com/mcp as a Streamable HTTP MCP server. Discovery is free and needs no account.

Compare task fit, publisher, permissions and a small acceptance test with the MCP server selection guide.

Connect directly to official MCP servers

Vendor setup guides for your existing accounts. These connections run with the vendor; ToolCargo does not host them or supply their credentials.

Browse the remote MCP server directory →

Not sure which connection to choose? Read local vs remote MCP servers. Building a discovery workflow? See the MCP server search API reference.

CloakBrowser MCP

Close details

Playwright MCP-compatible browser automation bridge for CloakBrowser Chromium.

Directory identity: io.github.swimmwatch/cloakbrowser-mcp · Version: 1.14.1

Publisher connection metadata
{
  "remotes": [],
  "packages": [
    {
      "registryType": "npm",
      "registryBaseUrl": "https://registry.npmjs.org",
      "identifier": "cloakbrowser-mcp",
      "version": "1.14.1",
      "transport": {
        "type": "stdio"
      },
      "environmentVariables": [
        {
          "description": "Bridge browser engine: cloak or playwright.",
          "format": "string",
          "default": "cloak",
          "name": "PLAYWRIGHT_MCP_BROWSER_ENGINE"
        },
        {
          "description": "Run the browser in headless mode.",
          "format": "boolean",
          "default": "true",
          "name": "PLAYWRIGHT_MCP_HEADLESS"
        },
        {
          "description": "Directory where upstream Playwright MCP writes artifacts.",
          "format": "filepath",
          "default": ".playwright-mcp",
          "name": "PLAYWRIGHT_MCP_OUTPUT_DIR"
        },
        {
          "description": "Generate code in typescript, python, java, csharp, or none.",
          "format": "string",
          "default": "typescript",
          "name": "PLAYWRIGHT_MCP_CODEGEN"
        },
        {
          "description": "Include element bounding boxes in browser snapshots.",
          "format": "boolean",
          "default": "false",
          "name": "PLAYWRIGHT_MCP_SNAPSHOT_BOXES"
        },
        {
          "description": "Milliseconds to wait after actions for triggered work to settle.",
          "format": "number",
          "default": "500",
          "name": "PLAYWRIGHT_MCP_TIMEOUT_SETTLE"
        },
        {
          "description": "Persistent Chromium profile directory. The bridge resolves it to an absolute path and writes it to generated Playwright MCP config.",
          "format": "filepath",
          "name": "PLAYWRIGHT_MCP_USER_DATA_DIR"
        },
        {
          "description": "JSON object with validated Playwright context options such as viewport, locale, timezoneId, permissions, geolocation, and headers.",
          "format": "string",
          "name": "CLOAK_PLAYWRIGHT_MCP_CONTEXT_OPTIONS"
        },
        {
          "description": "JSON array or comma-separated list of Chrome extension directories. Requires PLAYWRIGHT_MCP_USER_DATA_DIR.",
          "format": "string",
          "name": "CLOAK_PLAYWRIGHT_MCP_EXTENSION_PATHS"
        },
        {
          "description": "Patch upstream console message collection for CloakBrowser compatibility.",
          "format": "boolean",
          "default": "true",
          "name": "CLOAK_PLAYWRIGHT_MCP_CONSOLE_FALLBACK"
        },
        {
          "description": "Resolve proxy GeoIP and match CloakBrowser timezone/locale fingerprint flags when PLAYWRIGHT_MCP_PROXY_SERVER is set.",
          "format": "boolean",
          "default": "false",
          "name": "CLOAK_PLAYWRIGHT_MCP_GEOIP_PROXY_MATCH"
        },
        {
          "description": "Comma-separated or JSON array of extra Chromium launch arguments.",
          "format": "string",
          "name": "CLOAK_PLAYWRIGHT_MCP_EXTRA_ARGS"
        }
      ]
    },
    {
      "registryType": "npm",
      "registryBaseUrl": "https://registry.npmjs.org",
      "identifier": "cloakbrowser-mcp",
      "version": "1.14.1",
      "transport": {
        "type": "streamable-http",
        "url": "http://127.0.0.1:3000/mcp"
      },
      "packageArguments": [
        {
          "value": "streamable-http",
          "type": "named",
          "name": "--transport"
        }
      ],
      "environmentVariables": [
        {
          "description": "Streamable HTTP bind host.",
          "format": "string",
          "default": "127.0.0.1",
          "name": "CLOAK_PLAYWRIGHT_MCP_HTTP_HOST"
        },
        {
          "description": "Streamable HTTP bind port.",
          "format": "number",
          "default": "3000",
          "name": "CLOAK_PLAYWRIGHT_MCP_HTTP_PORT"
        },
        {
          "description": "Streamable HTTP endpoint path.",
          "format": "string",
          "default": "/mcp",
          "name": "CLOAK_PLAYWRIGHT_MCP_HTTP_ENDPOINT"
        },
        {
          "description": "Optional Streamable HTTP Bearer token.",
          "format": "string",
          "isSecret": true,
          "name": "CLOAK_PLAYWRIGHT_MCP_HTTP_AUTH_TOKEN"
        },
        {
          "description": "Session metadata backend. Only memory is implemented in this release.",
          "format": "string",
          "default": "memory",
          "name": "CLOAK_PLAYWRIGHT_MCP_HTTP_SESSION_BACKEND"
        },
        {
          "description": "Idle TTL for Streamable HTTP sessions.",
          "format": "number",
          "default": "3600000",
          "name": "CLOAK_PLAYWRIGHT_MCP_HTTP_SESSION_IDLE_TTL_MS"
        },
        {
          "description": "Maximum active Streamable HTTP sessions in one process.",
          "format": "number",
          "default": "32",
          "name": "CLOAK_PLAYWRIGHT_MCP_HTTP_SESSION_MAX"
        },
        {
          "description": "Bridge browser engine: cloak or playwright.",
          "format": "string",
          "default": "cloak",
          "name": "PLAYWRIGHT_MCP_BROWSER_ENGINE"
        },
        {
          "description": "Run the browser in headless mode.",
          "format": "boolean",
          "default": "true",
          "name": "PLAYWRIGHT_MCP_HEADLESS"
        },
        {
          "description": "Directory where upstream Playwright MCP writes artifacts.",
          "format": "filepath",
          "default": ".playwright-mcp",
          "name": "PLAYWRIGHT_MCP_OUTPUT_DIR"
        },
        {
          "description": "Generate code in typescript, python, java, csharp, or none.",
          "format": "string",
          "default": "typescript",
          "name": "PLAYWRIGHT_MCP_CODEGEN"
        },
        {
          "description": "Include element bounding boxes in browser snapshots.",
          "format": "boolean",
          "default": "false",
          "name": "PLAYWRIGHT_MCP_SNAPSHOT_BOXES"
        },
        {
          "description": "Milliseconds to wait after actions for triggered work to settle.",
          "format": "number",
          "default": "500",
          "name": "PLAYWRIGHT_MCP_TIMEOUT_SETTLE"
        },
        {
          "description": "Persistent Chromium profile directory. The bridge resolves it to an absolute path and writes it to generated Playwright MCP config.",
          "format": "filepath",
          "name": "PLAYWRIGHT_MCP_USER_DATA_DIR"
        },
        {
          "description": "JSON object with validated Playwright context options such as viewport, locale, timezoneId, permissions, geolocation, and headers.",
          "format": "string",
          "name": "CLOAK_PLAYWRIGHT_MCP_CONTEXT_OPTIONS"
        },
        {
          "description": "JSON array or comma-separated list of Chrome extension directories. Requires PLAYWRIGHT_MCP_USER_DATA_DIR.",
          "format": "string",
          "name": "CLOAK_PLAYWRIGHT_MCP_EXTENSION_PATHS"
        },
        {
          "description": "Patch upstream console message collection for CloakBrowser compatibility.",
          "format": "boolean",
          "default": "true",
          "name": "CLOAK_PLAYWRIGHT_MCP_CONSOLE_FALLBACK"
        },
        {
          "description": "Resolve proxy GeoIP and match CloakBrowser timezone/locale fingerprint flags when PLAYWRIGHT_MCP_PROXY_SERVER is set.",
          "format": "boolean",
          "default": "false",
          "name": "CLOAK_PLAYWRIGHT_MCP_GEOIP_PROXY_MATCH"
        },
        {
          "description": "Comma-separated or JSON array of extra Chromium launch arguments.",
          "format": "string",
          "name": "CLOAK_PLAYWRIGHT_MCP_EXTRA_ARGS"
        }
      ]
    },
    {
      "registryType": "oci",
      "identifier": "ghcr.io/swimmwatch/cloakbrowser-mcp:1.14.1",
      "transport": {
        "type": "stdio"
      },
      "environmentVariables": [
        {
          "description": "Bridge browser engine: cloak or playwright.",
          "format": "string",
          "default": "cloak",
          "name": "PLAYWRIGHT_MCP_BROWSER_ENGINE"
        },
        {
          "description": "Run the browser in headless mode.",
          "format": "boolean",
          "default": "true",
          "name": "PLAYWRIGHT_MCP_HEADLESS"
        },
        {
          "description": "Directory inside the container where upstream Playwright MCP writes artifacts.",
          "format": "filepath",
          "default": "/data",
          "name": "PLAYWRIGHT_MCP_OUTPUT_DIR"
        },
        {
          "description": "Generate code in typescript, python, java, csharp, or none.",
          "format": "string",
          "default": "typescript",
          "name": "PLAYWRIGHT_MCP_CODEGEN"
        },
        {
          "description": "Include element bounding boxes in browser snapshots.",
          "format": "boolean",
          "default": "false",
          "name": "PLAYWRIGHT_MCP_SNAPSHOT_BOXES"
        },
        {
          "description": "Milliseconds to wait after actions for triggered work to settle.",
          "format": "number",
          "default": "500",
          "name": "PLAYWRIGHT_MCP_TIMEOUT_SETTLE"
        },
        {
          "description": "Persistent Chromium profile directory inside the container. Use /data/profiles/... with the existing /data volume.",
          "format": "filepath",
          "name": "PLAYWRIGHT_MCP_USER_DATA_DIR"
        },
        {
          "description": "JSON object with validated Playwright context options such as viewport, locale, timezoneId, permissions, geolocation, and headers.",
          "format": "string",
          "name": "CLOAK_PLAYWRIGHT_MCP_CONTEXT_OPTIONS"
        },
        {
          "description": "JSON array or comma-separated list of Chrome extension directories inside the container. Requires PLAYWRIGHT_MCP_USER_DATA_DIR.",
          "format": "string",
          "name": "CLOAK_PLAYWRIGHT_MCP_EXTENSION_PATHS"
        },
        {
          "description": "Patch upstream console message collection for CloakBrowser compatibility.",
          "format": "boolean",
          "default": "true",
          "name": "CLOAK_PLAYWRIGHT_MCP_CONSOLE_FALLBACK"
        },
        {
          "description": "Resolve proxy GeoIP and match CloakBrowser timezone/locale fingerprint flags when PLAYWRIGHT_MCP_PROXY_SERVER is set.",
          "format": "boolean",
          "default": "false",
          "name": "CLOAK_PLAYWRIGHT_MCP_GEOIP_PROXY_MATCH"
        },
        {
          "description": "Comma-separated or JSON array of extra Chromium launch arguments.",
          "format": "string",
          "name": "CLOAK_PLAYWRIGHT_MCP_EXTRA_ARGS"
        }
      ]
    },
    {
      "registryType": "oci",
      "identifier": "docker.io/swimmwatch/cloakbrowser-mcp:1.14.1",
      "transport": {
        "type": "stdio"
      },
      "environmentVariables": [
        {
          "description": "Bridge browser engine: cloak or playwright.",
          "format": "string",
          "default": "cloak",
          "name": "PLAYWRIGHT_MCP_BROWSER_ENGINE"
        },
        {
          "description": "Run the browser in headless mode.",
          "format": "boolean",
          "default": "true",
          "name": "PLAYWRIGHT_MCP_HEADLESS"
        },
        {
          "description": "Directory inside the container where upstream Playwright MCP writes artifacts.",
          "format": "filepath",
          "default": "/data",
          "name": "PLAYWRIGHT_MCP_OUTPUT_DIR"
        },
        {
          "description": "Generate code in typescript, python, java, csharp, or none.",
          "format": "string",
          "default": "typescript",
          "name": "PLAYWRIGHT_MCP_CODEGEN"
        },
        {
          "description": "Include element bounding boxes in browser snapshots.",
          "format": "boolean",
          "default": "false",
          "name": "PLAYWRIGHT_MCP_SNAPSHOT_BOXES"
        },
        {
          "description": "Milliseconds to wait after actions for triggered work to settle.",
          "format": "number",
          "default": "500",
          "name": "PLAYWRIGHT_MCP_TIMEOUT_SETTLE"
        },
        {
          "description": "Persistent Chromium profile directory inside the container. Use /data/profiles/... with the existing /data volume.",
          "format": "filepath",
          "name": "PLAYWRIGHT_MCP_USER_DATA_DIR"
        },
        {
          "description": "JSON object with validated Playwright context options such as viewport, locale, timezoneId, permissions, geolocation, and headers.",
          "format": "string",
          "name": "CLOAK_PLAYWRIGHT_MCP_CONTEXT_OPTIONS"
        },
        {
          "description": "JSON array or comma-separated list of Chrome extension directories inside the container. Requires PLAYWRIGHT_MCP_USER_DATA_DIR.",
          "format": "string",
          "name": "CLOAK_PLAYWRIGHT_MCP_EXTENSION_PATHS"
        },
        {
          "description": "Patch upstream console message collection for CloakBrowser compatibility.",
          "format": "boolean",
          "default": "true",
          "name": "CLOAK_PLAYWRIGHT_MCP_CONSOLE_FALLBACK"
        },
        {
          "description": "Resolve proxy GeoIP and match CloakBrowser timezone/locale fingerprint flags when PLAYWRIGHT_MCP_PROXY_SERVER is set.",
          "format": "boolean",
          "default": "false",
          "name": "CLOAK_PLAYWRIGHT_MCP_GEOIP_PROXY_MATCH"
        },
        {
          "description": "Comma-separated or JSON array of extra Chromium launch arguments.",
          "format": "string",
          "name": "CLOAK_PLAYWRIGHT_MCP_EXTRA_ARGS"
        }
      ]
    }
  ]
}

Remote URLs go into your client's MCP settings. Local packages need a compatible runtime. Check required headers, environment variables, permissions and provider costs before setup.

Publisher repository ↗

3,974 results

Index updated 2026-10-02

This directory combines dated registry listings and selected vendor-documentation entries. Documentation checks are not live account or client verification. Third-party servers run with their own providers, credentials and pricing. ToolCargo discovery supplies setup metadata; it does not run their tools. Explore ToolCargo's hosted connectors.