org. ungovr/ mcp
by ungovr.org · remote · no sign-in to list tools · v1.2.1 · published by org.ungovr
Resolve any government entity worldwide and submit service requests. Open civic data for AI agents.
12 tools: 1 can delete or cancel things, 1 change things and 10 only read.
Scanned Oct 21, 2026
- Deletes or cancels1Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things1Claude Code: ask: see these tools
- Only reads10Claude Code: allow: see these tools
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http ungovr https://mcp.ungovr.org/mcpFindings
Matches of fixed checks, with the text they matched.
The server marks "resolve_jurisdiction" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "resolve_jurisdiction" says "resolve": a word for reading.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
12 tools
Deletes or cancels 1Claude Code: deny
submit_service_requestSubmit a government service request (e.g., report a pothole, broken streetlight, illegal dumping).No findings
Why it is in this group
- The name "submit_service_request" says "submit": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Submit a government service request (e.g., report a pothole, broken streetlight, illegal dumping). The request is validated, geocoded, classified, routed to the correct government entity, and recorded. Delivery is enabled per-entity: where the target channel is live, the request is transmitted (response delivery.state = "sent", or "held" when queued for review); for entities not yet enabled it is recorded and routable but not transmitted (delivery.state = "dry_run", or "handoff" with a redirect_url the user finishes). Always check delivery.state. Requires X-API-Key header. Rate limit: 2 requests/hour. Supported countries: US, IE (Ireland), GB (United Kingdom).
Annotations the server declares
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: false
- openWorldHint: true
Changes things 1Claude Code: ask
resolve_jurisdictionMaps an ISO 3166 code to the UnGovr jurisdictions whose law reaches the place, from the published crosswalk (https://data.ungovr.org/v1/crosswalk/iso-3166/index.json, CC BY 4.0).1 finding
Why it is in this group
- The name "resolve_jurisdiction" says "resolve": a word for reading.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "resolve_jurisdiction" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"openWorldHint":false}; The name "resolve_jurisdiction" says "resolve": a word for reading.
Description, as the server wrote it Maps an ISO 3166 code to the UnGovr jurisdictions whose law reaches the place, from the published crosswalk (https://data.ungovr.org/v1/crosswalk/iso-3166/index.json, CC BY 4.0). Accepts a country (FR, PR, EU, XK), a first-level subdivision (US-CA, GB-ENG), or the country and region an edge emits as two arguments (country US, region CA). Returns the canonical URN, the stack of governing layers (the place, its sovereign, a union or treaty area that reaches it), OCD-ID, Wikidata QID, precision, a reason when a code cannot be placed, and the crosswalk version. It maps what an edge already knows: it never resolves an IP address (those are refused and not echoed), a city or a postal code, and Cloudflare's XX and T1 answer with a reason, not a guess. Free, rate-limited per IP.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
Only reads 10Claude Code: allow
get_cgj_reportGet full details for a specific California Grand Jury report by ID.No findings
Why it is in this group
- The name "get_cgj_report" says "get": a word for reading.
Description, as the server wrote it Get full details for a specific California Grand Jury report by ID. Includes findings, recommendations, and responses. Requires X-API-Key header (50 req/day shared with data.ungovr.org). Get a key at https://www.ungovr.org/open-data/api-keys.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
get_entityGet full details for a specific government entity by its URL slug (e.g., "us/ca/ventura").No findings
Why it is in this group
- The name "get_entity" says "get": a word for reading.
Description, as the server wrote it Get full details for a specific government entity by its URL slug (e.g., "us/ca/ventura"). Works at any depth of the hierarchy, including cities, school districts and special districts (e.g., "us/ca/santa-barbara/spd/carpinteria-valley"). Returns name, type, website, parent, children, domain status, and metadata.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
get_open_records_lawGet the open records law (FOIA/RTI equivalent) governing a jurisdiction: name, citation, response deadlines, fees, exemptions, appeal process, records retention rules and RTI ratin…No findings
Why it is in this group
- The name "get_open_records_law" says "get": a word for reading.
Description, as the server wrote it Get the open records law (FOIA/RTI equivalent) governing a jurisdiction: name, citation, response deadlines, fees, exemptions, appeal process, records retention rules and RTI rating. Accepts a jurisdiction slug ("us/ca", "ie", "in/mh") or any UnGovr entity slug at any depth ("us/ca/santa-barbara/city/carpinteria" resolves to the California law). US federal FOIA is jurisdiction "us". When the answer comes from a parent jurisdiction the response includes "resolved_from".
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
get_product_coverageGet the full hierarchy of government entities where an UnGovr product is available.No findings
Why it is in this group
- The name "get_product_coverage" says "get": a word for reading.
Description, as the server wrote it Get the full hierarchy of government entities where an UnGovr product is available. product="request" returns the worldwide UnGovr Request coverage footprint (where you can file a government service request); product="cgj" returns Civil Grand Jury coverage. Public, no API key required.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
list_countriesList all countries with government entity data in UnGovr, including entity counts and coverage metadata.No findings
Why it is in this group
- The name "list_countries" says "list": a word for reading.
Description, as the server wrote it List all countries with government entity data in UnGovr, including entity counts and coverage metadata.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
list_service_typesList available service request categories and types for a country.No findings
Why it is in this group
- The name "list_service_types" says "list": a word for reading.
Description, as the server wrote it List available service request categories and types for a country. Returns service types grouped by category (e.g., Infrastructure, Utilities, Parks). Use this to discover valid service_type_id values for submit_service_request. Supported countries: US, IE (Ireland), GB (United Kingdom).
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
resolve_domain_jurisdictionBest-effort mapping from a domain to the jurisdiction whose law governs its OPERATOR.No findings
Why it is in this group
- The name "resolve_domain_jurisdiction" says "resolve": a word for reading.
Description, as the server wrote it Best-effort mapping from a domain to the jurisdiction whose law governs its OPERATOR. Authoritative for government domains in the UnGovr corpus (method "entity_domains"); otherwise an inference from suffix or country-code TLD, or "unknown". Never uses server or edge-node location: a CDN PoP's geography is not the legal signal, the operator's establishment is. IP addresses are refused for the same reason. Requires X-API-Key header (50 req/day, shared with data.ungovr.org). Get a key at https://www.ungovr.org/open-data/api-keys.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
search_cgj_reportsSearch California Grand Jury reports by county, year, and/or title keyword.No findings
Why it is in this group
- The name "search_cgj_reports" says "search": a word for reading.
Description, as the server wrote it Search California Grand Jury reports by county, year, and/or title keyword. Returns report metadata (title, year, county, themes). Requires X-API-Key header (50 req/day). Get a key at https://www.ungovr.org/open-data/api-keys. For the list of valid county names, query the UnGovr entity API: GET https://data.ungovr.org/v1/entities/us/ca.json
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
search_entitiesSearch government entities by country, optional state/province, name query, and entity type.No findings
Why it is in this group
- The name "search_entities" says "search": a word for reading.
Description, as the server wrote it Search government entities by country, optional state/province, name query, and entity type. Searches every tier of government in the jurisdiction, not just the top one: counties, cities, school districts, special districts, fire and police districts, joint powers authorities and regulated utilities are all reachable. Returns matching entities with slugs, types, and website URLs, plus a "scope" field — "full" means every tier was searched, "direct_children" means only the top tier was (narrow by state and search again). Unrecognised arguments are rejected, not ignored.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
search_transparency_lawsSearch government transparency laws across five domains: open records, open meetings, fiscal transparency, digital accessibility, and oversight bodies.No findings
Why it is in this group
- The name "search_transparency_laws" says "search": a word for reading.
Description, as the server wrote it Search government transparency laws across five domains: open records, open meetings, fiscal transparency, digital accessibility, and oversight bodies. Filter by country, pillar, and/or a substring of the law name, citation, or jurisdiction. Returns compact records with jurisdiction slugs; use get_open_records_law for full open-records detail.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.2.1. Values in angle brackets are yours to fill in.
claude mcp add --transport http ungovr https://mcp.ungovr.org/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__ungovr__list_countries",
"mcp__ungovr__search_entities",
"mcp__ungovr__get_entity",
"mcp__ungovr__get_product_coverage",
"mcp__ungovr__get_open_records_law",
"mcp__ungovr__search_transparency_laws",
"mcp__ungovr__search_cgj_reports",
"mcp__ungovr__get_cgj_report",
"mcp__ungovr__list_service_types",
"mcp__ungovr__resolve_domain_jurisdiction"
],
"ask": [
"mcp__ungovr__resolve_jurisdiction"
],
"deny": [
"mcp__ungovr__submit_service_request"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as ungovr. Review it before you use it.