GISDB

Source-backed county property records, owner-name portfolios and three Hamilton County lead packa...

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
95%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~5,188Tokens (tool definitions)
~3.7 KBTypical response size
Significant attention impact (4.05% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "gisdb": {
      "url": "https://gisdb.io/api/v1/mcp"
    }
  }
}

Remote endpoints

https://gisdb.io/api/v1/mcpstreamable-http

What it can do

Tool inventory

Tools (15)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢gisdb_search_catalog(query, state)

Find county records packages and directory listings. Check each package's availability, price, source coverage and limits before buying. A county listing does not confirm lead, assessment or CAD coverage.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "description": "Optional county-name filter. Released records catalogs also accept county FIPS. Omit to browse the state's catalog.",
      "maxLength": 200,
      "type": "string"
    },
    "state": {
      "description": "Explicit two-letter state code, such as TN or GA.",
      "maxLength": 2,
      "minLength": 2,
      "type": "string"
    }
  },
  "required": [
    "state"
  ],
  "additionalProperties": false
}
🟢gisdb_get_metadata(county, state)

Read a county records package's verified details, source coverage, missing facts and limits. Returns unavailable when no verified package exists. CAD compatibility and the current tax year are not assumed.

Input Schema

{
  "type": "object",
  "properties": {
    "county": {
      "description": "Explicit county name or five-digit county FIPS within the selected state.",
      "maxLength": 100,
      "minLength": 1,
      "type": "string"
    },
    "state": {
      "description": "Explicit two-letter state code, such as TN or GA.",
      "maxLength": 2,
      "minLength": 2,
      "type": "string"
    }
  },
  "required": [
    "county",
    "state"
  ],
  "additionalProperties": false
}
🟢gisdb_search_records(county, format, limit, mode, offset, ...)

Search recorded county property facts or repeated owner-name groups. Use property_records for address, parcel or owner-name searches, or owner_portfolios for unfiltered groups. Property records allow 1–250 rows and offsets through 1000000; groups allow 1–100 rows without query, signal or offset. JSON preview only. Names do not prove identity, authority, debt, equity, distress, cash purchases or intent to sell.

Input Schema

{
  "type": "object",
  "properties": {
    "county": {
      "description": "Explicit county name or slug within the selected state; no county is assumed.",
      "maxLength": 100,
      "minLength": 1,
      "type": "string"
    },
    "format": {
      "description": "Return a JSON preview. Downloadable CSV products require a separately reviewed purchase and verified delivery.",
      "enum": [
        "json"
      ],
      "type": "string"
    },
    "limit": {
      "description": "Maximum returned rows: 1–250 property records (default 25), or 1–100 owner-name groups (default 20).",
      "maximum": 250,
      "minimum": 1,
      "type": "integer"
    },
    "mode": {
      "description": "Choose property_records to search retained property observations, or owner_portfolios for unfiltered repeated owner-name groups without pagination.",
      "enum": [
        "property_records",
        "owner_portfolios"
      ],
      "type": "string"
    },
    "offset": {
      "description": "Zero-based row offset for property_records mode, from 0 through 1000000; default 0. Omit for owner_portfolios.",
      "maximum": 1000000,
      "minimum": 0,
      "type": "integer"
    },
    "q": {
      "description": "Address, parcel or retained owner-name label to search in property_records mode. Omit or send an empty string to browse all retained property records.",
      "maxLength": 200,
      "type": "string"
    },
    "signal": {
      "description": "Optional assessment-observation filter for property_records mode. No notice or motivation signals are supported.",
      "enum": [
        "assessment"
      ],
      "type": "string"
    },
    "state": {
      "description": "Explicit two-letter state code, such as TN or GA.",
      "maxLength": 2,
      "minLength": 2,
      "type": "string"
    }
  },
  "required": [
    "mode",
    "county",
    "state"
  ],
  "additionalProperties": false,
  "oneOf": [
    {
      "properties": {
        "mode": {
          "const": "property_records"
        }
      }
    },
    {
      "not": {
        "anyOf": [
          {
            "required": [
              "q"
            ]
          },
          {
            "required": [
              "signal"
            ]
          },
          {
            "required": [
              "offset"
            ]
          }
        ]
      },
      "properties": {
        "limit": {
          "maximum": 100
        },
        "mode": {
          "const": "owner_portfolios"
        }
      }
    }
  ]
}
🟢gisdb_guide_search(answers, preview_limit, preview_offset, skipped_question_ids)

