Cloudflare MCP Server Monorepo

Cloudflare MCP Server Monorepo avatar

by cloudflare

Official Integrations

What is Cloudflare MCP Server Monorepo

Cloudflare MCP Server Monorepo

Model Context Protocol (MCP) is a new, standardized protocol for managing context between large language models (LLMs) and external systems. In this repository, we provide an installer as well as an MCP Server for Cloudflare's API.

This lets you use Claude Desktop, or any MCP Client, to use natural language to accomplish things on your Cloudflare account, e.g.:

  • Please deploy me a new Worker with an example durable object.
  • Can you tell me about the data in my D1 database named '...'?
  • Can you copy all the entries from my KV namespace '...' into my R2 bucket '...'?

Access the remote MCP server from Claude Desktop

Open Claude Desktop and navigate to Settings -> Developer -> Edit Config. This opens the configuration file that controls which MCP servers Claude can access.

Replace the content with the following configuration. Once you restart Claude Desktop, a browser window will open showing your OAuth login page. Complete the authentication flow to grant Claude access to your MCP server. After you grant access, the tools will become available for you to use.

{
  "mcpServers": {
    "cloudflare": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp.cloudflare.com/workers/observability/sse"
      ]
    }
  }
}

Paid Features

Some features in this MCP server require a paid Cloudflare Workers plan:

  • Observability: The prefixed worker_logs_ tools require a paid Workers plan to access these metrics

Ensure your Cloudflare account has the necessary subscription level for the features you intend to use.

Features

Workers Management

  • worker_list: List all Workers in your account
  • worker_get_worker: Get a Worker's script content

Workers Logs

  • worker_logs_by_worker_name: Analyze recent logs for a Cloudflare Worker by worker name
  • worker_logs_by_ray_id: Analyze recent logs across all workers for a specific request by Cloudflare Ray ID
  • worker_logs_keys: Get available telemetry keys for a Cloudflare Worker

Developing

Apps

Packages

  • eslint-config: Eslint config used by all apps and packages.
  • typescript-config: tsconfig used by all apps and packages.
  • mcp-common: Shared common tools and scripts to help manage this repo.

For more details on development in this monorepo, take a look at apps/workers-observability

Testing

The project uses Vitest as the testing framework with MSW (Mock Service Worker) for API mocking.

Running Tests

To run all tests:

pnpm test

To run a specific test file:

pnpm test -- tests/tools/queues.test.ts

To run tests in watch mode (useful during development):

pnpm test:watch

Looking for the deprecated local only cloudflare-mcp-server?

Visit https://www.npmjs.com/package/@cloudflare/mcp-server-cloudflare

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Leave a Comment

Comments section will be available soon. Stay tuned!

Frequently Asked Questions

What is MCP?

MCP (Model Context Protocol) is an open protocol that standardizes how applications provide context to LLMs. Think of MCP like a USB-C port for AI applications, providing a standardized way to connect AI models to different data sources and tools.

What are MCP Servers?

MCP Servers are lightweight programs that expose specific capabilities through the standardized Model Context Protocol. They act as bridges between LLMs like Claude and various data sources or services, allowing secure access to files, databases, APIs, and other resources.

How do MCP Servers work?

MCP Servers follow a client-server architecture where a host application (like Claude Desktop) connects to multiple servers. Each server provides specific functionality through standardized endpoints and protocols, enabling Claude to access data and perform actions through the standardized protocol.

Are MCP Servers secure?

Yes, MCP Servers are designed with security in mind. They run locally with explicit configuration and permissions, require user approval for actions, and include built-in security features to prevent unauthorized access and ensure data privacy.