Skip to content

Commit 5cd9487

Browse files
authored
chore(radar): deprecate in favor of mcp.cloudflare.com (#375)
1 parent 10a4755 commit 5cd9487

6 files changed

Lines changed: 62 additions & 26 deletions

File tree

.changeset/deprecate-radar.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
"cloudflare-radar-mcp-server": patch
3+
---
4+
5+
Deprecate the Radar MCP server. The unified Cloudflare MCP server at https://mcp.cloudflare.com/mcp already covers all Radar API endpoints via Code Mode (see https://github.com/cloudflare/mcp).
6+
7+
Tools continue to function. The server now exposes a deprecation notice via the MCP `instructions` field, and the `radar.mcp.cloudflare.com` entries have been removed from `server.json` so registries stop advertising the deprecated server.
8+
9+
**Action required:** migrate to `https://mcp.cloudflare.com/mcp` at your earliest convenience.

README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ The following servers are included in this repository:
1414
| [**Workers Bindings server**](/apps/workers-bindings) | Build Workers applications with storage, AI, and compute primitives | `https://bindings.mcp.cloudflare.com/mcp` |
1515
| [**Workers Builds server**](/apps/workers-builds) | Get insights and manage your Cloudflare Workers Builds | `https://builds.mcp.cloudflare.com/mcp` |
1616
| [**Observability server**](/apps/workers-observability) | Debug and get insight into your application's logs and analytics | `https://observability.mcp.cloudflare.com/mcp` |
17-
| [**Radar server**](/apps/radar) | Get global Internet traffic insights, trends, URL scans, and other utilities | `https://radar.mcp.cloudflare.com/mcp` |
1817
| [**Container server**](/apps/sandbox-container) | Spin up a sandbox development environment | `https://containers.mcp.cloudflare.com/mcp` |
1918
| [**Browser rendering server**](/apps/browser-rendering) | Fetch web pages, convert them to markdown and take screenshots | `https://browser.mcp.cloudflare.com/mcp` |
2019
| [**Logpush server**](/apps/logpush) | Get quick summaries for Logpush job health | `https://logs.mcp.cloudflare.com/mcp` |

apps/radar/CONTRIBUTING.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Setup
22

3+
> ⚠️ **This server is deprecated.** See [`README.md`](./README.md) for the migration path to [`mcp.cloudflare.com/mcp`](https://mcp.cloudflare.com/mcp). Bug fixes are welcome; new features will generally not be accepted — please direct new work at the unified [`cloudflare/mcp`](https://github.com/cloudflare/mcp) repository instead.
4+
35
If you'd like to iterate and test your MCP server, you can do so in local development.
46

57
## Local Development

apps/radar/README.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,27 @@
11
# Cloudflare Radar MCP Server 📡
22

3+
## ⚠️ Deprecated
4+
5+
**This server is deprecated.** The unified Cloudflare MCP server at [`mcp.cloudflare.com/mcp`](https://mcp.cloudflare.com/mcp) already covers all Radar API endpoints (along with the rest of the Cloudflare API).
6+
7+
All new work should move to the unified server:
8+
9+
```json
10+
{
11+
"mcpServers": {
12+
"cloudflare-api": {
13+
"url": "https://mcp.cloudflare.com/mcp"
14+
}
15+
}
16+
}
17+
```
18+
19+
That server uses [Code Mode](https://blog.cloudflare.com/code-mode-mcp/) — two generic tools (`search` and `execute`) that give agents access to the full Cloudflare API through code execution. It supports both OAuth (connect to the URL and authorize) and Cloudflare API tokens (send as a bearer token). See [`cloudflare/mcp`](https://github.com/cloudflare/mcp) for details.
20+
21+
The tools below still function. No new features will be added. Please migrate at your earliest convenience.
22+
23+
---
24+
325
This is a [Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) server that supports remote MCP
426
connections, with Cloudflare OAuth built-in.
527

apps/radar/src/radar.app.ts

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,34 @@ const metrics = new MetricsTracker(env.MCP_METRICS, {
3030
version: env.MCP_SERVER_VERSION,
3131
})
3232

33+
// NOTE: This server is deprecated. The unified Cloudflare MCP server at
34+
// https://mcp.cloudflare.com/mcp already covers all Radar API endpoints
35+
// (see https://github.com/cloudflare/mcp).
36+
//
37+
// The deprecation notice is surfaced via the MCP `instructions` field on the
38+
// initialize response. Humans see it in MCP-client UIs that render
39+
// `instructions`; it is also documented in README.md and CONTRIBUTING.md.
40+
export const DEPRECATION_INSTRUCTIONS = `⚠️ DEPRECATED: This Radar MCP server is deprecated.
41+
42+
The unified Cloudflare MCP server at mcp.cloudflare.com/mcp already covers all
43+
Radar API endpoints (along with the rest of the Cloudflare API) via Code Mode —
44+
two generic tools (\`search\` and \`execute\`) that give agents access to the full
45+
Cloudflare API through code execution. It supports both OAuth (connect to the URL
46+
and authorize) and Cloudflare API tokens (send as a bearer token).
47+
48+
Example MCP client configuration:
49+
50+
{
51+
"mcpServers": {
52+
"cloudflare-api": {
53+
"url": "https://mcp.cloudflare.com/mcp"
54+
}
55+
}
56+
}
57+
58+
This Radar server continues to respond for now, but will be retired. Please
59+
migrate at your earliest convenience.`
60+
3361
// Context from the auth process, encrypted & stored in the auth token
3462
// and provided to the DurableMCP as this.props
3563
type Props = AuthProps
@@ -64,7 +92,7 @@ export class RadarMCP extends McpAgent<Env, State, Props> {
6492
name: this.env.MCP_SERVER_NAME,
6593
version: this.env.MCP_SERVER_VERSION,
6694
},
67-
options: { instructions: BASE_INSTRUCTIONS },
95+
options: { instructions: DEPRECATION_INSTRUCTIONS + '\n\n---\n\n' + BASE_INSTRUCTIONS },
6896
})
6997

7098
registerAccountTools(this)

server.json

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -49,18 +49,6 @@
4949
}
5050
]
5151
},
52-
{
53-
"url": "https://radar.mcp.cloudflare.com/mcp",
54-
"type": "streamable-http",
55-
"headers": [
56-
{
57-
"name": "Authentication",
58-
"description": "Optional Cloudflare API key for authentication if not using OAuth. Can use User or Account owned tokens as a Bearer token.",
59-
"is_required": false,
60-
"is_secret": true
61-
}
62-
]
63-
},
6452
{
6553
"url": "https://containers.mcp.cloudflare.com/mcp",
6654
"type": "streamable-http",
@@ -210,18 +198,6 @@
210198
}
211199
]
212200
},
213-
{
214-
"url": "https://radar.mcp.cloudflare.com/sse",
215-
"type": "sse",
216-
"headers": [
217-
{
218-
"name": "Authentication",
219-
"description": "Optional Cloudflare API key for authentication if not using OAuth. Can use User or Account owned tokens as a Bearer token.",
220-
"is_required": false,
221-
"is_secret": true
222-
}
223-
]
224-
},
225201
{
226202
"url": "https://containers.mcp.cloudflare.com/sse",
227203
"type": "sse",

0 commit comments

Comments
 (0)