Find available property records, owner-name groups, lead packages or county downloads. Ask one next_question at a time. Accept unknown or skipped answers and resend previous answers and skipped IDs. Returns source coverage, previews and available offers. No sign-in or purchase required. Unsupported notices never fall back to assessment records.

Input Schema

{
  "type": "object",
  "properties": {
    "answers": {
      "additionalProperties": false,
      "description": "Accumulated explicit answers for this search. Retain previous choices and omit unknown values; never invent an answer.",
      "properties": {
        "county": {
          "description": "County name or five-digit county FIPS within the selected state. Preserve the user's explicit choice.",
          "maxLength": 100,
          "minLength": 1,
          "type": "string"
        },
        "dataset_kind": {
          "description": "For county-record packages, choose assessment observations or recorded ownership data. Availability differs by county.",
          "enum": [
            "assessment",
            "ownership"
          ],
          "type": "string"
        },
        "delivery": {
          "description": "One-time access or recurring updates, as explicitly selected by the user. Recurring service requires an exact returned reviewed offer.",
          "enum": [
            "one_time",
            "recurring"
          ],
          "type": "string"
        },
        "format": {
          "description": "Requested preview or download format. Availability depends on the selected product; purchased lead packages require CSV.",
          "enum": [
            "json",
            "csv"
          ],
          "type": "string"
        },
        "kind": {
          "description": "The user's research goal: property observations, repeated owner-name groups, a county-record package, notices, or a packaged lead product.",
          "enum": [
            "property_records",
            "portfolio_owners",
            "records_package",
            "notices",
            "lead_package"
          ],
          "type": "string"
        },
        "lead_offer_id": {
          "description": "An exact lead_products offer_id returned by this guide after reviewing scope, source date and purchase frequency.",
          "maxLength": 100,
          "minLength": 1,
          "type": "string"
        },
        "lead_package": {
          "description": "Exact source-backed package category. Does not imply seller motivation, equity or a future sale.",
          "enum": [
            "realtor-radar",
            "wholesaler-pro",
            "commercial-pro"
          ],
          "type": "string"
        },
        "notice_kind": {
          "description": "Requested notice category. Unsupported categories remain unavailable and do not fall back to assessment records.",
          "enum": [
            "foreclosure",
            "tax_delinquency",
            "probate",
            "divorce",
            "bankruptcy",
            "code_enforcement",
            "other"
          ],
          "type": "string"
        },
        "product_id": {
          "description": "Exact product_id selected from the returned county-record products after reviewing its scope, source and price.",
          "maxLength": 128,
          "type": "string"
        },
        "query": {
          "description": "Address, parcel or retained owner-name label. An explicit empty string browses all records. Omit unknown answers.",
          "maxLength": 200,
          "type": "string"
        },
        "state": {
          "description": "Explicit two-letter state code chosen by the user, such as TN or GA. Omit while unknown.",
          "maxLength": 2,
          "minLength": 2,
          "type": "string"
        },
        "subscription_offer_id": {
          "description": "Exact subscription offer_id returned for this same search and source after reviewing its renewal terms.",
          "maxLength": 128,
          "type": "string"
        }
      },
      "required": [],
      "type": "object"
    },
    "preview_limit": {
      "default": 5,
      "description": "Maximum number of preview rows to return, from 1 through 20; default 5. This does not limit the scope of a purchased package.",
      "maximum": 20,
      "minimum": 1,
      "type": "integer"
    },
    "preview_offset": {
      "default": 0,
      "description": "Zero-based offset for supported property-record or lead-package previews, from 0 through 10000; default 0. Owner-name group previews do not support pagination.",
      "maximum": 10000,
      "minimum": 0,
      "type": "integer"
    },
    "skipped_question_ids": {
      "description": "Question IDs explicitly skipped by the user. Resend them so those questions are not asked again.",
      "items": {
        "description": "The returned next_question ID the user chose to skip.",
        "enum": [
          "search_kind",
          "lead_package",
          "lead_offer",
          "state",
          "county",
          "query",
          "dataset_kind",
          "notice_kind",
          "delivery",
          "format"
        ],
        "type": "string"
      },
      "maxItems": 10,
      "type": "array",
      "uniqueItems": true
    }
  },
  "required": [],
  "additionalProperties": false,
  "description": "Complete current search input, including accumulated explicit answers, skipped questions and the requested preview page."
}

