☁️

Cloudflare MCP Server

Updated June 2026✓ Official⭐ FeaturedTrust grade A96/100

Cloudflare ships two different things under this name. Built by Cloudflare, it is officially maintained and best for Cloud.

by Cloudflare

About

Cloudflare ships two different things under this name. The mcp-server-cloudflare repo provides 16 remote, domain-specific MCP servers rather than one monolith — Documentation, Workers Bindings (storage/AI/compute primitives), Workers Builds, Observability (logs/analytics), Container sandboxes, Browser Rendering (fetch pages, convert to markdown, screenshots), Logpush health, AI Gateway (prompt/response search), AI Search, Audit Logs, DNS Analytics, Digital Experience Monitoring, Cloudflare One CASB, Radar, GraphQL analytics and the Agents SDK docs server, each on its own `*.mcp.cloudflare.com/mcp` hostname. Separately, the Cloudflare API MCP server at mcp.cloudflare.com/mcp (repo: cloudflare/mcp) exposes the whole 2,500+ endpoint Cloudflare API through just two tools, `search` and `execute`, using the Code Mode pattern — model-written JavaScript runs in an isolated Dynamic Worker, costing ~1,000 tokens of context against the ~1.17M an equivalent native-tool server would need. Pick a domain server when you want a readable, curated tool list for one product area; pick the API server for breadth or for endpoints nobody wrote a tool for. All endpoints are Streamable HTTP on `/mcp` and support the MCP 2026-07-28 spec; the historical `/sse` URLs remain as aliases for the same Streamable HTTP handler but no longer serve the deprecated HTTP+SSE transport, so clients pinned to SSE must switch. Auth is OAuth on connect, or a scoped Cloudflare API token as a bearer header for CI. Clients without native remote-MCP support bridge via `npx mcp-remote https://<subdomain>.mcp.cloudflare.com/mcp`.

A
Reliable96/100
high confidence · 4 measured signals

Grade A (96/100, reliable) from 4 measured signals, based on live MCP handshakes.

What was measured

  • Live MCP handshake100/100 · weight 30

    Completed a full Model Context Protocol handshake on the last check and returned a tool list. (2 tools exposed, 448 ms handshake, protocol 2025-11-25)

  • Measured uptime100/100 · weight 20

    Answered 200 of 200 recorded checks (100%). A check counts as answered when the server completed the MCP handshake in any form, including an auth challenge.

  • Tool-schema stability70/100 · weight 15

    1 schema or protocol change recorded in the last 90 days. Tools appearing, vanishing or changing shape underneath a running agent is the single largest preventable class of MCP failure.

  • Repository maintenance100/100 · weight 20

    The repository has been pushed to or released within the last six months. — last push 2026-06-27, last release 2026-06-02 (graphql-mcp-server@0.2.1).

  • Source verification100/100 · weight 25

    The repository URL was confirmed to resolve against the live GitHub API and is not archived.

  • Provenance90/100 · weight 10

    Published and maintained by the vendor of the service it connects to, rather than by a third party.

  • Listing ↔ repository match100/100 · weight 5

    The listing name lines up with the linked repository cloudflare/mcp-server-cloudflare.

Installation

remote
claude mcp add --transport http cloudflare-api https://mcp.cloudflare.com/mcp

"The Cloudflare MCP server" is not one thing, and picking the wrong one is the main way this goes badly. There are two families. The Cloudflare API MCP server at https://mcp.cloudflare.com/mcp exposes the entire Cloudflare API — over 2,500 endpoints across DNS, Workers, R2 and Zero Trust — behind exactly two tools, search and execute, using the Code Mode pattern. Separately there are sixteen product-specific servers, each on its own *.mcp.cloudflare.com/mcp hostname, with curated tools for one area: Observability, Workers Bindings, Radar, Browser Rendering, DNS Analytics, CASB and so on. The rule of thumb: if the task spans products or touches an endpoint nobody wrote a tool for, use the API server; if you want a small, legible tool list for one product — and want to see the tool names in your client — pick the product server. The two repos are different too, which is why star counts and issue trackers disagree: the API server is cloudflare/mcp, the sixteen are cloudflare/mcp-server-cloudflare.

