Skip to main content
Glama
hyperionxmota

Cook County / Chicago Property Data

Cook County / Chicago Property Data — MCP server

hyperionxmota/cook-county-property-mcp MCP server x402 resources A2A agent card OpenAPI llms.txt Pricing

A hosted, pay-per-call Model Context Protocol (MCP) server for Cook County, Illinois — including the City of Chicago — property records: parcels, recorded sales & deed history, building permits, and property-tax assessment history, joined and normalized into one answer. Plus comparable sales (comps) and a lightweight automated valuation.

No signup, no API key — pay per call via the x402 protocol (USDC on Base or Solana).

What this adds over raw open data

This returns finished, joined answers — not raw rows you have to query and stitch. The county open data (Socrata) can't give you:

  • Building permits linked to a PIN. The Chicago permits feed has no PIN field — the permit→parcel link is derived here (exact address match + nearest-parcel geo match). You can't reproduce this with a raw SoQL query.

  • A street address on a parcel. Parcel Universe has no address; it's joined in from a separate dataset here.

  • Comparable-sales valuation. Arm's-length filtering, same-neighborhood/class matching, and an implied low/median/high range — derived analysis, not a row fetch.

So one call returns a normalized property record; against raw open data you'd orchestrate multiple datasets and rebuild joins that don't exist upstream.

Related MCP server: assessor-lookup-mcp

Connect

Tools

Tool

Price

Description

get_free_sample

FREE

Fixed example of every response shape — evaluate before paying.

search_chicago_property_by_address

FREE

Resolve a street address → parcel PIN(s). The no-PIN entry point.

get_cook_county_parcel

$0.01

Single parcel record by 14-digit PIN.

get_cook_county_property_dossier

$0.03

Full dossier: address, sales & deed history, permits, assessment history.

find_chicago_comparable_sales

$0.10

Comparable sales + implied low/median/high valuation.

