ModelClock
DEVELOPER GUIDE

Model shutdown dates, inside your coding agent

ModelClock runs a free, read-only Model Context Protocol server. Connect it once and your agent can check a repository's model IDs against every deprecation, shutdown and retirement notice ModelClock has read from official provider pages.

https://model-clock.com/api/mcp

Streamable HTTP transport, no sign-in, no API key. Text sent to check_code is matched in memory and not stored.

Set it up

Claude Code

claude mcp add --transport http modelclock https://model-clock.com/api/mcp

Cursor

Add this to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json in a repository:

{
  "mcpServers": {
    "modelclock": {
      "url": "https://model-clock.com/api/mcp"
    }
  }
}

Other MCP clients

Any client that supports remote servers over Streamable HTTP can use the URL above. Many read a configuration like this:

{
  "mcpServers": {
    "modelclock": {
      "type": "http",
      "url": "https://model-clock.com/api/mcp"
    }
  }
}

Clients that only start local servers can bridge with npx mcp-remote https://model-clock.com/api/mcp.

Tools

Each result has a short text summary and the same data as structured JSON. Matching is exact (ignoring case), and dated snapshots may be written either way: gpt-4o@2024-05-13 or gpt-4o-2024-05-13.

Things to ask

Calling it directly

The server answers JSON-RPC 2.0 over POST with a JSON response; there are no sessions or event streams. Methods: initialize, tools/list, tools/call and ping.

curl -s https://model-clock.com/api/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"lookup_model","arguments":{"model":"gpt-4o-2024-05-13"}}}'

Dates are UTC calendar days and come from the providers' own pages; always check the linked official notice before acting on one. For bulk data, use the JSON dataset, the shutdown list or the alerts.