OH Division of Geological Survey logo

OH Division of Geological Survey

Live

Ohio ODNR DGS — water wells + USDW (UIC injection-zone protection) + karst + ODNR seismic. ~651K water-well logs, ~189 USDW protection-zone polygons, ~46.7K karst points, ~2.2K earthquake records. Spec drift: searchMineralLocations DROPPED — upstream layer broken.

What is OH Division of Geological Survey?

Ohio ODNR Division of Geological Survey (DGS). Probed 2026-05-02. Native server at `gis.ohiodnr.gov/arcgis/rest/services/DGS_Services` — 14 MapServers in catalog, 6 layers consumed: Ohio_Water_Wells/1 'Well Logs' (~651,613 — water-well log inventory; layer 0 'Sealing Reports' has ~46,789 abandoned reports but Layer 1 is the primary inventory), USDW_Features/4 'USDW Areas' (~189 polygons — UIC injection-zone protection analog; distinct values: Berea Sandstone=169, Lockport Dolomite=11, Sharon Sandstone or deepest sandstone unit above the Berea=2, Black Hand Sandstone=1, Black Hand Sandstone absent=1, Not mapped=5), USDW_Features/2 'USDW Boundaries' (~5 polylines — fresh/saltwater interface lines), Earthquakes_EB/4 (~1,181 instrumental epicenters since 1968), Earthquakes_EB/3 (~1,007 historical epicenters), Karst_InteractiveMap/4 (~46,789 karst points). **Spec drift caught at probe**: searchMineralLocations DROPPED — DGS_Services/Mineral_Industry_Locations_AGOL returns HTTP 500 on EVERY query (every where-clause variant attempted, both MapServer/0 and FeatureServer/0). Layer is broken upstream; documented in handler comments and getServiceInfo._droppedMethods. upstream quirks: COUNTY_DESC on Water Wells UPPERCASE ('DELAWARE', 'BELMONT'); WELL_USE_DESC distinct top values DOMESTIC=490,194, MONITOR=42,385, AGRIC/IRRIG=14,285, DEWATERING=3,318, INDUSTRIAL=1,748, COMMERCIAL=1,687, INJECTION/DISPO=478 (handler matches via UPPER LIKE). AQUIFER_TYPE_DESC has 200+ free-text values. Karst POINT_TYPE strings have trailing whitespace ('Spring - Field Verified ', 'Spring - Suspect-NotVisited') — handler trims. Earthquakes_EB DATE column is epoch-ms while YEAR_/MO/DA are floats — handler returns both. maxRecordCount varies: water_wells=2000, USDW=1000, Karst=2000, Earthquakes=2000.

Available Tools

  • searchWaterWells
    Ohio water-well log inventory (~651K). Filter county/aquiferType/wellUse/driller/yearFrom/yearTo/flowingOnly.
  • searchUSDWFeatures
    USDW protection zones for UIC injection planning. Default areas (~189 polygons); pass featureType='boundaries' for ~5 fresh/saltwater interface lines.
  • searchEarthquakes
    ODNR seismic catalog. catalog: instrumental | historical | both. Filter county/minMagnitude/yearFrom/yearTo.
  • searchKarstFeatures
    Karst points (~46.7K). Filter county/pointType/bgUnit. POINT_TYPE has trailing whitespace upstream.
  • getServiceInfo
    Schema + record counts for any of the 6 services.

Requirements

  • ENABLE_ENVIRONMENTAL_APIS
    Set ENABLE_ENVIRONMENTAL_APIS=true to allow connector toggles.

Quick Setup Guide

Follow these steps to connect your AI agents to this connector

Set ENABLE_ENVIRONMENTAL_APIS=true for your deployment.

Open /mcp and turn on OH Division of Geological Survey with the environmental switch.

Call the oh-dgs MCP tool — start with method=searchWaterWells or method=searchUSDWFeatures.

Connect to Your AI Assistant

Choose your AI assistant below for specific setup instructions

Follow these steps to connect OH Division of Geological Survey to Claude:

Step 1: Open Claude Settings

Launch Claude → Click the profile button (bottom left) → Navigate to Settings

Step 2: Access Connectors

Scroll down to the Connectors tab → Navigate to the bottom → Click “Add Custom Connector”

Step 3: Name Your Connector

Enter any name you'd like for this connector

Step 4: Get the Connector URL

Log in to PatchOps → Navigate to the /mcp page → Copy the connector URL you want to use

Step 5: Add the Connector

Paste the URL in the “Remote MCP Server URL” text box → Click Add

Step 6: Start Using

Your connector is now ready to use in Claude

Follow these steps to connect OH Division of Geological Survey to ChatGPT:

Step 1: Enable Developer Mode

Go to Settings → Connectors → Advanced → Enable Developer mode

Step 2: Create New Connector

Go back to Connectors page → Click “Create” (top right)

Step 3: Name Your Connector

Enter any name you'd like for this connector (descriptions are optional)

Step 4: Get the Connector URL

Log in to PatchOps → Navigate to the /mcp page → Copy the connector URL you want to use

Step 5: Add the URL

Paste the URL in the “MCP Server URL” text box

Step 6: Set Authentication

Click the authentication dropdown → Select “No authentication” (PatchOps handles authentication internally)

Step 7: Create the Connector

Click “I understand and want to continue” checkbox → Press Create

Step 8: Using the Connector

Start a new chat → Click the + button (left of text box) → Open dropdown → Hover over three dots labeled “More” → Select your connector

Instructions for connecting OH Division of Geological Survey to GitHub Copilot:

Coming Soon

Detailed setup instructions for GitHub Copilot will be added here.

For other MCP-compatible platforms:

Step 1: Get the Connector URL

Log in to PatchOps → Navigate to the /mcp page → Copy the connector URL you want to use

Step 2: Add to Configuration

Add this configuration to your MCP settings file. Replace the URL with your specific connector URL from the /mcp page:

"OH Division of Geological Survey-MCP": {
  "url": "https://patchops.ai/api/mcp/...",
  "type": "http"
}

Example Configuration

Here’s an example using PatchOps MCP:

"PatchOps-MCP": {
  "url": "https://patchops.ai/api/mcp/...",
  "type": "http"
}