DC Hub Intelligence
<!-- phase76_readme_polish -->
# DC Hub MCP Server
**[DCPI (Data Center Power Index)](https://dchub.cloud/dcpi): a daily score of where data centers can get grid power, across 300+ markets.** Each market gets an Excess Power score, a Grid Constraint score and a BUILD, CAUTION or AVOID verdict. Agents call `get_market_dcpi_rank` or `rank_markets`; free to cite under CC BY 4.0.
DC Hub returns live data on data center markets, power and grid interconnection, energy prices, fiber and siting. Tool results carry a dated citation line in `cite_as` (`DC Hub (dchub.cloud), as of <date>`) and, where one applies, a suggested follow-up question in `next_ask`. Previews need no key; a free key adds a daily allowance of full answers, and some tools need a paid plan ([dchub.cloud/pricing](https://dchub.cloud/pricing)). Connect: https://dchub.cloud/connect ยท MCP endpoint: `https://dchub.cloud/mcp`
[](https://lobehub.com/mcp/azmartone67-dchub-mcp-server)
<a href="https://glama.ai/mcp/servers/azmartone67/dchub-mcp-server"><img width="380" height="200" src="https://glama.ai/mcp/servers/azmartone67/dchub-mcp-server/badge" alt="DC Hub MCP server โ Glama" /></a>
**Real-time data-center, power-grid, interconnection-queue, grid-capacity, fiber, natural-gas & hyperscale infrastructure intelligence for AI agents** โ live telemetry across PJM, ERCOT, CAISO and every US ISO.
๐ **Try it free in your browser โ no signup, no key:** **[dchub.cloud/playground](https://dchub.cloud/playground?ref=registry)** โ run live queries against the global facility map (corroborated count pending), 300+ markets & real-time grids. Then [add the MCP server](https://dchub.cloud/connect) or [grab a free key](https://dchub.cloud/connect#free-key).
One MCP server for facility data, infrastructure and live grid intelligence, in one queryable interface. Built for Claude, Cursor, Gemini CLI, Antigravity, VS Code, Cline, Continue, Windsurf, and any AI assistant doing data center site selection, energy analysis, or market research.
[](https://insiders.vscode.dev/redirect/mcp/install?name=dchub&config=%7B%22name%22%3A%20%22dchub%22%2C%20%22type%22%3A%20%22http%22%2C%20%22url%22%3A%20%22https%3A//dchub.cloud/mcp%22%7D) [](https://cursor.com/install-mcp?name=dchub&config=eyJ1cmwiOiAiaHR0cHM6Ly9kY2h1Yi5jbG91ZC9tY3AifQ%3D%3D) [](https://smithery.ai/servers/azmartone67/dchub) [](https://glama.ai/mcp/servers/azmartone67/dchub-mcp-server) [](https://dchub.cloud/api/v1/mcp/quality) [](https://dchub.cloud/.well-known/mcp.json) [](https://dchub.cloud/cited-by)
> โญ **Star this repo** โ if DC Hub is useful to your agents, a star helps other builders (and their AI assistants) discover it across the MCP registries. **[โ Star `azmartone67/dchub-mcp-server`](https://github.com/azmartone67/dchub-mcp-server)** [](https://github.com/azmartone67/dchub-mcp-server)
---
## Using DC Hub data without MCP
The same data is published over plain HTTPS, for clients with no MCP connection.
**Keyless endpoints.** Each answers an anonymous GET with HTTP 200 and open CORS (`access-control-allow-origin: *`):
| Endpoint | Returns |
|---|---|
| `https://dchub.cloud/api/v1/canon/phrases` | current published counts and floors, with their sources in `value_source` |
| `https://dchub.cloud/api/v1/stats` | platform stats |
| `https://dchub.cloud/api/v1/stats/canonical` | the same figures with their provenance |
| `https://dchub.cloud/api/v1/dcpi/scores?limit=500` | DCPI per market |
Published counts change over time; `/api/v1/canon/phrases` serves the current values.
**Dates and citation fields.** MCP tool results carry dated provenance:
- `as_of` is the data date. When several sources feed one answer, it is the oldest of their timestamps, since an answer is no fresher than its stalest input. When a response carries only per-record dates, or no source timestamp at all, `as_of` is `null` and `as_of_basis` states why.
- `retrieved_at` is when DC Hub served the response, not when the data was collected.
- `cite_as` is a ready citation line. It names DC Hub and dchub.cloud, adds the `as_of` date when one is known, and marks a tier-gated preview as `PARTIAL`.
**Citation format.** A short attribution block for text that quotes DC Hub data. [`/llms.txt`](https://dchub.cloud/llms.txt) gives a longer form that adds the `as_of` date and the licence terms of each data layer.
```
Source: DC Hub (dchub.cloud) โ live data-center & energy intelligence
https://dchub.cloud/land-power-map
https://dchub.cloud/dcpi
https://dchub.cloud/connect
```
**Further documentation:** [`/llms.txt`](https://dchub.cloud/llms.txt) ยท
[`/llms-full.txt`](https://dchub.cloud/llms-full.txt) ยท
[`/ai-agents`](https://dchub.cloud/ai-agents) ยท
[`/AGENTS.md`](https://dchub.cloud/AGENTS.md) ยท
MCP endpoint `https://dchub.cloud/mcp/github` (client setup at [/connect](https://dchub.cloud/connect))
---
## What you can do with it
```
"Can I get 200 MW in PJM, and how long would it take?"
"Show me AWS data center construction pipeline in Ohio"
"Compare ERCOT vs PJM capacity prices over the last 30 days"
"Find data centers within 50km of Northern Virginia substations >230kV"
"What's the live demand and generation mix in CAISO right now?"
"Is behind-the-meter gas power cheaper than the grid in Texas?"
"What's the grid mix in Atlanta (SOCO) and is power available?"
"Get fiber routes between Ashburn and Atlanta"
"Find 5 MW of powered shell I can lease in Texas"
"Who has 500 kW of colocation capacity anywhere in Europe?"
```
Your AI assistant gets real-time, structured answers โ not links to PDFs.
## What's inside
- **Global data-center facility map** across 170+ countries (corroborated count pending) โ operator, capacity, location, fiber connectivity
- **134,000+ substations** with voltage class, available capacity estimates
- **Real-time grid telemetry** โ live load + generation mix across the 7 US ISOs (PJM, ERCOT, CAISO, MISO, SPP, NYISO, ISO-NE) + 40+ EIA balancing authorities (Atlanta, Carolinas, Florida, Pacific NW...), plus Great Britain (NESO), 24 European ENTSO-E zones, Taiwan & Australia โ refreshed ~every 5 min
- **Interconnection-queue snapshots** with per-ISO BUILD/CAUTION/AVOID verdicts โ including live large-load queue depth where the ISO publishes it (ERCOT publishes a data-center-scale large-load feed)
- **1,700+ tracked M&A transactions** + AI capacity index + hyperscaler $1B+ deal tracker
- **Transmission lines, gas pipelines, fiber routes** โ the full infrastructure stack
- **NEPA filings** for upcoming federal energy + data center projects
- **Tax incentives** by state with eligibility details
- **Market intelligence** โ 300+ markets scored daily with DCPI BUILD/CAUTION/AVOID verdicts, plus facilities tracked across 170+ countries
- **Capacity Source** โ data-center capacity to buy or lease (powered land, powered shells, turnkey, colocation), searchable by size in kW or MW and by location
**94 MCP tools** across facility search, market intel, grid + interconnection, renewable-energy, site analysis, deals, fiber routing, and infrastructure. [Full tool list โ](https://dchub.cloud/integrations/mcp)
Two of them are **partner tools**: `read_inbox` (the notes DC Hub leaves for a partner key; the same inbox as the `dchub://inbox` resource) and `report_finding` (files an observation about a DC Hub surface as a brain finding, detector `external_audit`). They are listed for every caller so the catalog is one stable list, and they answer only a key issued under a partner slug; any other key gets a clear "partner key required".
> **These counts are served, not stated.** Every number above is rendered from a
> live source and this file is a copy of it โ mirrors and registry listings copy
> it again, and each hop can freeze. The current values are served by
> **`/api/v1/canon/phrases`** (quantities) and **`/api/v1/ops/deadman`**
> (per-source ingest freshness), both keyless JSON endpoints on `dchub.cloud`,
> and by `tools/list` on the MCP endpoint (the canonical tool catalog).
**Actively used by Claude and Cursor** โ see [/cited-by](https://dchub.cloud/cited-by).
## Guided prompts & resources
Beyond the 94 tools, DC Hub ships **14 guided prompts** โ they surface as slash-commands in Claude Desktop, Cursor, and other MCP clients (every invocation is telemetry-tracked as `recipe:<name>`):
- `/dchub:analyze-site` โ full buildability read for an address or lat,lon
- `/dchub:pick-a-market` โ where to build N MW (DCPI-ranked, with time-to-power)
- `/dchub:power-availability` โ power availability + time-to-power for an ISO
- `/dchub:site-report` โ premium one-page site brief (power ยท gas ยท fiber ยท market ยท risk)
- `/dchub:compare-markets` โ 2โ4 markets head-to-head
- `/dchub:fiber-plan` โ diverse fibre lead-in routes to a carrier hotel
- `/dchub:market_selection` โ DCPI shortlist โ per-finalist verdict โ grid reality-check
- `/dchub:grid_and_queue` โ power availability + interconnection queue for an ISO
- `/dchub:site_analysis` โ one site, multi-factor: composite score, FEMA hazards, water
- `/dchub:water_risk` โ water stress & hazard read for a site
- `/dchub:hyperscaler_activity` โ deals + forward pipeline: who is buying and building
- `/dchub:whats_changed` โ what moved since your last call (the return hook)
- `/dchub:fiber_power_pairing` โ where fiber density and available power overlap in a market
- `/dchub:find_capacity` โ data-center capacity to buy or lease: Capacity Source listings for a requirement, then a deal registration (the provider's identity, site and contact are released only if the provider accepts)
Plus citable **resources**: `dchub://about`, `dchub://methodology` (DCPI/DCGI), `dchub://data-sources`, `dchub://coverage`, and `dchub://testimonials` โ named customers (people, not AI assistants) who approved public use of their words, read live from [dchub.cloud/testimonials](https://dchub.cloud/testimonials) (machine-readable: `testimonials.json` beside it).
## Capacity Source โ capacity to buy or lease
Everything above answers *where to build*. **[Capacity Source](https://dchub.cloud/listings)** answers *what is available now*: data center capacity to buy or lease โ powered land, powered shells, turnkey capacity and colocation โ for enterprise and agent-led procurement. Operators and brokers list capacity free at [dchub.cloud/listings](https://dchub.cloud/listings#list-capacity).
**Searchable by size and by location.** `source_capacity` takes a size โ `min_kw` in kW, or `min_mw` in MW โ and a location:
- `region` โ `north_america`, `latin_america`, `europe`, `asia_pacific`, `middle_east_africa` (the aliases `emea`, `apac`, `latam` and `americas` also resolve)
- `location` โ free text matched against each listing's region, country, state and metro, e.g. `"Germany"` or `"Texas, Phoenix"`
- `market`, `state`, `delivery_type` (`land` ยท `powered_shell` ยท `turnkey` ยท `colocation`) and `available_by` narrow further; `slug` returns a single listing
So *"500 kW anywhere in Europe"* is `min_kw=500, region=europe`. Any caller โ keyless included โ gets the listing cards, the filters that were applied, and when each listing was last updated.
**A size is matched against what a listing can actually deliver, not just its headline total.** A listing may declare `contiguous_kw` โ the largest single contiguous block available โ and `min_contract_kw` โ the smallest chunk the provider will contract. A colocation with 2 MW available but only 500 kW contiguous does not answer a 1 MW search; a 40 MW site willing to contract 1 MW chunks does. Both are teaser-level, so they come back on the cards and the single-listing read, and the rendered lines carry them beside the capacity.
**Then a deal registration, not a lead form.** `request_capacity_intro` registers a deal: DC Hub sends the provider your company name and your requirement, and nothing more. The provider accepts or declines. Identities, site detail and contacts are exchanged **only if the provider accepts** โ on a decline, nothing is shared. `accept_capacity_terms` records your agreement to the [introduction terms](https://dchub.cloud/listings#terms) once, which is what opens listing detail for you.
The `/dchub:find_capacity` prompt runs the whole path: requirement โ listings โ deal registration.
## Task-scoped endpoints
`https://dchub.cloud/mcp` serves the full catalog. A client that only needs one job can bind to a narrower surface instead โ same server, same key, a much smaller tool list in the context window. Every pack except `/mcp/deepresearch` carries `discover_tools`, `claim_free_key`, `unlock_more_data` and `summarize_for_citation`, so a pack is never a dead end; `/mcp/deepresearch` is deliberately exactly the two tools the Deep Research connector contract expects.
| Endpoint | What it covers |
|---|---|
| `https://dchub.cloud/mcp/github` | everything โ all 94 tools |
| `https://dchub.cloud/mcp/siting` | site selection end to end: find, analyze, score, compare, rank โ plus Capacity Source |
| `https://dchub.cloud/mcp/grid` | power availability: live ISO telemetry, interconnection queue, hosting + retirement headroom, prices |
| `https://dchub.cloud/mcp/fiber` | routes, metro fiber, subsea cables, peering, lead-in planning, latency clustering |
| `https://dchub.cloud/mcp/deals` | transactions, pipeline, news, market intelligence โ plus Capacity Source |
| `https://dchub.cloud/mcp/gas` | behind-the-meter and gas-fired economics against grid prices and forward generation |
| `https://dchub.cloud/mcp/site` | the in-browser agent surface: find a record, read it, quote it, mint a key |
| `https://dchub.cloud/mcp/deepresearch` | the OpenAI Deep Research connector contract: `search` + `fetch`, nothing else |
## Why DC Hub vs other directories
| | DC Hub | datacenters.com | dcbyte | baxtel |
|--------------------------|:------:|:---------------:|:------:|:------:|
| Live grid data | โ
| โ | โ | โ |
| MCP / AI integration | โ
| โ | โ | โ |
| Facility + infra + grid | โ
| โ | โ | โ |
| Real-time API | โ
| โ | โ | โ |
| NEPA filings | โ
| โ | โ | โ |
| Free dev tier | โ
| โ | โ | โ
|
Their strength: directories of facilities you can browse. Our strength: an API your AI assistant can query in real time across the full infrastructure stack.
## Install
### Claude Desktop โ Quickstart (stdio)
Claude Desktop's `claude_desktop_config.json` runs local (stdio) servers, so use the launcher package, which connects it to the hosted server. Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):
```json
{
"mcpServers": {
"dchub": {
"command": "npx",
"args": ["-y", "dchub-mcp-server"],
"env": { "DCHUB_API_KEY": "" }
}
}
}
```
Leave `DCHUB_API_KEY` empty for previews, or paste a free key from https://dchub.cloud/connect#free-key. Needs Node 18+. Same block works in Cursor, Windsurf and Cline. To use the hosted URL instead, open **Settings โ Connectors โ Add custom connector** in Claude Desktop and paste `https://dchub.cloud/mcp`; do not put a `url` entry in `claude_desktop_config.json`.
### Claude Code
```bash
claude mcp add dchub --transport http https://dchub.cloud/mcp/github
```
### Cursor
Search for "DC Hub" in [Cursor MCP marketplace](https://cursor.directory/plugins/dc-hub) โ click Install.
### Cline / Continue.dev
```json
{
"name": "dchub",
"url": "https://dchub.cloud/mcp/github",
"transport": "http"
}
```
### Gemini CLI
`~/.gemini/settings.json` (or `.gemini/settings.json` in a project):
```json
{
"mcpServers": {
"dchub": {
"httpUrl": "https://dchub.cloud/mcp/github"
}
}
}
```
Or one command: `gemini mcp add --transport http dchub https://dchub.cloud/mcp/github`
> **`httpUrl`, not `url`.** In Gemini CLI `url` is the SSE form and `command` is stdio โ put a Streamable-HTTP server under either and it is dialled with the wrong transport and never connects. This is the free Gemini CLI: no OAuth, no admin console, no enterprise account. Add a `headers` object with `X-API-Key` for full data.
### Antigravity
`~/.gemini/antigravity/mcp_config.json` (or `.agents/mcp_config.json` in a workspace):
```json
{
"mcpServers": {
"dchub": {
"serverUrl": "https://dchub.cloud/mcp/github"
}
}
}
```
> **`serverUrl`, not `url` or `httpUrl`.** Antigravity rejects both โ the block stays valid JSON and registers nothing. It is a different client from Gemini CLI with a different config file, so installing one does not install the other, even though both live under `~/.gemini/`.
### Smithery.ai
Listed at [smithery.ai/servers/azmartone67/dchub](https://smithery.ai/servers/azmartone67/dchub). Add via Smithery CLI:
```
npx -y @smithery/cli install @azmartone67/dchub --client claude
```
## Privacy and data handling
- **Per-call telemetry (first-party only).** Every tool call is logged to the DC Hub backend (`POST /api/v1/mcp/track`): timestamp, tool name, call parameters, detected client/platform, tier, session id, your API key (if you sent one), status and duration. It is used for rate limits, billing and quality. It is never sent to a third party, and there is no advertising or third-party analytics. Anonymous calls carry no key. Details: [SECURITY.md](SECURITY.md#outbound-network-calls).
- **Email capture (`bind_email`) is optional.** The `bind_email` tool exists to raise your daily limit. If you call it, the email you pass is stored against your key, and you can ignore the tool. The server never asks for or collects an email any other way.
- **No install-time code.** Installing this package runs no scripts (no `preinstall`, `install`, `postinstall` or `prepare`). The git pre-commit hook for contributors is opt-in: `npm run hooks:install`.
## Pricing
- **Anonymous:** previews, no API key needed
- **Free key (one `claim_free_key` call, no email):** previews plus 2 full answers per tool per day, every tool callable, most as previews. Grid/queue/market-intel tools: previews on free; full needs a paid DC Hub plan. analyze_site: a free key gets a few free full site reports each month; after that, previews.
- **Add an email (`bind_email`):** 50 calls/day (up to 10 full answers per tool per day)
- **Paid plans (more volume, every tool, exports):** plans and prices at https://dchub.cloud/pricing
## Data sources
EIA hourly RTO data ยท HIFLD substation database ยท OpenStreetMap ยท PeeringDB ยท DC Hub proprietary news + facility pipeline ยท regulations.gov NEPA filings ยท USGS ยท EPA eGRID ยท FEMA NRI
## Open source
This MCP server's transport layer is open source. The data + business logic lives at [dchub.cloud](https://dchub.cloud). Issues: [GitHub Issues](https://github.com/azmartone67/dchub-mcp-server/issues).
## Contact
azmartone@gmail.com โ Jonathan Martone โ Martone Advisors LLC
<!-- registry-rebuild: 2026-07-16 โ Glama builder ECONNRESET x2 on 091afc4 (empty logs, infra-side); commit verified clean locally -->
TDQS
Scored across 92 tools
Many tools target closely related outcomes (e.g., analyze_site vs get_composite_site_score vs score_facility for site scoring; get_grid_intelligence vs get_grid_data vs get_iso_context vs get_grid_scoreboard for grid data). Descriptions do include explicit 'Do NOT use' guidance, but the sheer number of overlapping read paths creates real misselection risk.
Tool names are overwhelmingly snake_case and often follow a verb_noun pattern (get_grid_intelligence, rank_markets, save_site). A few noun-phrase deviations exist (ai_capacity_index, deal_autopsy, why_dchub, site_selection_canvas), but the convention remains predictable and readable.
92 tools is an extreme mismatch for a typical MCP surface. Even a broad data-center and energy intelligence domain does not justify this many separate tools when many are narrow variations on the same read.
The surface covers an exceptionally wide domain: facilities, markets, grid, gas, fiber, peering, water, climate, disaster risk, permits, tax incentives, deals, news, capacity sourcing, and account/alert management. No obvious lifecycle or intelligence gaps stand out for the stated purpose.