The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Utility Network MCP listing page.
Utility Network questions are hard for general-purpose AI: the answer depends on the dataset version, the deployment, which API you're in, and a long list of ordering rules and gotchas. This project packages that knowledge so an agent answers like an experienced UN implementer — and connects agents to a live network through MCP.
| What it is | For | |
|---|---|---|
| 🧠 Skill | 30+ curated reference files, answer templates, helper scripts and evals | Claude.ai, Claude Code, any agent that reads Agent Skills |
| 🔌 MCP server | utility-network-mcp: trace, subnetwork, dirty-area and association tools over the UtilityNetworkServer REST API | Claude Desktop, Claude Code, VS Code, Cursor and other MCP clients |
Ask the questions you'd ask a senior UN consultant:
"Apply Asset Package keeps failing when I add gas to our water UN. Pro 3.5, Enterprise 11.3."
→ Troubleshooting answer walking the four prerequisites that cause most failures (maps closed, topology disabled, Pro/UN version match, both owners on DEFAULT), and why the tool is additive.
"Write the REST request for an isolation trace from this main at the midpoint, stopping at operable valves, on version crew1.outage."
→ Complete request with
percentAlong, filter barriers andgdbVersion, checked by a validator for the mistakes that make traces silently return nothing.
"Our dirty areas show Status 1, 9 and 40 — which ones matter?"
→ Decoded bitmask: 1 is a pending edit, 9 and 40 carry feature and subnetwork errors, with the next action for each.
"Hook Claude up to our electric UN so dispatch can ask what's downstream of a breaker."
→ Route recommendation (Esri's MCP beta vs. custom GP tools vs. this MCP server), tool list, auth, write-safety rails and licensing.
Claude Code
Claude.ai / Claude desktop app — download utility-network.skill from the latest release and add it to your skills.
Any skills-aware agent — copy plugins/utility-network/skills/utility-network into its skills folder.
MCP server — see mcp-server/README.md:
| Area | Coverage |
|---|---|
| Core model | Structure & domain networks, tiers (partitioned/hierarchical), subnetworks, terminals, asset groups/types, network attributes, categories, rules |
| Operations | Network topology, dirty areas & the Status bitmask, Error Inspector, Update/Export Subnetwork, branch versioning conflicts |
| Tracing | All trace types, traversability, filter barriers, functions, propagators, output filters — plus the full REST traceConfiguration schema |
| Deployment | UN Foundations & asset packages, dataset versions 4–8 with the Pro/Enterprise compatibility matrix, Upgrade Dataset, publishing, owners, licensing |
| APIs | REST (UtilityNetworkServer, NetworkDiagramServer, versioning, validation), ArcGIS Maps SDK for JavaScript, Pro SDK (C#), arcpy.un, Experience Builder |
| AI agents | Esri's MCP betas, GP-task tools, and a design guide + template for a UN MCP server |
Every answer follows a defined format (how-to, troubleshooting, code, MCP design, concept, cross-API translation), states which versions it applies to, and flags anything unverified.
The skill uses progressive disclosure: Claude reads the short SKILL.md first, then pulls in only the reference files a question needs, so broad coverage doesn't cost context on every question.
The skill is designed to grow. You can contribute without writing code:
python tools/new_reference.py scaffolds one in the house format; CI checks itDetails in CONTRIBUTING.md. Planned content is tracked in the roadmap, and content freshness in docs/FRESHNESS.md.
Independent community project — not affiliated with or endorsed by Esri. ArcGIS and ArcGIS Utility Network are trademarks of Esri. Reference content is written in our own words from public Esri documentation; each file lists its sources and review date. Always confirm version-specific behaviour against Esri's documentation before production changes.
Built by Sayanta Ghosh (@sgdev279). If this helps your utility GIS work, a ⭐ helps others find it.
Licensed under the MIT License.