Connecting to Cloudflare MCP

  1. 1.The API server — one URL, OAuth on first use

    There is nothing to install and no package to pin. Add the URL, and on connect you are redirected to Cloudflare to authorize and choose which permissions the agent gets. Use the /mcp Streamable HTTP endpoint for anything new.

    json
    {
      "mcpServers": {
        "cloudflare-api": {
          "url": "https://mcp.cloudflare.com/mcp"
        }
      }
    }
  2. 2.A product-specific server — same shape, different hostname

    Every one of the sixteen follows the pattern https://<subdomain>.mcp.cloudflare.com/mcp. Nothing stops you adding several at once; each authorizes separately, and each adds its own tools to the context, which is the cost you are trading against the API server's two.

    shell
    claude mcp add --transport http cloudflare-observability https://observability.mcp.cloudflare.com/mcp
    claude mcp add --transport http cloudflare-bindings https://bindings.mcp.cloudflare.com/mcp
  3. 3.Clients that cannot speak remote MCP

    Older clients that only launch local processes need a bridge. mcp-remote runs as a stdio child and proxies to the remote endpoint, handling the OAuth browser flow on your behalf. Swap the subdomain for whichever server you want.

    json
    {
      "mcpServers": {
        "cloudflare": {
          "command": "npx",
          "args": ["mcp-remote", "https://bindings.mcp.cloudflare.com/mcp"]
        }
      }
    }
  4. 4.CI, where no browser exists

    OAuth is not an option in automation. Create a Cloudflare API token scoped to what the job needs and send it as a bearer token in the Authorization header — both user tokens and account tokens are accepted. This is the one place a long-lived credential belongs.

    http
    Authorization: Bearer <cloudflare-api-token>
  5. 5.Or install the skills plugin instead of wiring servers by hand

    cloudflare/skills bundles the MCP servers together with contextual skills and slash commands for building on Cloudflare. It works with any agent supporting the Agent Skills standard — Claude Code, OpenCode, OpenAI Codex and Pi. Cursor takes it from its marketplace, or via Settings → Rules → Add Rule → Remote Rule (GitHub) with cloudflare/skills.

    shell
    # Claude Code
    /plugin marketplace add cloudflare/skills
    
    # any agent, via the skills CLI
    npx skills add https://github.com/cloudflare/skills

Why the API server shows only two tools

Code Mode replaces a tool-per-endpoint listing with a sandbox the model writes JavaScript into. Cloudflare publishes the arithmetic: 2,594 endpoints as native MCP tools costs roughly 1,170,000 tokens of context with full schemas, or ~244,000 with required parameters only. Code Mode costs about 1,000 tokens, and stays there no matter how many endpoints exist — more than the entire context window of most models, reduced to a rounding error.

search

Runs model-written code against the OpenAPI document and returns only the operations, parameters or schemas the task needs. The full spec never leaves the sandbox — that is the whole point.

execute

Runs model-written code with an authenticated request function (codemode.request({ method, path })). The code composes calls and returns a focused result; the credential itself is never handed to the generated code.

(product servers)

The sixteen domain servers are ordinary MCP servers with named tools — observability query tools, binding creation, Radar traffic lookups, page-to-markdown rendering. Use these when you want to read the tool list rather than trust generated code.

What people use it for

Debug a Worker that is throwing in production

Using the Cloudflare observability server, show me the errors my Worker has logged in the last hour, grouped by message, and tell me which route they came from.

This is what the Observability server at observability.mcp.cloudflare.com exists for, and it is a case where the product server beats the API server: the tools are already shaped like the question.

Change something the tool list does not cover

Find the Cloudflare API operations for zone rulesets, then list the rulesets on this zone with their id, name and phase.

Two calls: search narrows the OpenAPI document to /rulesets, execute runs the request. This is exactly the case the sixteen product servers cannot serve — nobody wrote a ruleset tool, but the endpoint has always been there.

Turn a live page into markdown without leaving the agent

Fetch this URL with the Cloudflare Browser Rendering server and give me the page as markdown, plus a screenshot.

browser.mcp.cloudflare.com renders and converts server-side. Worth knowing it exists before reaching for a scraping server — if you are already on Cloudflare, this needs no new account.

