melso
AutomationUse casesChangelog
Start your business
Developer Tools

Connect your AI agent to Cloudflare MCP

Manage Cloudflare resources through the Cloudflare API MCP server.

Set it up in Melso

  1. 1In Melso, open Settings → Agent Apps and hit Connect on Cloudflare MCP.
  2. 2Finish the DCR_OAUTH sign-in in the window that opens. Melso stores the connection, not your credentials.
  3. 3Open your agent, go to its Agent Apps tab, and allow Cloudflare MCP.
  4. 4Give the agent a task. It calls Cloudflare MCP itself when the work needs it.
Get Melso
Cloudflare MCP
cloudflare_mcp
3
tools
0
triggers
DCR_OAUTH
auth
#443
rank
Developer ToolsIT OperationsModel Context Protocol
What you get

What Cloudflare MCP gives your agent

The tools, permissions, and events Cloudflare MCP exposes — the same ones your agent can use once the app is authorized.

What you sign in with

Cloudflare MCP connects with DCR_OAUTH.

Permissions

Cloudflare MCP does not break access down into granular permissions.

Tools Cloudflare MCP exposes

CLOUDFLARE_MCP_DOCS

Docs

Search the Cloudflare documentation. This tool should be used to answer any question about Cloudflare products or features, including: - Workers, Pages, R2, Images, Stream, D1, Durable Objects, KV, Workflows, Hyperdrive, Queues - AI Search, Workers AI, Vectorize, AI Gateway, Browser Rendering - Zero Trust, Access, Tunnel, Gateway, Browser Isolation, WARP, DDOS, Magic Transit, Magic WAN - CDN, Cache, DNS, Zaraz, Argo, Rulesets, Terraform, Account and Billing Results are returned as semantically similar chunks to the query.

CLOUDFLARE_MCP_EXECUTE

Execute

Execute JavaScript code against the Cloudflare API. First use the 'search' tool to find the right endpoints, then write code using the cloudflare.request() function. Available in your code: interface CloudflareRequestOptions { method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE"; path: string; query?: Record<string, string | number | boolean | undefined>; body?: unknown; contentType?: string; // Custom Content-Type header (defaults to application/json if body is present) rawBody?: boolean; // If true, sends body as-is without JSON.stringify } interface CloudflareResponse<T = unknown> { success: boolean; status: number; result: T; errors: Array<{ code: number; message: string }>; messages: Array<{ code: number; message: string }>; result_info?: { page: number; per_page: number; total_pages: number; count: number; total_count: number; }; } declare const cloudflare: { request<T = unknown>(options: CloudflareRequestOptions): Promise<CloudflareResponse<T>>; }; declare const accountId: string; // accountId is pre-set to "e8a40544a7211334b83bf588bbf7dec1" (Qa@agent51testing.com's Account) — use it directly in API paths. Your code must be an async arrow function that returns the result. Example: Worker with bindings (requires multipart/form-data): async () => { const code = `addEventListener('fetch', e => e.respondWith(MY_KV.get('key').then(v => new Response(v || 'none'))));`; const metadata = { body_part: "script", bindings: [{ type: "kv_namespace", name: "MY_KV", namespace_id: "your-kv-id" }] }; const b = `--F${Date.now()}`; const body = [`--${b}`, 'Content-Disposition: form-data; name="metadata"', 'Content-Type: application/json', '', JSON.stringify(metadata), `--${b}`, 'Content-Disposition: form-data; name="script"', 'Content-Type: application/javascript', '', code, `--${b}--`].join("\r\n"); return cloudflare.request({ method: "PUT", path: `/accounts/${accountId}/workers/scripts/my-worker`, body, contentType: `multipart/form-data; boundary=${b}`, rawBody: true }); }

CLOUDFLARE_MCP_SEARCH

Search

Search the Cloudflare OpenAPI spec. All $refs are pre-resolved inline. Products: cloudforce-one, access, magic, workers, dlp, realtime, email-security, devices, email, ai-gateway, intel, gateway, stream, brand-protection, settings, ai-search, data-security, browser-rendering, dex, logpush, api_gateway, builds, addressing, images, load_balancers, security-center, rulesets, vectorize, firewall, logs... (160 total) Types: interface OperationInfo { summary?: string; description?: string; tags?: string[]; parameters?: Array<{ name: string; in: string; required?: boolean; schema?: unknown; description?: string }>; requestBody?: { required?: boolean; content?: Record<string, { schema?: unknown }> }; responses?: Record<string, { description?: string; content?: Record<string, { schema?: unknown }> }>; } interface PathItem { get?: OperationInfo; post?: OperationInfo; put?: OperationInfo; patch?: OperationInfo; delete?: OperationInfo; } declare const spec: { paths: Record<string, PathItem>; }; Examples: // Find endpoints by product async () => { const results = []; for (const [path, methods] of Object.entries(spec.paths)) { for (const [method, op] of Object.entries(methods)) { if (op.tags?.some(t => t.toLowerCase() === 'workers')) { results.push({ method: method.toUpperCase(), path, summary: op.summary }); } } } return results; } // Get endpoint with requestBody schema (refs are resolved) async () => { const op = spec.paths['/accounts/{account_id}/d1/database']?.post; return { summary: op?.summary, requestBody: op?.requestBody }; } // Get endpoint parameters async () => { const op = spec.paths['/accounts/{account_id}/workers/scripts']?.get; return op?.parameters; }

Example prompts

  • Use Cloudflare MCP to check recent changes and summarize them in the issue.
  • When a customer writes in, pull their data from Cloudflare MCP before replying.
  • Audit our open items in Cloudflare MCP and notify the channel of anything stale.

Useful links

  • Cloudflare MCP website
  • Melso Agent Apps docs

More in Developer Tools

  • GitHub
  • Supabase
  • Code Interpreter
  • Firecrawl
  • Tavily
Related apps

Compare nearby apps

Other Developer Tools connections your agents can use.

GitHub

Connect to GitHub

GitHub is a code hosting platform for version control and collaboration, offering Git-based repository management, issue tracking, and continuous integration features

871 toolsOAUTH2
Supabase

Connect to Supabase

Supabase is an open-source backend-as-a-service providing a Postgres database, authentication, storage, and real-time subscription APIs for building modern applications

124 toolsOAUTH2 / API_KEY
Code Interpreter

Connect to Code Interpreter

CodeInterpreter extends Python-based coding environments with integrated data analysis, enabling developers to run scripts, visualize results, and prototype solutions inside supported platforms

5 toolsNo auth
Firecrawl

Connect to Firecrawl

Firecrawl automates web crawling and data extraction, enabling organizations to gather content, index sites, and gain insights from online sources at scale

29 toolsAPI_KEY
Tavily

Connect to Tavily

Tavily offers search and data retrieval solutions, helping teams quickly locate and filter relevant information from documents, databases, or web sources

5 toolsAPI_KEY
Bitbucket

Connect to Bitbucket

Bitbucket is a Git-based code hosting and collaboration platform supporting private and public repositories, enabling teams to manage and review code through pull requests and integrations

108 toolsOAUTH2
melso

Run your company with AI agents.

Start your business

Product

  • Home
  • Automation
  • Melso vs Polsia
  • Use cases
  • Changelog
  • Download

Resources

    Company

    • About
    • Contact Sales

    © 2026 Melso. All rights reserved.