Output Schema

{
  "type": "object"
}
🟡gisdb_start_search(idempotency_key, input)

Save this GISDB search to the connected account. Reuse the same idempotency_key if the result is uncertain. Does not buy, subscribe or send anything.

Input Schema

{
  "type": "object",
  "properties": {
    "idempotency_key": {
      "description": "Stable retry key for this exact request. Reuse it with identical arguments after an uncertain result; use a new key for changed arguments.",
      "maxLength": 128,
      "minLength": 1,
      "pattern": "^[A-Za-z0-9_-]+$",
      "type": "string"
    },
    "input": {
      "additionalProperties": false,
      "description": "Complete current search input, including accumulated explicit answers, skipped questions and the requested preview page.",
      "properties": {
        "answers": {
          "additionalProperties": false,
          "description": "Accumulated explicit answers for this search. Retain previous choices and omit unknown values; never invent an answer.",
          "properties": {
            "county": {
              "description": "County name or five-digit county FIPS within the selected state. Preserve the user's explicit choice.",
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            },
            "dataset_kind": {
              "description": "For county-record packages, choose assessment observations or recorded ownership data. Availability differs by county.",
              "enum": [
                "assessment",
                "ownership"
              ],
              "type": "string"
            },
            "delivery": {
              "description": "One-time access or recurring updates, as explicitly selected by the user. Recurring service requires an exact returned reviewed offer.",
              "enum": [
                "one_time",
                "recurring"
              ],
              "type": "string"
            },
            "format": {
              "description": "Requested preview or download format. Availability depends on the selected product; purchased lead packages require CSV.",
              "enum": [
                "json",
                "csv"
              ],
              "type": "string"
            },
            "kind": {
              "description": "The user's research goal: property observations, repeated owner-name groups, a county-record package, notices, or a packaged lead product.",
              "enum": [
                "property_records",
                "portfolio_owners",
                "records_package",
                "notices",
                "lead_package"
              ],
              "type": "string"
            },
            "lead_offer_id": {
              "description": "An exact lead_products offer_id returned by this guide after reviewing scope, source date and purchase frequency.",
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            },
            "lead_package": {
              "description": "Exact source-backed package category. Does not imply seller motivation, equity or a future sale.",
              "enum": [
                "realtor-radar",
                "wholesaler-pro",
                "commercial-pro"
              ],
              "type": "string"
            },
            "notice_kind": {
              "description": "Requested notice category. Unsupported categories remain unavailable and do not fall back to assessment records.",
              "enum": [
                "foreclosure",
                "tax_delinquency",
                "probate",
                "divorce",
                "bankruptcy",
                "code_enforcement",
                "other"
              ],
              "type": "string"
            },
            "product_id": {
              "description": "Exact product_id selected from the returned county-record products after reviewing its scope, source and price.",
              "maxLength": 128,
              "type": "string"
            },
            "query": {
              "description": "Address, parcel or retained owner-name label. An explicit empty string browses all records. Omit unknown answers.",
              "maxLength": 200,
              "type": "string"
            },
            "state": {
              "description": "Explicit two-letter state code chosen by the user, such as TN or GA. Omit while unknown.",
              "maxLength": 2,
              "minLength": 2,
              "type": "string"
            },
            "subscription_offer_id": {
              "description": "Exact subscription offer_id returned for this same search and source after reviewing its renewal terms.",
              "maxLength": 128,
              "type": "string"
            }
          },
          "required": [],
          "type": "object"
        },
        "preview_limit": {
          "default": 5,
          "description": "Maximum number of preview rows to return, from 1 through 20; default 5. This does not limit the scope of a purchased package.",
          "maximum": 20,
          "minimum": 1,
          "type": "integer"
        },
        "preview_offset": {
          "default": 0,
          "description": "Zero-based offset for supported property-record or lead-package previews, from 0 through 10000; default 0. Owner-name group previews do not support pagination.",
          "maximum": 10000,
          "minimum": 0,
          "type": "integer"
        },
        "skipped_question_ids": {
          "description": "Question IDs explicitly skipped by the user. Resend them so those questions are not asked again.",
          "items": {
            "description": "The returned next_question ID the user chose to skip.",
            "enum": [
              "search_kind",
              "lead_package",
              "lead_offer",
              "state",
              "county",
              "query",
              "dataset_kind",
              "notice_kind",
              "delivery",
              "format"
            ],
            "type": "string"
          },
          "maxItems": 10,
          "type": "array",
          "uniqueItems": true
        }
      },
      "required": [],
      "type": "object"
    }
  },
  "required": [
    "idempotency_key",
    "input"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object"
}
🟢gisdb_continue_search(expected_revision, idempotency_key, input, workflow_id)

Continue this saved search with its latest revision and all previous answers and skips. Review any changed source or offer. Reuse a retry key only with identical arguments.

Input Schema

{
  "type": "object",
  "properties": {
    "expected_revision": {
      "description": "Latest workflow revision returned for this search. Stale values are rejected.",
      "minimum": 0,
      "type": "integer"
    },
    "idempotency_key": {
      "description": "Stable retry key for this exact request. Reuse it with identical arguments after an uncertain result; use a new key for changed arguments.",
      "maxLength": 128,
      "minLength": 1,
      "pattern": "^[A-Za-z0-9_-]+$",
      "type": "string"
    },
    "input": {
      "additionalProperties": false,
      "description": "Complete current search input, including accumulated explicit answers, skipped questions and the requested preview page.",
      "properties": {
        "answers": {
          "additionalProperties": false,
          "description": "Accumulated explicit answers for this search. Retain previous choices and omit unknown values; never invent an answer.",
          "properties": {
            "county": {
              "description": "County name or five-digit county FIPS within the selected state. Preserve the user's explicit choice.",
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            },
            "dataset_kind": {
              "description": "For county-record packages, choose assessment observations or recorded ownership data. Availability differs by county.",
              "enum": [
                "assessment",
                "ownership"
              ],
              "type": "string"
            },
            "delivery": {
              "description": "One-time access or recurring updates, as explicitly selected by the user. Recurring service requires an exact returned reviewed offer.",
              "enum": [
                "one_time",
                "recurring"
              ],
              "type": "string"
            },
            "format": {
              "description": "Requested preview or download format. Availability depends on the selected product; purchased lead packages require CSV.",
              "enum": [
                "json",
                "csv"
              ],
              "type": "string"
            },
            "kind": {
              "description": "The user's research goal: property observations, repeated owner-name groups, a county-record package, notices, or a packaged lead product.",
              "enum": [
                "property_records",
                "portfolio_owners",
                "records_package",
                "notices",
                "lead_package"
              ],
              "type": "string"
            },
            "lead_offer_id": {
              "description": "An exact lead_products offer_id returned by this guide after reviewing scope, source date and purchase frequency.",
              "maxLength": 100,
              "minLength": 1,
              "type": "string"
            },
            "lead_package": {
              "description": "Exact source-backed package category. Does not imply seller motivation, equity or a future sale.",
              "enum": [
                "realtor-radar",
                "wholesaler-pro",
                "commercial-pro"
              ],
              "type": "string"
            },
            "notice_kind": {
              "description": "Requested notice category. Unsupported categories remain unavailable and do not fall back to assessment records.",
              "enum": [
                "foreclosure",
                "tax_delinquency",
                "probate",
                "divorce",
                "bankruptcy",
                "code_enforcement",
                "other"
              ],
              "type": "string"
            },
            "product_id": {
              "description": "Exact product_id selected from the returned county-record products after reviewing its scope, source and price.",
              "maxLength": 128,
              "type": "string"
            },
            "query": {
              "description": "Address, parcel or retained owner-name label. An explicit empty string browses all records. Omit unknown answers.",
              "maxLength": 200,
              "type": "string"
            },
            "state": {
              "description": "Explicit two-letter state code chosen by the user, such as TN or GA. Omit while unknown.",
              "maxLength": 2,
              "minLength": 2,
              "type": "string"
            },
            "subscription_offer_id": {
              "description": "Exact subscription offer_id returned for this same search and source after reviewing its renewal terms.",
              "maxLength": 128,
              "type": "string"
            }
          },
          "required": [],
          "type": "object"
        },
        "preview_limit": {
          "default": 5,
          "description": "Maximum number of preview rows to return, from 1 through 20; default 5. This does not limit the scope of a purchased package.",
          "maximum": 20,
          "minimum": 1,
          "type": "integer"
        },
        "preview_offset": {
          "default": 0,
          "description": "Zero-based offset for supported property-record or lead-package previews, from 0 through 10000; default 0. Owner-name group previews do not support pagination.",
          "maximum": 10000,
          "minimum": 0,
          "type": "integer"
        },
        "skipped_question_ids": {
          "description": "Question IDs explicitly skipped by the user. Resend them so those questions are not asked again.",
          "items": {
            "description": "The returned next_question ID the user chose to skip.",
            "enum": [
              "search_kind",
              "lead_package",
              "lead_offer",
              "state",
              "county",
              "query",
              "dataset_kind",
              "notice_kind",
              "delivery",
              "format"
            ],
            "type": "string"
          },
          "maxItems": 10,
          "type": "array",
          "uniqueItems": true
        }
      },
      "required": [],
      "type": "object"
    },
    "workflow_id": {
      "description": "Exact account-owned workflow_id returned by the saved-search tools.",
      "maxLength": 100,
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "workflow_id",
    "expected_revision",
    "idempotency_key",
    "input"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object"
}
🟢gisdb_get_search(workflow_id)

Reopen this account's saved search and recheck its sources and offers. Keep the user's preferences and ask them to confirm any changed source or offer.

Input Schema

{
  "type": "object",
  "properties": {
    "workflow_id": {
      "description": "Exact account-owned workflow_id returned by the saved-search tools.",
      "maxLength": 100,
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "workflow_id"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object"
}
🟡gisdb_save_search(expected_revision, idempotency_key, name, workflow_id)

Name and save this account's search. Saving does not buy a subscription or start updates. Use the current revision and a stable retry key.

Input Schema

{
  "type": "object",
  "properties": {
    "expected_revision": {
      "description": "Latest workflow revision returned for this search. Stale values are rejected.",
      "minimum": 0,
      "type": "integer"
    },
    "idempotency_key": {
      "description": "Stable retry key for this exact request. Reuse it with identical arguments after an uncertain result; use a new key for changed arguments.",
      "maxLength": 128,
      "minLength": 1,
      "pattern": "^[A-Za-z0-9_-]+$",
      "type": "string"
    },
    "name": {
      "description": "User-chosen name for this retained search. Naming it does not purchase or activate updates.",
      "maxLength": 80,
      "minLength": 1,
      "type": "string"
    },
    "workflow_id": {
      "description": "Exact account-owned workflow_id returned by the saved-search tools.",
      "maxLength": 100,
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "workflow_id",
    "expected_revision",
    "idempotency_key",
    "name"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object"
}
🟢gisdb_list_saved_searches

List this connected GISDB account's saved searches, with their workflow IDs and revisions. Reopen a search to check its source before calling it current.

Input Schema

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}

Output Schema

{
  "type": "object"
}
🟡gisdb_create_checkout(idempotency_key, offer_id, workflow_id, workflow_revision)

Create a secure payment link for the selected reviewed records, lead or subscription offer. First show its price, coverage, update frequency, renewal and cancellation terms and get the user's purchase request. Card details stay on the hosted page. Reuse the original idempotency_key if the response is uncertain. Verify payment with gisdb_get_order.

Input Schema

{
  "type": "object",
  "properties": {
    "idempotency_key": {
      "description": "Stable retry key for this exact request. Reuse it with identical arguments after an uncertain result; use a new key for changed arguments.",
      "maxLength": 128,
      "minLength": 1,
      "pattern": "^[A-Za-z0-9_-]+$",
      "type": "string"
    },
    "offer_id": {
      "description": "Exact reviewed offer_id selected in the current workflow after its price, scope and terms were shown.",
      "maxLength": 100,
      "minLength": 1,
      "type": "string"
    },
    "workflow_id": {
      "description": "Exact account-owned workflow_id returned by the saved-search tools.",
      "maxLength": 100,
      "minLength": 1,
      "type": "string"
    },
    "workflow_revision": {
      "description": "Exact workflow revision bound to the selected reviewed offer.",
      "minimum": 0,
      "type": "integer"
    }
  },
  "required": [
    "workflow_id",
    "workflow_revision",
    "offer_id",
    "idempotency_key"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object"
}
🟢gisdb_get_order(order_id)

Check the same account's order after checkout or an uncertain result. Verifies payment, subscription, access and delivery separately. Use only its returned order_id. A payment link or confirmed payment does not prove files were delivered.

Input Schema

{
  "type": "object",
  "properties": {
    "order_id": {
      "description": "Exact order_id returned by checkout or an earlier order response for this connected account.",
      "maxLength": 100,
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "order_id"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object"
}
🟢gisdb_open_billing_portal(order_id)

Open secure billing for this account's order or subscription when the user asks. Payment details stay on the hosted page. Read the order after returning to confirm any change; opening the page alone confirms nothing.

Input Schema

{
  "type": "object",
  "properties": {
    "order_id": {
      "description": "Exact order_id returned by checkout or an earlier order response for this connected account.",
      "maxLength": 100,
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "order_id"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object"
}
🔴gisdb_cancel_subscription(order_id)

Cancel the selected subscription's renewal at the end of its paid period, only when the user asks. Returns confirmed renewal and access status. Pausing updates does not cancel renewal.

Input Schema

{
  "type": "object",
  "properties": {
    "order_id": {
      "description": "Exact order_id returned by checkout or an earlier order response for this connected account.",
      "maxLength": 100,
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "order_id"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object"
}
🟢gisdb_get_lead_updates(workflow_id)

Read this account's saved-search updates, delivery revision, source dates, check times and available downloads. Only a successful source check can establish no new records. Failed checks keep the last successful result. Subscription and delivery status are separate.

Input Schema

{
  "type": "object",
  "properties": {
    "workflow_id": {
      "description": "Exact account-owned workflow_id returned by the saved-search tools.",
      "maxLength": 100,
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "workflow_id"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object"
}
🔴gisdb_set_lead_updates(action, expected_revision, idempotency_key, workflow_id)

Pause or resume updates for this saved search when the user asks. Read updates first, then use its delivery revision and a stable retry key. Pausing does not cancel renewal. Resuming requires verified paid access and source checks and cannot override a newer pause.

Input Schema

{
  "type": "object",
  "properties": {
    "action": {
      "description": "Explicit requested delivery change: pause checks and delivery, or resume subject to entitlement and source checks. This never cancels subscription renewal.",
      "enum": [
        "pause",
        "resume"
      ],
      "type": "string"
    },
    "expected_revision": {
      "description": "Latest delivery_revision returned by gisdb_get_lead_updates. A stale value cannot override a newer pause or resume.",
      "minimum": 0,
      "type": "integer"
    },
    "idempotency_key": {
      "description": "Stable retry key for this exact request. Reuse it with identical arguments after an uncertain result; use a new key for changed arguments.",
      "maxLength": 128,
      "minLength": 1,
      "pattern": "^[A-Za-z0-9_-]+$",
      "type": "string"
    },
    "workflow_id": {
      "description": "Exact account-owned workflow_id returned by the saved-search tools.",
      "maxLength": 100,
      "minLength": 1,
      "type": "string"
    }
  },
  "required": [
    "action",
    "workflow_id",
    "expected_revision",
    "idempotency_key"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded15 tools