Search / city.close/close-api
Close API
R0· no sign-inWalk, bike, and transit travel times from every US census block to nearby amenities.
v1.2.0 · active · repository · website · descriptor JSON · versions
Search / city.close/close-api
R0· no sign-inWalk, bike, and transit travel times from every US census block to nearby amenities.
v1.2.0 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"close-api": {
"type": "http",
"url": "https://mcp.close.city/mcp",
"headers": {
"Authorization": "Bearer ${CLOSE_API_TOKEN}"
}
}
}
}claude mcp add --transport http close-api https://mcp.close.city/mcp --header "Authorization: Bearer ${CLOSE_API_TOKEN}"[mcp_servers.close-api]
url = "https://mcp.close.city/mcp"
bearer_token_env_var = "CLOSE_API_TOKEN"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"close-api": {
"type": "remote",
"url": "https://mcp.close.city/mcp",
"enabled": true,
"headers": {
"Authorization": "Bearer {env:CLOSE_API_TOKEN}"
}
}
}
}{
"mcpServers": {
"close-api": {
"type": "http",
"url": "https://mcp.close.city/mcp",
"headers": {
"Authorization": "Bearer ${CLOSE_API_TOKEN}"
}
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=close-api&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLmNsb3NlLmNpdHkvbWNwIiwiaGVhZGVycyI6eyJBdXRob3JpemF0aW9uIjoiQmVhcmVyICR7Q0xPU0VfQVBJX1RPS0VOfSJ9fQ%3D%3D"
}{
"servers": {
"close-api": {
"type": "http",
"url": "https://mcp.close.city/mcp",
"headers": {
"Authorization": "Bearer ${CLOSE_API_TOKEN}"
}
}
}
}{
"mcpServers": {
"close-api": {
"httpUrl": "https://mcp.close.city/mcp",
"headers": {
"Authorization": "Bearer ${CLOSE_API_TOKEN}"
}
}
}
}extensions:
"close-api":
enabled: true
name: "close-api"
type: streamable_http
uri: "https://mcp.close.city/mcp"
headers:
"Authorization": "Bearer ${CLOSE_API_TOKEN}"
timeout: 300
Placeholders to fill from your own secret store: ${CLOSE_API_TOKEN}. The registry never accepts secret values.
protocol.modernnewest supported version is 2025-06-18; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky onestools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: walkability_summary (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); nearby_pois (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); isochrone (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …tools.token_costabout 1,529 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changesno tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +dns-namespace +website +reachable +uptime-97% ~updated-87d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://mcp.close.city/mcp streamable-http | none | yes | 97% | 263 ms | 2025-06-18 | 2026-10-19 |
blocks_in_area | Per-block travel times for every census block in an area (metered: 1 token per returned row). Give place_geoid (from find_place) for a whole city, or center {lat, lon} + radius_m. Rows carry a numeric mode_id. |
find_place | Look up a US city or town by name (free, no key). Returns matches with their census place GEOID and centre point (lon/lat). The entry point: feed a GEOID to blocks_in_area, or a centre to walkability_summary. |
get_catalog | List the travel modes and the destination-type taxonomy (free, no key). Use it to resolve type names to the numeric ids the other tools take. Modes are walk, bike, transit — there is no drive mode. |
get_token_balance | Check the token balance of the API key in use, without spending any tokens. Works even at a zero balance. Requires the Authorization bearer key. |
isochrone | The area reachable from a location within a time budget, as GeoJSON contours (metered: 10 tokens per contour). Give block_geoid or lat+lon. Defaults to a single 30-minute contour; ask for more only when needed (bodies can be large). |
join_close_plus | Get a Stripe Checkout URL for the Close+ membership ($10/month: 5,000 API tokens granted monthly plus member features on the close.city map). The user pays in their own browser: give them the returned URL and stop. Needs a fresh six-digit code from request_sign_in, read by the user from their own inbox. |
nearby_pois | Nearby points of interest and the travel time to each, from a location (metered: 1 token per returned row). One origin: block_geoid or lat+lon; keep limit small to control spend and context size. Many origins (up to 250): block_geoids or points — one batch call and one rate-limit request, rows tagged by origin, no limit/pagination, so filter with type/mode/max_minutes. Batching saves requests and context, not tokens: it still charges per row. A non-empty truncated (+ truncated_reason) means the balance or row budget cut the batch short. |
redeem_code | Complete sign-up with the six-digit code the user received, and return a new API key (shown once). Call request_sign_in first. The key grants 5,000 free tokens; store it and pass it as the Authorization bearer on future calls. |
request_sign_in | Start free sign-up for the user: email them a six-digit code. The user must read the code from their own inbox and give it to you, then call redeem_code. This is how an agent gets the user an API key (5,000 free tokens, no card). |
walkability_summary | Fastest travel time from a location to each destination category, by mode (metered: 1 token per returned row). One origin: block_geoid or lat+lon. Many origins (up to 250): block_geoids or points — one batch call and one rate-limit request, with rows tagged by origin. Batching saves requests and context, not tokens: it still charges per row. A non-empty truncated (+ truncated_reason) means the balance or row budget cut the batch short. A missing category means it is not reachable within 30 minutes. |
Schemas: list_tools.
{
"name": "city.close/close-api",
"title": "Close API",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://mcp.close.city/mcp",
"type": "streamable-http",
"headers": [
{
"name": "Authorization",
"isSecret": true,
"description": "Bearer ck_ API key from account.close.city. Optional — the free tools (find_place, get_catalog) work without it."
}
]
}
],
"version": "1.2.0",
"repository": {
"url": "https://github.com/henryspatialanalysis/wtm.api",
"source": "github",
"subfolder": "mcp-server"
},
"websiteUrl": "https://docs.close.city/ai/",
"description": "Walk, bike, and transit travel times from every US census block to nearby amenities."
}