Skip to main content
Glama

DC Hub — Data Center Site Selection & Colocation: Electricity, Power Grid, Gas, Fiber

Research Dossier (async)

research_task
Read-onlyIdempotent

Commission an ASYNC, CITED research dossier from DC Hub's corpora (news, deals, facilities, market deep-dive narratives + live market components) — a decision-ready analyst brief with [n] citations, not a lookup. Requires a key (one claim_free_key call), 5 dossiers/day. Submits the question, waits up to ~35s for completion, and returns the finished dossier inline when ready; if still running, returns {task_id} — call research_task task_id= to fetch it. Params: question (required for a new dossier, min 12 chars) OR task_id (poll an earlier one). Typical completion under a minute. Answers "write me a cited brief on this", "what do recent deals say about gas-bridged power". Try: research_task question="What do recent deals say about gas-bridged power for data centers in ERCOT?". Do NOT use for a single fact (use search_intelligence / semantic_search); this synthesizes ACROSS sources with citations.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
task_idNoPoll an earlier submission: the task_id returned by a previous research_task call
questionNoThe research question (min 12 chars) — omit when polling with task_id

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
quotaNoCaller quota state (remaining calls, tier) when available.
_entityNoPayload class discriminator (e.g. facility|market|iso_grid|queue_results|deal|report|response) — branch on this before parsing the rest.
citationNoMachine-readable citation: how to attribute DC Hub (dchub.cloud) for this payload. Normally an OBJECT {source, url, license, cite_as, retrieved_at}; a bare string is accepted and carries the attribution line itself.
provenanceNoCollection-level provenance block: {source, method, as_of, verification_counts, cite_url_template, license, cite_as}. Quote the verification level when citing.
_front_doorNoIn-band front-door hint (first workflow-entry tool of a session): call plan_query(intent) first for the ordered multi-step plan.
_return_loopNoSuggested next-session delta call (get_changes since=24h) so you pull only what changed.
site_evaluation_handoffNoPre-built follow-up calls (analyze_site / get_water_risk args) when the payload carries coordinates — an array of {tool, parameters, why} entries.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=true and idempotentHint=true; the description adds substantial behavioral context: async semantics (~35s wait, inline return vs task_id), polling mechanism, quota/rate limits (5 dossiers/day), key requirement, and cross-source synthesis with citations — all beyond what annotations convey. No contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single dense paragraph, but every sentence earns its place: purpose, quota, async behavior, params, examples, and exclusions. Slightly long, yet the async/polling semantics genuinely require this much explanation. Front-loaded with the core purpose before operational details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with async behavior, polling lifecycle, quota, and auth prerequisites, the description covers every operational aspect an agent needs: return modes, how to poll, limits, key requirement, examples, and when to route elsewhere. Output schema covers return-value details, so nothing critical is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers both params at 100%, so baseline is 3. The description adds genuinely useful semantics beyond the schema: the XOR relationship (question for new dossier, task_id for polling), the exact polling call signature (research_task task_id=<id>), and the min-12-char requirement in context of submission flow.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: 'Commission an ASYNC, CITED research dossier from DC Hub's corpora' — an analyst brief synthesizing across sources, 'not a lookup'. Explicitly distinguishes itself from search_intelligence / semantic_search by naming the alternatives it is not.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit when-to-use phrasing ('write me a cited brief on this'), a concrete try-it example, an explicit exclusion ('Do NOT use for a single fact'), named alternatives, prerequisites (claim_free_key, 5/day limit), and the polling flow. Nothing is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.1/5.0
Disambiguation2/5

Multiple tools occupy nearly identical semantic space: search/search_facilities/search_intelligence/semantic_search all retrieve data, and analyze_site/compare_sites/score_facility/get_composite_site_score/rank_sites all score or rank locations. Despite extensive disambiguation in the descriptions, the boundaries are subtle enough that an agent will likely misroute queries. Account and meta tools (claim_free_key, bind_email, unlock_more_data, subscribe_digest, recover_my_key, execute_plan, plan_query, discover_tools) add further selection noise.

Naming Consistency4/5

The vast majority of tools follow a clear snake_case verb_noun convention (get_*, search_*, list_*, set_*, save_*, compare_*, analyze_*, rank_*, plan_*). A few noun-phrase names break the pattern (deal_autopsy, hyperscaler_deals, grid_transition_radar, site_selection_canvas, standing_intent, ai_capacity_index), but these are still readable and discoverable.

Tool Count1/5

83 tools is an extreme count for any server, far beyond the 25+ threshold that already signals bloat. The domain is broad, but the catalog is inflated by overlapping variants, multiple meta-tools (execute_plan, plan_query, discover_tools, get_agent_registry, get_backup_status, summarize_for_citation), and account/upgrade plumbing (claim_free_key, bind_email, recover_my_key, unlock_more_data, subscribe_digest). This imposes heavy context and selection costs on agents.

Completeness5/5

The data-center siting domain is covered exhaustively: single-site scoring, market ranking, grid/gas/fiber/water/climate/disaster/tax/permitting intelligence, interconnection queues, construction pipeline, deals/news, saved-site monitoring, alerts, research dossiers, and citation support. Every workflow has a continuation path, so agents will not hit dead ends.