mcp
Resolve any government entity worldwide and submit service requests. Open civic data for AI agents.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (2)
- HIGH
- MEDIUMen search_cgj_reports
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"mcp": {
"url": "https://mcp.ungovr.org/mcp"
}
}
}Puntos de conexión remotos
https://mcp.ungovr.org/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (11)
🟢list_countries
List all countries with government entity data in UnGovr, including entity counts and coverage metadata.
Esquema de entrada
{
"type": "object",
"properties": {},
"required": []
}🟢search_entities(country, state, query, type, limit, ...)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Two-letter country code (e.g., \"us\", \"ca\", \"ie\")"
},
"state": {
"type": "string",
"description": "State/province code to narrow search (e.g., \"ca\" for California, \"on\" for Ontario)"
},
"query": {
"type": "string",
"description": "Substring to match against entity name (case-insensitive)"
},
"type": {
"type": "string",
"description": "Filter by entity type, exact match (e.g., \"county\", \"city\", \"school_district\", \"special_district\", \"fire_district\", \"police_department\", \"jpa\", \"regulated_utility\"). The parameter is named \"type\", not \"entity_type\"."
},
"limit": {
"type": "number",
"description": "Maximum results to return (default 20, max 100)"
},
"offset": {
"type": "number",
"description": "Number of results to skip for pagination (default 0)"
}
},
"required": [
"country"
]
}🟢get_entity(slug)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Entity URL slug at any depth (e.g., \"us/ca/ventura\", \"us/ca/santa-barbara/city/carpinteria\", \"ie/cork\", \"kr/seoul\")"
}
},
"required": [
"slug"
]
}🟢get_product_coverage(product)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"product": {
"type": "string",
"description": "Product id: \"request\" or \"cgj\"",
"enum": [
"request",
"cgj"
]
}
},
"required": [
"product"
]
}🟢get_open_records_law(jurisdiction)
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".
Esquema de entrada
{
"type": "object",
"properties": {
"jurisdiction": {
"type": "string",
"description": "Jurisdiction slug or entity slug at any depth (e.g., \"us/ca\", \"us\", \"uk\", \"us/ca/ventura\")"
}
},
"required": [
"jurisdiction"
]
}🟢search_transparency_laws(country, pillar, query, limit, offset)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Two-letter country code (e.g., \"us\", \"de\", \"br\")"
},
"pillar": {
"type": "string",
"description": "Law domain to search",
"enum": [
"records",
"meetings",
"fiscal",
"accessibility",
"oversight"
]
},
"query": {
"type": "string",
"description": "Substring to match against law name, citation, or jurisdiction (case-insensitive)"
},
"limit": {
"type": "number",
"description": "Maximum results to return (default 20, max 100)"
},
"offset": {
"type": "number",
"description": "Number of results to skip for pagination (default 0)"
}
},
"required": []
}🟢search_cgj_reports(county, year, query, limit, offset)
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
Esquema de entrada
{
"type": "object",
"properties": {
"county": {
"type": "string",
"description": "County name (e.g., \"Los Angeles\", \"San Francisco\")"
},
"year": {
"type": "number",
"description": "Filter by jury year (reports from that year)"
},
"query": {
"type": "string",
"description": "Substring to match against report title (case-insensitive)"
},
"limit": {
"type": "number",
"description": "Maximum results to return (default 20, max 100)"
},
"offset": {
"type": "number",
"description": "Number of results to skip for pagination (default 0)"
}
},
"required": []
}🟢get_cgj_report(id)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Report ID (from search results)"
}
},
"required": [
"id"
]
}🟢list_service_types(country)
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).
Esquema de entrada
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Two-letter country code: \"us\", \"ie\", or \"gb\" (default: \"us\")"
}
},
"required": []
}🔴submit_service_request(description, service_type_id, country_code, contact_email, address, ...)
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).
Esquema de entrada
{
"type": "object",
"properties": {
"description": {
"type": "string",
"description": "Description of the issue (10-5000 characters)"
},
"service_type_id": {
"type": "string",
"description": "Service type ID from list_service_types (optional — auto-classified from description if omitted)"
},
"country_code": {
"type": "string",
"description": "Country code: \"US\", \"IE\", or \"GB\" (default: \"US\")"
},
"contact_email": {
"type": "string",
"description": "Email of the person reporting the issue"
},
"address": {
"type": "string",
"description": "Address to geocode (e.g., \"123 Main St, Ventura, CA 93001\"). Provide this OR latitude+longitude."
},
"latitude": {
"type": "number",
"description": "Latitude (-90 to 90). Provide with longitude as alternative to address."
},
"longitude": {
"type": "number",
"description": "Longitude (-180 to 180). Provide with latitude as alternative to address."
},
"images": {
"type": "array",
"description": "Up to 3 base64-encoded images (optional). Each item: {data: \"base64...\", media_type: \"image/jpeg\"}",
"maxItems": 3,
"items": {
"type": "object",
"properties": {
"data": {
"type": "string",
"description": "Base64-encoded image data"
},
"media_type": {
"type": "string",
"description": "MIME type (image/jpeg, image/png)"
}
},
"required": [
"data"
]
}
}
},
"required": [
"description",
"contact_email"
]
}🟢resolve_domain_jurisdiction(domain)
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.
Esquema de entrada
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "Hostname or URL (e.g. \"ventura.org\", \"https://www.stadt-koeln.de/x\"). IP addresses are rejected."
}
},
"required": [
"domain"
]
}Comunidad
Evidencia