Skip to main content
Glama
azmartone67

DC Hub — Data Center & Energy Intelligence

Fiber Intelligence

get_fiber_intel
Read-onlyIdempotent

Map and assess fiber route availability with GeoJSON data for network planning, including carrier details, route type, and capacity metrics.

Instructions

Use when scoring a candidate site for fiber depth, mapping long-haul routes between metros, or assessing dark-fiber availability for a hyperscale build. Example: "Show all Zayo long-haul fiber routes through Northern Virginia I can put on a Leaflet map." — get_fiber_intel carrier=Zayo route_type=longhaul. Params: carrier one of "Zayo" | "Lumen" | "Cogent" | "Crown Castle" | "Windstream" | "GTT" | "Uniti" | "FiberLight" | "Segra" | "Arcadian Infracom" (omit for all carriers); route_type one of "metro" | "longhaul" | "dark" | "ix"; market a metro name or slug (e.g. "dallas", "ashburn", "northern-virginia") to return ONLY routes touching that metro (either endpoint near it) — pairs well with route_type=longhaul to map a metro's long-haul backbones. Returns: GeoJSON FeatureCollection {features:[{geometry, properties:{carrier, route_type, fiber_count, lit_capacity_gbps, capacity, distance_miles, distance_km}}]} ready to drop into Leaflet/Mapbox. Do NOT use to count fiber providers at a single facility (use get_facility) or for IX interconnection-density scores (use analyze_site).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
marketNoMetro name or slug (e.g. "dallas", "ashburn", "northern-virginia") — returns only routes touching that metro (either endpoint within ~1.2°). Great with route_type=longhaul.
carrierNoFiber carrier to filter on, e.g. Zayo, Lumen, Cogent, "Crown Castle", Windstream, GTT, Uniti; omit for all carriers
route_typeNoRoute class: "metro", "longhaul", "dark", or "ix"
include_sourcesNoInclude upstream data-source/provenance metadata in the response

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeNo"FeatureCollection" — the payload is GeoJSON, ready for Leaflet/Mapbox
quotaNoCaller quota state (remaining calls, tier) when available.
totalNoTotal routes matching the filter (null when withheld by tier)
_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.
featuresNoFiber route features
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.

  1. Changed2 schema fields changed
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • removedOutput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
  2. Changed5 schema fields changedv2.3.20
    • removedOutput schema / properties / citation / additionalProperties
      Removed value: -{}
    • addedOutput schema / properties / citation / anyOf
      Added value: +[
      +  {
      +    "additionalProperties": {},
      +    "properties": {},
      +    "type": "object"
      +  },
      +  {
      +    "type": "string"
      +  }
      +]
    • changedOutput schema / properties / citation / description
      Previous value: -"Machine-readable citation: how to attribute DC Hub (dchub.cloud) for this payload."New value: +"Machine-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."
    • removedOutput schema / properties / citation / properties
      Removed value: -{}
    • removedOutput schema / properties / citation / type
      Removed value: -"object"
  3. Changed1 schema field changedv2.3.12
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": {},
      +  "description": "Fiber-route intelligence as a GeoJSON FeatureCollection (carrier, route_type, capacity, distance per feature) — alongside the DC Hub envelope keys.",
      +  "properties": {
      +    "_entity": {
      +      "description": "Payload class discriminator (e.g. facility|market|iso_grid|queue_results|deal|report|response) — branch on this before parsing the rest.",
      +      "type": "string"
      +    },
      +    "_front_door": {
      +      "additionalProperties": {},
      +      "description": "In-band front-door hint (first workflow-entry tool of a session): call plan_query(intent) first for the ordered multi-step plan.",
      +      "properties": {},
      +      "type": "object"
      +    },
      +    "_return_loop": {
      +      "additionalProperties": {},
      +      "description": "Suggested next-session delta call (get_changes since=24h) so you pull only what changed.",
      +      "properties": {},
      +      "type": "object"
      +    },
      +    "citation": {
      +      "additionalProperties": {},
      +      "description": "Machine-readable citation: how to attribute DC Hub (dchub.cloud) for this payload.",
      +      "properties": {},
      +      "type": "object"
      +    },
      +    "features": {
      +      "anyOf": [
      +        {
      +          "items": {
      +            "additionalProperties": {},
      +            "properties": {
      +              "geometry": {
      +                "description": "GeoJSON geometry (LineString/MultiLineString route path)"
      +              },
      +              "properties": {
      +                "anyOf": [
      +                  {
      +                    "additionalProperties": {},
      +                    "properties": {
      +                      "capacity": {
      +                        "anyOf": [
      +                          {
      +                            "anyOf": [
      +                              {
      +                                "type": "number"
      +                              },
      +                              {
      +                                "type": "string"
      +                              }
      +                            ]
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ],
      +                        "description": "Capacity (carrier-reported units) when known"
      +                      },
      +                      "carrier": {
      +                        "anyOf": [
      +                          {
      +                            "type": "string"
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ],
      +                        "description": "Fiber carrier, e.g. Zayo, Lumen, Cogent"
      +                      },
      +                      "distance_km": {
      +                        "anyOf": [
      +                          {
      +                            "anyOf": [
      +                              {
      +                                "type": "number"
      +                              },
      +                              {
      +                                "type": "string"
      +                              }
      +                            ]
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ],
      +                        "description": "Route length, km"
      +                      },
      +                      "distance_miles": {
      +                        "anyOf": [
      +                          {
      +                            "anyOf": [
      +                              {
      +                                "type": "number"
      +                              },
      +                              {
      +                                "type": "string"
      +                              }
      +                            ]
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ],
      +                        "description": "Route length, miles"
      +                      },
      +                      "fiber_count": {
      +                        "anyOf": [
      +                          {
      +                            "anyOf": [
      +                              {
      +                                "type": "number"
      +                              },
      +                              {
      +                                "type": "string"
      +                              }
      +                            ]
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ],
      +                        "description": "Fiber strand count when known"
      +                      },
      +                      "lit_capacity_gbps": {
      +                        "anyOf": [
      +                          {
      +                            "anyOf": [
      +                              {
      +                                "type": "number"
      +                              },
      +                              {
      +                                "type": "string"
      +                              }
      +                            ]
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ],
      +                        "description": "Lit capacity, Gbps, when known"
      +                      },
      +                      "route_type": {
      +                        "anyOf": [
      +                          {
      +                            "type": "string"
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ],
      +                        "description": "metro | longhaul | dark | ix"
      +                      }
      +                    },
      +                    "type": "object"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ],
      +                "description": "Route attributes"
      +              },
      +              "type": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ],
      +                "description": "\"Feature\""
      +              }
      +            },
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Fiber route features"
      +    },
      +    "provenance": {
      +      "additionalProperties": {},
      +      "description": "Collection-level provenance block: {source, method, as_of, verification_counts, cite_url_template, license, cite_as}. Quote the verification level when citing.",
      +      "properties": {},
      +      "type": "object"
      +    },
      +    "quota": {
      +      "additionalProperties": {},
      +      "description": "Caller quota state (remaining calls, tier) when available.",
      +      "properties": {},
      +      "type": "object"
      +    },
      +    "site_evaluation_handoff": {
      +      "anyOf": [
      +        {
      +          "items": {
      +            "additionalProperties": {},
      +            "properties": {},
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        {
      +          "additionalProperties": {},
      +          "properties": {},
      +          "type": "object"
      +        }
      +      ],
      +      "description": "Pre-built follow-up calls (analyze_site / get_water_risk args) when the payload carries coordinates — an array of {tool, parameters, why} entries."
      +    },
      +    "total": {
      +      "anyOf": [
      +        {
      +          "anyOf": [
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "string"
      +            }
      +          ]
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Total routes matching the filter (null when withheld by tier)"
      +    },
      +    "type": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "\"FeatureCollection\" — the payload is GeoJSON, ready for Leaflet/Mapbox"
      +    }
      +  },
      +  "type": "object"
      +}
  4. Changed1 schema field changedv2.3.8
    • addedInput schema / properties / market
      Added value: +{
      +  "description": "Metro name or slug (e.g. \"dallas\", \"ashburn\", \"northern-virginia\") — returns only routes touching that metro (either endpoint within ~1.2°). Great with route_type=longhaul.",
      +  "type": "string"
      +}
  5. Changed3 schema fields changedv2.3.6
    • addedInput schema / properties / carrier / description
      Added value: +"Fiber carrier to filter on, e.g. Zayo, Lumen, Cogent, \"Crown Castle\", Windstream, GTT, Uniti; omit for all carriers"
    • addedInput schema / properties / include_sources / description
      Added value: +"Include upstream data-source/provenance metadata in the response"
    • addedInput schema / properties / route_type / description
      Added value: +"Route class: \"metro\", \"longhaul\", \"dark\", or \"ix\""
  6. First observedv2.1.19

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds valuable behavioral context: the market filter returns ONLY routes touching that metro, and the response is a GeoJSON FeatureCollection ready for Leaflet/Mapbox. This goes beyond the structured metadata without contradicting it.

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?

The description is longer than average but every sentence carries weight: usage triggers, a worked example, parameter detail, return format, and exclusion guidance are all present. It is front-loaded with the use case and logically organized, though a few clauses could be trimmed without losing meaning.

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

Completeness4/5

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

Covers usage, parameters, return format, and alternatives. The optional include_sources parameter is only documented in the schema, but that is fine since schema coverage is 100%. No critical operational details like pagination or rate limits are mentioned, but for a read-only GeoJSON tool with high schema coverage, the description is sufficiently complete.

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 coverage is 100%, so the baseline is 3. The description enriches this by enumerating all allowed carrier values, the four route_type options, concrete market examples, and the 'either endpoint within ~1.2°' behavior for the market filter. This adds real meaning beyond the schema's brief field descriptions.

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?

The description states specific verbs and resources: scoring candidate sites for fiber depth, mapping long-haul routes between metros, and assessing dark-fiber availability. It explicitly distinguishes itself from get_facility and analyze_site with clear routing to alternatives.

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?

Provides explicit when-to-use context ('Use when scoring... mapping... assessing...') and explicit when-not-to-use exclusions ('Do NOT use to count fiber providers at a single facility (use get_facility) or for IX interconnection-density scores (use analyze_site)'). This leaves no ambiguity about selection.

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

Deploy Server

Other Tools