DATACORRIDOR

CITYMIRROR PLATFORM

// MCP_SERVER

Connect to Data Corridor Limited via MCP

A free Model Context Protocol server over the same evidence-scored smart city dataset as the public API. Any MCP client — Claude, Cursor, a custom agent — can search cities, rank them, pull a full evidence profile, or compare cities directly as tool calls.

Endpoint https://dcio-mcp.web.app · Streamable HTTP, stateless JSON-RPC · no API key · read-only · CC BY 4.0

Setup

Claude Code (CLI)

claude mcp add --transport http datacorridor-cities https://dcio-mcp.web.app

Claude Desktop

Settings → Developer → Edit Config, and add this to claude_desktop_config.json:

{
  "mcpServers": {
    "datacorridor-cities": {
      "url": "https://dcio-mcp.web.app"
    }
  }
}

Cursor & other MCP clients

Most MCP-compatible tools (Cursor, Windsurf, custom agents) accept the same shape in their MCP settings file:

{
  "mcpServers": {
    "datacorridor-cities": {
      "url": "https://dcio-mcp.web.app"
    }
  }
}

Raw JSON-RPC

No client library needed — every call is a single POST:

curl -X POST https://dcio-mcp.web.app \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "search_cities",
      "arguments": { "query": "birmingham" }
    }
  }'
{
  "framework": "smart-cities-iso",
  "nation": null,
  "count": 1,
  "cities": [
    {
      "rank": 116,
      "name": "Birmingham",
      "scopeId": "uk.birmingham",
      "countryCode": "GB",
      "smartnessPct": 33.3,
      "evidencePct": 39.5,
      "present": 23,
      "total": 86
    }
  ]
}

Tools

search_cities

Find assessed cities by name, optionally scoped to one nation. Returns each match's global rank and score.

{ query: string, nation?: string, framework?: "iso", limit?: number }
rank_cities

The smart-city leaderboard, globally or within one nation — for "top smart cities" questions.

{ nation?: string, framework?: "iso", limit?: number, offset?: number }
get_city

A city's full evidence-scored profile: every criterion marked present/partial/absent, grouped by category, each with its source links. Pass a scopeId (e.g. uk.birmingham) to disambiguate a name shared with another country.

{ city: string, framework?: "iso" }
compare_cities

Compare 2–5 cities side by side: overall scores plus each city's strongest and weakest categories.

{ cities: string[], framework?: "iso" }
list_frameworks

The assessment framework available (UN ISO-aligned), with how many cities and criteria it has.

{}

Notes

  • Defaults to the UN ISO-aligned framework. It is the only framework, so the framework argument is optional.
  • Cities with a name shared across countries (Birmingham UK vs. Alabama, Cambridge UK vs. Massachusetts) resolve unambiguously via scopeId — nation-prefixed, e.g. uk.birmingham. If a plain name is ambiguous, get_city returns candidates instead of guessing.
  • Every finding a tool returns links back to its public source — nothing is summarised without a citation trail.
  • A shorter vanity endpoint on our own domain is coming; this page will change to it when it is live. Point your client at https://dcio-mcp.web.app until then — bookmark this page rather than the host.