Which one should you use?

The useful comparison here is mostly internal — Cloudflare against itself.

Cloudflare API server vs the sixteen product servers

API server for breadth and a fixed ~1,000-token context cost; product servers for a legible tool list in one area. Most people end up with the API server plus one product server, not sixteen.

Cloudflare Browser Rendering vs Playwright MCP

Browser Rendering for stateless fetch-and-convert on infrastructure you already pay for. Playwright when the agent needs a persistent, interactive browser session it can click through.

Cloudflare Observability vs Sentry

Observability reads Workers logs and analytics at the platform level. Sentry is application-level error grouping across whatever you deploy. They answer different halves of "why is it broken".

Frequently Asked Questions

Which Cloudflare MCP server should I install?
Start with the API server at https://mcp.cloudflare.com/mcp if you want one connection that can reach anything, and accept that you cannot see the tool names in advance. Add a product-specific server when you are working inside one area repeatedly — Observability for debugging, Workers Bindings for building, Radar for Internet data — because its tools are curated and readable. Adding all sixteen is the one clearly wrong answer: you pay their combined tool descriptions on every request.
Why does my client fail to connect to the /sse endpoint?
The historical /sse URLs still resolve, but they are aliases pointing at the same Streamable HTTP handler — they no longer serve the deprecated HTTP+SSE transport. A client configured to force SSE will fail against a URL that looks correct. Switch it to Streamable HTTP or to automatic transport detection. The servers support the MCP 2026-07-28 specification and also accept stateless requests from 2025-era Streamable HTTP clients.
Is it safe to let the model write code against my Cloudflare account?
The sandbox is real: generated code runs in an isolated Dynamic Worker with direct outbound network access blocked by default, reaching external systems only through upstream MCP tools or the host request callback. But Cloudflare states plainly that code execution does not replace authorization — the sandbox stops exfiltration, it does not stop a destructive API call you granted permission for. Scope the OAuth grant, or the API token in CI, to what the agent actually needs.
Which repository do I file an issue against?
cloudflare/mcp is the API/Code Mode server. cloudflare/mcp-server-cloudflare is the monorepo behind all sixteen product servers, one directory per app under apps/. cloudflare/skills is the plugin bundle, not a server. Third-party write-ups routinely conflate the first two, which is also why you will see wildly different star counts cited for "the Cloudflare MCP server".
Do I need to install anything to use these?
No, and that is a change from most catalog entries. Every Cloudflare server is remote and hosted; the only npm package in the picture is mcp-remote, and only for clients that cannot open a remote MCP connection themselves. If a guide tells you to npm install a Cloudflare MCP server, it is describing a setup that no longer exists.
What is Cloudflare MCP Server?
Cloudflare is an MCP server built by Cloudflare. Cloudflare ships two different things under this name. The mcp-server-cloudflare repo provides 16 remote, domain-specific MCP servers rather than one monolith — Documentation, Workers Bindings (storage/AI/compute primitives), Workers Builds, Observability (logs/analytics), Container sandboxes, Browser Rendering (fetch pages, convert to markdown, screenshots), Logpush health, AI Gateway (prompt/response search), AI Search, Audit Logs, DNS Analytics, Digital Experience Monitoring, Cloudflare One CASB, Radar, GraphQL analytics and the Agents SDK docs server, each on its own `*.mcp.cloudflare.com/mcp` hostname. Separately, the Cloudflare API MCP server at mcp.cloudflare.com/mcp (repo: cloudflare/mcp) exposes the whole 2,500+ endpoint Cloudflare API through just two tools, `search` and `execute`, using the Code Mode pattern — model-written JavaScript runs in an isolated Dynamic Worker, costing ~1,000 tokens of context against the ~1.17M an equivalent native-tool server would need. Pick a domain server when you want a readable, curated tool list for one product area; pick the API server for breadth or for endpoints nobody wrote a tool for. All endpoints are Streamable HTTP on `/mcp` and support the MCP 2026-07-28 spec; the historical `/sse` URLs remain as aliases for the same Streamable HTTP handler but no longer serve the deprecated HTTP+SSE transport, so clients pinned to SSE must switch. Auth is OAuth on connect, or a scoped Cloudflare API token as a bearer header for CI. Clients without native remote-MCP support bridge via `npx mcp-remote https://<subdomain>.mcp.cloudflare.com/mcp`.
Who built Cloudflare MCP Server?
Cloudflare MCP Server was built by Cloudflare.
Is Cloudflare MCP Server free?
Yes, Cloudflare MCP Server has a free option. The MCP server is free and open-source. Cloudflare: Generous free tier for Workers, KV, R2, D1. Workers Paid: $5/mo. Pro: $20/mo. Business: $200/mo.
How do I install Cloudflare MCP Server?
Install Cloudflare MCP Server with remote: claude mcp add --transport http cloudflare-api https://mcp.cloudflare.com/mcp
What does Cloudflare MCP Server integrate with?
Cloudflare MCP Server integrates with Claude Desktop, Cursor, VS Code, Windsurf, Cline.