The PIN tools return an HTTP 402 with machine-readable x402 payment terms; pay in USDC and retry. Search and the sample are free — and three real parcels are served free on the paid routes (live data you can verify against the county's own portals): 09253050270000 · 09253060510000 · 09253140190000.

Data & coverage

~1.9M parcels, refreshed nightly from Cook County Assessor, Cook County Recorder of Deeds, and City of Chicago open-data portals (Socrata). Property-keyed public records only — no owner/occupant personal data.

Use cases

Real-estate due diligence, automated valuation / comps, title & lien research prep, lead enrichment, and market analysis — for autonomous agents and LLM pipelines.

Available Tools

4 tools
find_chicago_comparable_salesA

Comparable sales (comps) and a lightweight valuation for a Cook County / Chicago property.

Returns recent arm's-length sales in the same assessor neighborhood and property class as the subject PIN (last ~18 months), plus an implied low/median/high price range. Non-arm's-length and multi-parcel deeds are filtered out — a derived valuation you won't get from a raw open-data query. Use for valuation, investment screening, and underwriting. Paid: $0.10 per call via x402.

ParametersJSON Schema
NameRequiredDescriptionDefault
pinYes14-digit Cook County PIN, digits or dashed form (e.g. '14081200170000' or '14-08-120-017-0000'); a 10-digit PIN is also accepted. Use search_chicago_property_by_address first if you only have a street address.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Discloses data recency (~18 months), filtering (arm's-length, non-multi-parcel), and pricing ($0.10 per call). Does not cover rate limits or output format details beyond price range.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Five sentences, each carrying essential information: purpose, output details, filtering, use cases, and pricing. No redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given one parameter and no output schema, the description covers purpose, input format, behavioral traits, and pricing. It could elaborate on the exact output structure (e.g., fields in the comps list), but the mentioned 'low/median/high price range' provides sufficient expectational completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema already describes the pin parameter with 100% coverage. Description adds value by specifying accepted formats (14-digit, dashed, 10-digit) and a usage hint to use another tool for address-to-PIN conversion.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it returns comparable sales and a lightweight valuation for Cook County/Chicago properties. It specifies the verb 'find' and distinguishes the tool from siblings by focusing on comps and derived valuation, not raw data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly mentions use cases: valuation, investment screening, underwriting. Provides a hint to use search_chicago_property_by_address first if only an address. Lacks explicit when-not-to-use instructions but context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_cook_county_parcelA

Look up a single Cook County / Chicago parcel by PIN.

Returns the parcel record: street address, city, ZIP, assessor property class, township, neighborhood code, ward/municipality, latitude/longitude, and tax year. The cheap single-property lookup; use get_cook_county_property_dossier when you also need sales, permits, and assessment history. Paid: $0.01 per call via x402. Source: Cook County Assessor, refreshed nightly.

ParametersJSON Schema
NameRequiredDescriptionDefault
pinYes14-digit Cook County PIN, digits or dashed form (e.g. '14081200170000' or '14-08-120-017-0000'); a 10-digit PIN is also accepted. Use search_chicago_property_by_address first if you only have a street address.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses the cost ($0.01 per call via x402), data source (Cook County Assessor), and refresh frequency (nightly). It lists the fields returned (address, city, ZIP, etc.) without needing an output schema. It could mention that it is a read-only operation, but the description implies it and provides sufficient behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is four sentences long, front-loaded with the purpose, and contains no unnecessary words. Every sentence adds value: purpose, returned fields, cost, source, and alternative tool guidance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has only one parameter, no output schema, and no annotations, the description covers all essential context: what the tool does, what it returns, when to use alternatives, cost, and data provenance. It is complete for an agent to correctly select and invoke this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema coverage is 100% and already describes the PIN parameter in detail, including formats (14-digit, dashed, 10-digit) and a hint to use search_chicago_property_by_address for address-based lookups. The description adds no new parameter semantics beyond what the schema provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Look up' and the resource 'single Cook County / Chicago parcel by PIN'. It distinguishes itself from sibling tools by explicitly naming get_cook_county_property_dossier as the alternative when more data is needed, and implies that search_chicago_property_by_address is for address-based lookups.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says to use this tool for a cheap single-property lookup and directs users to use get_cook_county_property_dossier if they need sales, permits, and assessment history. It also advises using search_chicago_property_by_address first if only a street address is available, providing clear context and exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_cook_county_property_dossierA

Full property dossier for a Cook County / Chicago parcel in one call.

Returns parcel basics PLUS recorded sales & deed history, building permits, and property-tax assessment history, joined and normalized into one record — the one-call due-diligence answer. Permits are LINKED to the PIN here (the raw permit open-data has no PIN; links are derived by address + geo match) — a join you can't reproduce with raw open-data queries. Use for valuation, underwriting, title and lien research prep, and lead enrichment. Paid: $0.03 per call via x402. Public records only; no owner or occupant personal data.

ParametersJSON Schema
NameRequiredDescriptionDefault
pinYes14-digit Cook County PIN, digits or dashed form (e.g. '14081200170000' or '14-08-120-017-0000'); a 10-digit PIN is also accepted. Use search_chicago_property_by_address first if you only have a street address.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description fully carries the burden. It discloses cost ($0.03 per call), data sources (public records), limitations (no owner personal data), and the derivation of permit-PIN links. Provides a clear picture of behavior and constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, each dense with relevant information. Front-loaded with purpose and scope, followed by specific data contents and practical notes. No extraneous words or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description thoroughly explains what is returned (sales, deeds, permits, tax assessments) and how it's joined. Also covers cost, derivation, and privacy scope. Complete for a dossier retrieval tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 100% coverage, with a detailed description for the single 'pin' parameter including format examples and a usage hint. The tool description does not add new information about the parameter beyond the schema, meeting the baseline expectation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states tool returns a 'full property dossier' including parcel basics, sales, deed history, permits, and tax assessments. It distinguishes from siblings by highlighting the permit-to-PIN linking that is not possible with raw open data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly advises using search_chicago_property_by_address if only a street address is available. Also lists use cases (valuation, underwriting, title research, lead enrichment) and notes that no personal data is included. Could be more explicit about when not to use, but covers key guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_chicago_property_by_addressA

Resolve a Cook County / Chicago street address to its parcel PIN(s).

The no-PIN entry point: when you have a street address but not a 14-digit PIN, call this FIRST, then pass a returned pin to get_cook_county_parcel, get_cook_county_property_dossier, or find_chicago_comparable_sales. Returns ranked candidate parcels, each with pin, prop_address, prop_city, prop_zip, and a 0-1 score (address similarity). Source: Cook County Assessor address records. Paid: $0.01 per call via x402.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesFull or partial Cook County / Chicago street address, at least ~4 characters, e.g. '1 E 113th St' or '5352 N Magnolia Ave'.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It discloses paid nature ($0.01 via x402), data source, and return format with scores. Does not mention side effects but appears read-only. Could be more explicit about being read-only, but adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise paragraph with clear structure: purpose, workflow, return details, source, and cost. Every sentence adds value, no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers essential aspects: purpose, usage order, return fields, cost. Lacks mention of error handling or behavior when no match found, but for a simple search tool it is nearly complete. Output schema not provided so description's list of return fields is helpful.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description covers the single parameter 'address' with format and examples. The description adds workflow context but no new semantic details about the parameter itself. Schema coverage is 100%, so baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool resolves a street address to parcel PIN(s), using specific verbs and resource. It distinguishes itself from siblings by calling itself the 'no-PIN entry point' and referencing tools that require a PIN.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use (when you have an address but not a PIN) and directs to call this FIRST before using siblings. Names alternative tools that take the PIN as input.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 4 tool updatesv0.1.0
    • First observedfind_chicago_comparable_sales
    • First observedget_cook_county_parcel
    • First observedget_cook_county_property_dossier
    • First observedsearch_chicago_property_by_address

TDQS

A4.7/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: address resolution, basic parcel lookup, full property dossier, and comparable sales/valuation. No overlap in functionality, and the descriptions explicitly guide usage order.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using snake_case. The verbs (find, get, search) accurately describe the operation, and the objects are specific and descriptive.

Tool Count5/5

4 tools is an appropriate scope for a property data API. It covers the essential workflows (address resolution, parcel lookup, full dossier, and valuation) without unnecessary bloat.

Completeness5/5

The tool set provides a complete workflow for accessing Cook County property data: address-to-PIN resolution, individual parcel details, a comprehensive dossier with sales/permits/assessments, and comparable sales analysis. No obvious gaps for a read-only data service.

Maintenance

ActivitySlowing
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    MCP server for NYC real estate due diligence. Lets Claude query 22+ NYC public-record databases — DOB/HPD/ECB violations, ACRIS deeds, DOF sales, 311 complaints, FDNY incidents, NYPD complaints, marshal evictions, PLUTO, rent stabilization — in plain English.
    18
    7
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to look up county assessor public records for properties, check MLS discrepancies against public data, and discover new county assessor sources, all via a local MCP server for real-estate appraisal workflows.
    6
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    MCP server exposing 1,000+ pay-per-call API endpoints across agent infrastructure (memory, coordination, secrets, verification), data, compute, finance, weather, geography, and reference categories — payments via x402 protocol in USDC on Base.
    -

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hyperionxmota/cook-county-property-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server