Skip to main content
Glama
istvanilyes

MCP Demo App 2026-07-28

by istvanilyes
README.md
## MCP 2026-07-28 protocol demo

A companion to `../transport-http`, showing what changed in the
[2026-07-28 MCP specification revision](https://modelcontextprotocol.io/specification/2026-07-28/changelog) —
the largest rewrite of the protocol since it launched. Uses the beta Python SDK
(`mcp==2.0.0b1`).

| Card | Demonstrates |
|---|---|
| 1. `server/discover` | Replaces the `initialize`/`notifications/initialized` handshake |
| 2. Stateless `add` call | No `Mcp-Session-Id` anywhere; required `MCP-Protocol-Version`/`Mcp-Method`/`Mcp-Name` headers; `resultType: "complete"` |
| 3. `book_table` (MRTR) | Multi Round-Trip Requests: `resultType: "input_required"` + retry with `inputResponses`/`requestState`, replacing server-initiated `elicitation/create` |
| 4. `subscriptions/listen` | Replaces GET+SSE and `resources/subscribe`; one opt-in POST stream, events tagged with a `subscriptionId` |
| 5. `tools/list` | `ttlMs` / `cacheScope` cache hints (`CacheableResult`) |
| 6. Legacy `initialize` | Proves the same server still answers a `2025-11-25` client (dual-mode SDK) |

## Setup

```bash
uv sync
```

(`mcp==2.0.0b1` is a pre-release; `uv add` was run with `--prerelease=allow`.)

## Running

```bash
uv run main.py
```

Then open http://127.0.0.1:8000/.

Maintenance

ActivityMaintained
ResponsivenessNo issues