openclaw-mcp 1.6.0 → 2.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -271,15 +271,13 @@ See [Configuration](docs/configuration.md) for all security options.
271
271
 
272
272
  ## Migrating from SSE to HTTP transport
273
273
 
274
- Starting with v1.5.0, the primary transport is **Streamable HTTP** (`--transport http`). The legacy SSE transport (`--transport sse`) is deprecated but still works for backward compatibility.
274
+ **The legacy SSE transport was removed in v2.0.** `--transport sse` now exits with an error, and `GET /sse` / `POST /messages` answer `410 Gone`. Use Streamable HTTP:
275
275
 
276
- ### What changed
277
-
278
- | Before | After |
276
+ | Before (≤ 1.x) | After (2.0) |
279
277
  |--------|-------|
280
- | `--transport sse` | `--transport http` (recommended) |
281
- | Primary endpoint: `GET /sse` | Primary endpoint: `POST/GET/DELETE /mcp` |
282
- | Health: `"transport": "sse"` | Health: `"transport": "streamable-http"` |
278
+ | `--transport sse` | `--transport http` |
279
+ | Endpoint: `GET /sse` + `POST /messages` | Endpoint: `ALL /mcp` |
280
+ | Health: `"legacySseSupported": true` | Health: `"legacySseSupported": false` |
283
281
 
284
282
  ### Migration steps
285
283
 
@@ -293,11 +291,30 @@ Starting with v1.5.0, the primary transport is **Streamable HTTP** (`--transport
293
291
 
294
292
  2. **Claude.ai connector URL**: No change needed — Claude.ai already uses `/mcp` (Streamable HTTP)
295
293
 
296
- 3. **Legacy clients**: The `/sse` and `/messages` endpoints still work. A deprecation warning is logged on each SSE connection.
294
+ 3. **Legacy clients**: Any client that only speaks HTTP+SSE must be upgraded. The MCP specification deprecated that transport in 2025-03-26 and removed it in 2026-07-28.
295
+
296
+ > **Note on protocol versions:** 2.0 runs on MCP SDK v2 and is stateless — it no longer keeps per-connection sessions. Clients still speaking the 2025-11-25 protocol (including current Claude.ai and Claude Desktop) are served through the SDK's built-in stateless legacy path and need no changes.
297
+
298
+ ## Roadmap — v2.0 (in development)
299
+
300
+ Version 2.0 is being developed on the `v2` branch, targeting the [MCP 2026-07-28 specification](https://blog.modelcontextprotocol.io/posts/2026-07-28-release-candidate/) on MCP SDK v2 (`@modelcontextprotocol/server`).
301
+
302
+ Done on the `v2` branch:
303
+
304
+ - **Stateless protocol core** — no sessions; any instance can serve any request, so the server runs behind a plain load balancer. 2025-era clients (current Claude.ai / Claude Desktop) are served through the SDK's built-in legacy fallback.
305
+ - **Streaming to the gateway** — async tasks use `stream: true` with an idle timeout (resets on every chunk), live progress (`progress_chars`), configurable concurrency (`OPENCLAW_TASK_CONCURRENCY`), and cancellation of running tasks (fixes [#31](https://github.com/freema/openclaw-mcp/issues/31))
306
+ - **Own OAuth 2.1 authorization server** — SDK v2 is resource-server-only, so `/authorize`, `/token`, `/revoke`, `/register` and RFC 8414 metadata are implemented in-repo (PKCE S256, timing-safe client auth, refresh rotation, rate limiting)
307
+ - **zod v4 tool schemas** (JSON Schema 2020-12) and tool annotations
308
+ - **Legacy SSE transport removed** — `/sse` and `/messages` answer 410 Gone
309
+
310
+ Planned before 2.0.0 final:
297
311
 
298
- 4. **Dockerfile ENTRYPOINT**: Updated automatically if using the official Docker image
312
+ - **Structured tool outputs** (`outputSchema` + `structuredContent`)
313
+ - **Client ID Metadata Documents** as the successor to Dynamic Client Registration
314
+ - **Protocol-native Tasks** (`io.modelcontextprotocol/tasks` extension) — will replace the custom async task tools once the SDK ships a tasks runtime (v2.0.0-beta.4 defines only the wire vocabulary)
315
+ - Docs refresh + migration guide from 1.x
299
316
 
300
- > **Note:** `--transport sse` will continue to work as a deprecated alias. Both transports are served simultaneously regardless of which flag you use.
317
+ v1.x remains the stable release until 2.0 ships.
301
318
 
302
319
  ## Requirements
303
320