Verrow MCP
Provides rural and small-town US public data for AI agents, including zoning, airspace, soil, and permit checks. It returns structured JSON with source citations and uses the x402 payment protocol for paid queries.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://api.verrow.ai/mcpWhat you can do with it
- Check local zoning regulations
- Verify airspace restrictions
- Retrieve soil and wind data
- Check environmental use allowances
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- ruralgraph 0.1.0
- MCP protocol
- 2025-06-18
- Tools
- 24 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": true
}
}Tools
24 advertised
list_coverage
List every jurisdiction and data kind this service covers, with the data_as_of date for each. Free.
{
"type": "object",
"properties": {}
}check_coverage
Check whether a jurisdiction and data kind is covered before paying for a query. Free. Input: jurisdiction (name or slug), optional data_kind.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction"
],
"properties": {
"data_kind": {
"type": "string",
"maxLength": 60
},
"jurisdiction": {
"type": "string",
"maxLength": 120,
"minLength": 2
}
},
"additionalProperties": false
}get_pricing
List every tool and its price per call in USDC. Free.
{
"type": "object",
"properties": {}
}create_api_key
Create a prepaid API key. The key is shown once; store it in a secret store. Free.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"label": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"payer": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"credit_code": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}list_watches
List watches for an owner token returned when the watch was created. Free.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"owner_token"
],
"properties": {
"owner_token": {
"type": "string",
"pattern": "^w_[A-Za-z0-9_-]{20,}$"
}
},
"additionalProperties": false
}cancel_watch
Cancel a watch using its id and owner token. Free.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"watch_id",
"owner_token"
],
"properties": {
"watch_id": {
"type": "string",
"format": "uuid"
},
"owner_token": {
"type": "string",
"pattern": "^w_[A-Za-z0-9_-]{20,}$"
}
},
"additionalProperties": false
}get_label_rate
US EPA pesticide product lookup by EPA registration number (e.g. 66551-1). Returns today: product name and registration status, signal word, restricted-use flag, formulation, active ingredients, and label PDF file names with acceptance dates. The application rate, REI and PPE numbers are printed inside those PDFs; this release returns them as UNKNOWN until label-text extraction ships (Phase 2). $0.05 per call in USDC.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"epa_reg_no"
],
"properties": {
"epa_reg_no": {
"type": "string",
"pattern": "^\\d{1,7}-\\d{1,5}$"
}
},
"additionalProperties": false
}get_zoning
get_zoning Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction"
],
"properties": {
"zone": {
"type": "string",
"maxLength": 60,
"minLength": 1
},
"jurisdiction": {
"type": "string",
"maxLength": 120,
"minLength": 1
}
},
"additionalProperties": false
}check_use_allowed
check_use_allowed Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction",
"use"
],
"properties": {
"use": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"zone": {
"type": "string",
"maxLength": 60,
"minLength": 1
},
"jurisdiction": {
"type": "string",
"maxLength": 120,
"minLength": 1
}
},
"additionalProperties": false
}get_recent_decisions
get_recent_decisions Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1
},
"jurisdiction": {
"type": "string",
"maxLength": 120,
"minLength": 1
}
},
"additionalProperties": false
}check_airspace
check_airspace Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180
}
},
"additionalProperties": false
}get_wind
get_wind Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180
}
},
"additionalProperties": false
}get_esa_limits
get_esa_limits Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180
},
"month": {
"type": "integer",
"maximum": 12,
"minimum": 1
}
},
"additionalProperties": false
}get_soil
get_soil Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180
}
},
"additionalProperties": false
}check_license
check_license Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"license_number": {
"type": "string",
"maxLength": 60,
"minLength": 1
}
},
"additionalProperties": false
}check_state_registration
check_state_registration Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction"
],
"properties": {
"data_kind": {
"type": "string",
"maxLength": 60,
"minLength": 1
},
"jurisdiction": {
"type": "string",
"maxLength": 30,
"minLength": 1
}
},
"additionalProperties": false
}spray_check
spray_check Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"epa_reg_no",
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180
},
"epa_reg_no": {
"type": "string",
"maxLength": 30,
"minLength": 1
}
},
"additionalProperties": false
}solar_siting_check
solar_siting_check Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction"
],
"properties": {
"parcel": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"address": {
"type": "string",
"maxLength": 300,
"minLength": 1
},
"district": {
"type": "string",
"maxLength": 40,
"minLength": 1
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180
},
"jurisdiction": {
"type": "string",
"maxLength": 120,
"minLength": 1
}
},
"additionalProperties": false
}county_pack
county_pack Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction"
],
"properties": {
"label": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"jurisdiction": {
"type": "string",
"maxLength": 120,
"minLength": 1
}
},
"additionalProperties": false
}get_site_report
Site feasibility report for an address/parcel: zoning, allowed-use verdict, permits, recent decisions, FEMA NFHL flood zone and soil, each cited. Returns 422 with no charge when zoning or flood zone is UNKNOWN. $4.00 per call in USDC. Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"address",
"jurisdiction"
],
"properties": {
"parcel": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"address": {
"type": "string",
"maxLength": 300,
"minLength": 1
},
"district": {
"type": "string",
"maxLength": 20,
"minLength": 1
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180
},
"jurisdiction": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"proposed_use": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}watch_town
Watch a covered town for 30 days: council/planning decisions matching your keywords, delivered to an HTTPS webhook with HMAC signatures and retries. $9.00 per 30 days in USDC. Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction",
"keywords",
"webhook_url"
],
"properties": {
"label": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"keywords": {
"type": "array",
"items": {
"type": "string",
"maxLength": 60,
"minLength": 1
},
"maxItems": 10,
"minItems": 1
},
"webhook_url": {
"type": "string",
"format": "uri"
},
"jurisdiction": {
"type": "string",
"maxLength": 120,
"minLength": 1
}
},
"additionalProperties": false
}watch_parcel
Watch a parcel for 30 days: new permits or decisions touching it, delivered to an HTTPS webhook with HMAC signatures and retries. $4.00 per 30 days in USDC. Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction",
"webhook_url"
],
"properties": {
"label": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"parcel": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"address": {
"type": "string",
"maxLength": 300,
"minLength": 1
},
"webhook_url": {
"type": "string",
"format": "uri"
},
"jurisdiction": {
"type": "string",
"maxLength": 120,
"minLength": 1
}
},
"additionalProperties": false
}request_coverage
Request coverage for a town ($5). Becomes a top-priority demand signal and starts the records agent; you get $5 of call credits for that town once covered. Refund queued after 14 days if not covered. Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"jurisdiction"
],
"properties": {
"needs": {
"type": "array",
"items": {
"type": "string",
"maxLength": 200,
"minLength": 1
},
"maxItems": 10,
"minItems": 1
},
"jurisdiction": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"official_site_url": {
"type": "string",
"format": "uri"
}
},
"additionalProperties": false
}topup_credits
Add $5 of prepaid USDC credit to an API key, paid over x402. Credits are spent per call at listed prices. $5.00 per top-up. Verified: 100% golden accuracy (78/78), 100% page-cited, UNKNOWN never charged, 100% uptime (24h), data as of 2026-10-26.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"api_key"
],
"properties": {
"api_key": {
"type": "string",
"pattern": "^rk_[A-Za-z0-9_-]{20,}$"
}
},
"additionalProperties": false
}Prompts
Not advertised
Resources
Not advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 285 ms
- 95th percentile latency
- 285 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 285 ms · metadata changed · 24 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http verrow-mcp https://api.verrow.ai/mcpCodex
codex mcp add verrow-mcp --url https://api.verrow.ai/mcpCursor
{
"mcpServers": {
"verrow-mcp": {
"url": "https://api.verrow.ai/mcp"
}
}
}Cline
{
"mcpServers": {
"verrow-mcp": {
"type": "streamableHttp",
"url": "https://api.verrow.ai/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"verrow-mcp": {
"type": "http",
"url": "https://api.verrow.ai/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http verrow-mcp https://api.verrow.ai/mcpClaude Desktop
{
"mcpServers": {
"verrow-mcp": {
"url": "https://api.verrow.ai/mcp"
}
}
}Windsurf
{
"mcpServers": {
"verrow-mcp": {
"serverUrl": "https://api.verrow.ai/mcp"
}
}
}Let your agent find its tools
Find servers like Verrow MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.