Live Status

LiveChecked 1m ago
Tools
2
Latency
448 ms
Protocol
2025-11-25
Tools changed
1mo ago
Uptime 100% over the last 30 checksRecent uptime

Quick Info

Install Type
remote
Author
Cloudflare
Categories
2
Integrations
5

Related Servers

💻

Git

Tools to read, search, and manipulate Git repositories. Full Git operations support.

Local
💻

GitHub MCP Server

authenticated access to the whole GitHub platform — repositories, files, branches, issues, pull requests, Actions runs, security alerts, discussions and notifications — from Claude, Cursor, VS Code, Copilot CLI and any other MCP host. There is no npm package for this server, and that trips up most people who try to install it: `@github/mcp-server` is not published to the npm registry, so any `npx` line you find for it will fail. GitHub ships it three other ways. The easiest is the hosted remote server at https://api.githubcopilot.com/mcp/, which needs no install at all — point an HTTP-transport MCP client at that URL and log in with OAuth (VS Code 1.101+, Claude Desktop, Claude Code, Cursor and Windsurf all support this). The second is the official Docker image ghcr.io/github/github-mcp-server, which is what the copy-paste command on this page runs; on github.com it now performs a browser-based OAuth login on first use and keeps the token in memory only, which is why the published Docker configs map a fixed loopback callback port (-p 127.0.0.1:8085:8085 with GITHUB_OAUTH_CALLBACK_PORT=8085) so the container can receive the callback. Prefer a token? Set GITHUB_PERSONAL_ACCESS_TOKEN instead — it takes precedence over OAuth, and the minimum useful scopes are repo, read:org and read:packages. The third is the native Go binary from the repository's releases, which needs no fixed port for the OAuth flow. GitHub Enterprise Server has no hosted option: use the local server with --gh-host or GITHUB_HOST set to your instance (include the https:// scheme — it defaults to http://, which GHES rejects). Toolsets can be narrowed with GITHUB_TOOLSETS, and an insiders channel is available at /mcp/insiders or via the X-MCP-Insiders header.

Auth required📘
💻

GitLab MCP Server

a first-party MCP endpoint built into the GitLab instance itself — there is no package to install, because the server ships inside GitLab and answers at https://<your-gitlab>/api/v4/mcp (gitlab.com exposes the same path, so https://gitlab.com/api/v4/mcp works for SaaS projects). It landed as an experiment in GitLab 18.3 and moved to beta in 18.6. Authentication is the part that makes it different from every community GitLab server: it uses OAuth 2.0 Dynamic Client Registration, so the first time a client connects it registers itself as an OAuth application on your instance and is issued an access token — no personal access token pasted into a config file. Administrators who do not want one OAuth application per tool can pre-create a shared application instead. Three prerequisites are what actually block most first connections: GitLab Duo must be set to Always on or On by default, beta and experimental features must be enabled, and MCP access must be switched on at the group or instance level. The tool surface covers issues and merge requests (create_issue, get_issue, create_merge_request, get_merge_request, list_merge_requests, get_merge_request_commits, get_merge_request_diffs, get_merge_request_pipelines, create_merge_request_note, get_merge_request_notes), CI/CD (manage_pipeline for list/create/delete/retry/cancel, get_pipeline_jobs, get_job_log), work items (create_workitem_note, get_workitem_notes, link_work_items, get_saved_view_work_items), search (search across the instance, search_labels, semantic_code_search), list_wiki_pages, and attach_scan_profile. HTTP is the recommended transport — claude mcp add --transport http GitLab https://gitlab.com/api/v4/mcp — and clients that only speak stdio can wrap it with npx mcp-remote <url> on Node 20+. Send the X-Gitlab-Mcp-Server-Tool-Name-Prefix header if generic names like search collide with another connected server. If your instance predates 18.3 or Duo is not available to you, the community alternative most teams land on is zereight/gitlab-mcp (1,889 stars as of 2026-08-16, npm @zereight/mcp-gitlab), which authenticates with a plain personal access token and ships 217 tools — including merge_merge_request, approve_merge_request, execute_graphql and full CI/CD variable management, none of which the built-in server exposes — behind GITLAB_PERMISSION_MODE=readonly/modify and GITLAB_TOOLSETS/GITLAB_TOOLS filtering. One further change worth noting: MCP server access moved from GitLab Premium to GitLab Free in 19.2 and became a setting of its own.

