Lake County, Illinois open geospatial data (ArcGIS) — parcels, addresses, zoning & public works. Search datasets, query layers, and retrieve layer schemas from Lake County GIS.
Three well-named, read-only tools with clear descriptions and complete input schemas. Naming follows verb_noun pattern (search_datasets, query_layer, layer_info). Descriptions are substantive (120 - 180 chars) and explain purpose and data flow. All parameters have type definitions and descriptions. However, output schemas are not documented, LLMs cannot predict response structure for downstream planning. Error handling is minimal (generic HTTP status errors). No parameter validation guidance (e.g., SQL injection risk in 'where' clause). Missing idempotency hints and rate-limit documentation.
Get an ArcGIS Feature/Map Service layer's schema by url: fields (name + type), geometry type, total record count, and capabilities.
Query an ArcGIS Feature Service / Map Service layer by its url (from search_datasets). SQL-like `where`, comma-separated `out_fields`, `order_by`, `limit`, `offset`. Returns attribute rows (and geometry). Use where="1=1" + out_fields="*" to sample.
Search Lake County GIS open geospatial datasets (parcels, addresses, zoning & public works) by keyword. Returns each dataset's name, summary, record_count, owner/org, and its Feature Service `url` — pass that url to query_layer / layer_info.
Output schemas not documented. LLMs cannot predict response structure (fields, types, pagination) for downstream tool calls or data extraction.
No input validation guidance for SQL injection risk. 'where' parameter accepts raw SQL clauses without documented constraints or sanitization hints.
Error responses are generic HTTP status codes without recovery guidance. 'ArcGIS Hub: 404' tells LLM nothing about what to do next.
No pagination documentation in tool descriptions. query_layer accepts limit/offset but description does not explain result capping or when pagination is needed.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2026-07-28+ | v2 |
Missing idempotency and rate-limit guidance. No indication whether repeated calls with same params are safe or if rate limits apply.