Skip to main content
Glama
erincheong

Underground Utility Permit Review MCP Server

by erincheong

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_permitsA

Search and filter pending excavation permit cases. Use this to find permits by street, city, applicant, project type, permit verdict, or risk level. Returns a summary of each match, not the full utility line detail — call get_permit for that.

get_permitA

Retrieve the complete review for one permit case: every utility line near the excavation, its owner, distance, ASCE 38-02 data quality grade, provenance, and crossing risk, plus the overall verdict and which lines need field verification before sign-off.

find_utility_conflictsA

Scan the whole permit portfolio for individual utility lines that are dangerous to dig near: close to the excavation, poorly evidenced, or where the county record and the independent detection disagree. This is the cross-portfolio triage question — 'what is about to hurt someone' — rather than a per-permit lookup. Results are ranked by consequence-weighted risk.

portfolio_summaryA

Roll up the whole permit portfolio: how many cases sit at each verdict, where the risk is concentrated by city and project type, overall record corroboration, and how much unverified consequence exposure is outstanding. Use this for 'how are we doing' questions rather than per-permit ones.

recommend_verificationA

Produce a prioritised potholing plan: which specific lines should be physically exposed before excavation, in what order, and why. Ranks by consequence-weighted risk so a limited field budget is spent where a strike would cost the most. Call with a permit_id for one case, or with no arguments for a portfolio-wide plan.

Prompts

Interactive templates invoked by user choice

NameDescription
permit_risk_reviewWalk a permit case the way a reviewer would: verdict first, then what has to be resolved before anyone digs.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.4/5.0

Scored across 5 tools

Disambiguation5/5

Each tool addresses a distinct question: per-permit search and retrieval, cross-portfolio risk triage, portfolio-wide summary, and prioritized verification planning. Even search_permits and find_utility_conflicts are clearly separated by intent (query-based vs risk-based scanning).

Naming Consistency4/5

Four of five tools use a clear verb_noun pattern (search_permits, get_permit, find_utility_conflicts, recommend_verification), but portfolio_summary breaks the pattern by using a noun_noun structure instead of something like summarize_portfolio. This is a minor deviation.

Tool Count5/5

Five tools is ideal for this domain. Each tool has a unique role and the count is not excessive or sparse; the server is well-scoped to the permit review workflow.

Completeness5/5

The tool surface covers the full read/analysis lifecycle: search (search_permits), detail (get_permit), cross-cutting risk (find_utility_conflicts), roll-up (portfolio_summary), and actionable recommendation (recommend_verification). There are no obvious dead ends or missing operations for the stated purpose.

Maintenance

ActivitySlowing
ResponsivenessNo issues