Auth required📘
☁️

AWS MCP Servers

AWS Labs maintains a monorepo of specialized, open-source MCP servers that bring AWS best practices directly into AI-assisted development workflows, spanning infrastructure, data, AI/ML, cost management, and healthcare/life-sciences domains. Rather than one monolithic server, the project ships dozens of focused servers you install individually depending on the task: the AWS Documentation MCP Server for real-time official docs and API references, dedicated servers for Terraform/CDK/CloudFormation infrastructure-as-code, container and serverless platforms (ECS, EKS, Lambda), SQL/NoSQL databases (DynamoDB, RDS, Aurora), search and analytics (OpenSearch), messaging (SQS/SNS), and cost/billing analysis. Most servers install via uvx with a package name like awslabs.aws-documentation-mcp-server, run locally over stdio, and use standard AWS credential chains (IAM roles, profiles, or access keys) rather than exposing raw account credentials to the model. AWS also now offers a managed, remote "AWS MCP Server" (in preview) that combines full API coverage with pre-built agent SOPs, syntactically validated API calls, and complete CloudTrail audit logging for teams that want centralized governance instead of running servers locally. The Getting Started with Kiro/Cursor/VS Code/Claude Code sections in the repo provide one-click install configs for each server, making it straightforward to wire up only the AWS services a given project actually touches.

Local
🗄️

Supabase MCP Server

Supabase MCP Server connects Cursor, Claude Code, Claude Desktop, Windsurf and other MCP clients to a Supabase project, and the first thing to know is that the personal access token setup most guides still describe is gone. Supabase now runs a hosted server at https://mcp.supabase.com/mcp using OAuth 2.1 with dynamic client registration — you add the URL, your client opens a browser, you pick the organization, and there is no PAT to mint or rotate. For Claude Code that is `claude mcp add --scope project --transport http supabase "https://mcp.supabase.com/mcp"` followed by `/mcp` in a plain terminal (not the IDE extension) to run the auth flow. Three URL query parameters do the real configuration work: `read_only=true` runs every statement as a read-only Postgres role, `project_ref=<id>` scopes the server to one project and drops the account-management tools entirely, and `features=` selects the tool groups. Those groups are database (list_tables, list_extensions, list_migrations, apply_migration, execute_sql), debugging (get_logs across API/Postgres/Edge Functions/Auth/Storage/Realtime, plus get_advisors for security and performance findings), development (get_project_url, get_publishable_keys, generate_typescript_types), Edge Functions (list, get, deploy), account management, docs search, experimental branching on paid plans, and storage — storage is the one group disabled by default. Running Supabase locally with the CLI exposes a reduced server at http://localhost:54321/mcp with no OAuth; self-hosted installs are similar. The npm package `@supabase/mcp-server-supabase` still exists for stdio clients and also exports `createToolSchemas()` so Vercel AI SDK users get typed tool inputs and outputs. Read Supabase's security best-practices page before pointing this at anything with production data — the mutating tools are real.

Auth required📘

Sponsored

Better Stack

Free Plan

Get alerted when your APIs, browser tests, payment pipelines, or MCP server dependencies go down. Used by 100K+ developers.

Start monitoring free →