MCP servernpm · @onegoodarea/mcp-server

OneGoodArea inside Claude Desktop, Cursor, and any MCP-compatible client.

Score UK postcodes, compare areas, and query methodology inline in your AI workflow. The server is distributed as an npm package and spawned by your MCP client over stdio.

  • 4 tools
  • Bearer auth
  • stdio transport
  • npm package
01Install

Two steps to onegoodarea inside your client.

One API key, one config edit. The client will spawn the server as a subprocess and the tools appear in your next conversation.

Step 01

Get an API key from your dashboard. Keys start with aiq_.

Step 02

Add the server to your MCP client config.

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json on macOS, or %APPDATA%\Claude\claude_desktop_config.json on Windows. Add the onegoodarea server:

JSONclaude_desktop_config.json
{
  "mcpServers": {
    "onegoodarea": {
      "command": "npx",
      "args": ["-y", "@onegoodarea/mcp-server"],
      "env": {
        "OOGA_API_KEY": "aiq_..."
      }
    }
  }
}

Restart Claude Desktop. The four tools appear when you start a conversation about UK locations.

Cursor

Add to .cursor/mcp.json in your project (or the global Cursor MCP config):

JSON.cursor/mcp.json
{
  "mcpServers": {
    "onegoodarea": {
      "command": "npx",
      "args": ["-y", "@onegoodarea/mcp-server"],
      "env": { "OOGA_API_KEY": "aiq_..." }
    }
  }
}
02Tools

Four tools, one engine.

Every tool calls the same v1 API under the hood. The MCP server is a thin protocol bridge. Auth, rate-limits, quota, methodology pinning, all enforced on the API side.

score_postcode(postcode, intent)

Score one UK postcode or place name for a given decision intent. Returns a 0–100 score, five weighted dimensions with confidence and reasoning, plain-English summary, and data sources.

TryWhat's the OneGoodArea origination score for SW1A 1AA?
compare_postcodes(postcodes[], intent)

Score 2–8 postcodes side-by-side for the same intent. Returns a sorted comparison table with per-postcode summaries. Partial failures are inline, not fatal.

TryCompare M1 1AE, SW4 0LG, and EH1 1BB for site selection.
methodology_for(dimension)

Methodology for any of the scoring dimensions: data source, summary of the scoring function, per-intent weights. Useful for procurement and model-risk review.

TryHow does OneGoodArea score Cost of Living?
engine_version((no args))

Current OneGoodArea engine version, release date, and changelog excerpt. Useful for procurement documentation and confirming you're pinned to the right release.

TryWhat version of the OneGoodArea engine is in production?
03Local development

Run against your own backend.

For local testing against a development API instance, point the server at any base URL via OOGA_API_BASE. The server validates the key prefix but does not validate the host.

JSONdev config
{
  "mcpServers": {
    "onegoodarea-dev": {
      "command": "npx",
      "args": ["-y", "@onegoodarea/mcp-server"],
      "env": {
        "OOGA_API_KEY": "aiq_dev",
        "OOGA_API_BASE": "http://localhost:3000"
      }
    }
  }
}
Issues, feature requests, and support: operation@onegoodarea.co.uk
04Plans

Free to install. Calls go through your plan.

The MCP server itself is open source and free. Every tool invocation makes a real call to the OneGoodArea API and counts against your plan’s monthly quota — same as any other integration.

Pricing in flight

We’re finalising the tier structure for v3. Once that lands, plan pages and any MCP-specific add-on will appear at /pricing. For now: get an API key, point your client at the server, and start.

See plans

UK area intelligence as a Claude-native tool.

Get a key, paste a config block, restart your client. The four tools appear in your next conversation.