LocationLists
Name LocationLists Tagline US business location lists, from a web link: locationlists.com/find?q=your question Description (markdown OK) No connector…
What it can do
- Search Datasets: Find LocationLists datasets by brand name, product line, location type or category (e.g. 'bobcat', 'generator dealers', 'hardware stores', 'breakfast restaurants'). Returns slug, name
- Get Dataset: Full record for one dataset: fields with descriptions, record and state counts, coverage, advertised refresh cadence AND the real last-modified date of the file, FAQs, sample URL and the
- Count Locations: Free. How many rows of one dataset match a filter — on geography AND any other column (e.g. nonprofits with revenue_amt gt 2000000, dealers with dealerClass eq 'Elite'). Also reports
What data it sees
Do you need an account
No: the server works without sign-in
Name
LocationLists
Tagline
US business location lists, from a web link: locationlists.com/find?q=your question
Description (markdown OK)
No connector needed: any AI assistant can answer a location question by opening https://locationlists.com/find?q= — counts, a preview, a price and a card checkout link. Connect the MCP for repeat use or wallet payments.
Business location data for AI agents. Search, sample, count and buy ready-to-use lists of US business locations: 966 datasets compiled from each brand's official store locator or the public register that publishes the data.
- Healthcare (257): every NPPES provider, Medicare-enrolled clinicians, nurse practitioners, pharmacists
- Retail chains (178): Target, CVS, Walgreens, Aldi, Publix, Taco Bell
- Federal contractors (148): every active SAM.gov registration, grant recipients
- Industrial and equipment rental (99): Grainger, Fastenal, United Rentals, Sunbelt Rentals, Herc
- Nonprofits (90): the full IRS file, grants awarded, churches
- Bank branches (87): every FDIC-insured office
- Equipment and tool dealers (40): STIHL, Husqvarna, DeWalt, Milwaukee, Makita
- Furniture and mattresses (27): Ashley, Rooms To Go, Pottery Barn, Mattress Firm, Sleep Number
- Restaurants (17): Dunkin', Waffle House, IHOP, Cracker Barrel
- Hardware (14): Home Depot, Lowe's, Ace Hardware, Do It Best
- Grill dealers (9): Traeger, Weber, Big Green Egg
Filter by city, state, zip, a radius around any place, or any column in the file. Free tools search the catalog, show 10 real rows and count matches. Buy a full CSV by card, or let an agent pay per row or buy the whole file in USDC on Base via x402, with no account or API key. A failed or empty query costs nothing.
Links and settings
- Server URL: https://locationlists.com/mcp (Streamable HTTP, no authentication, no parameters)
- Homepage: https://locationlists.com
- GitHub repository: https://github.com/kylehawke-stack/locationlists-mcp
- Privacy: https://locationlists.com/privacy
- Terms: https://locationlists.com/license
- Support email: kyle@locationlists.com
- Icon: locationlists-favicon-512.png in Downloads (the green "LL" tile, from https://locationlists.com/icon.svg)
- Install JSON: {"mcpServers":{"locationlists":{"url":"https://locationlists.com/mcp"}}}
- Tags: business-data, location-data, datasets, dealers, x402, usdc, agent-payments
Tools (9)
- Free: search_datasets, get_dataset, get_sample, count_locations
- Buy by card: get_quote, create_checkout, check_order
- Agents pay with x402 (USDC on Base): query_locations (per row), buy_dataset (whole CSV)
Example prompts
- Find STIHL dealers within 25 miles of Richmond, VA.
- How many nonprofits in Virginia have revenue over $2M?
- Show me 5 sample rows from the FDIC bank branch list.
- What would it cost to buy every Traeger dealer in Texas?
How to connect
How to connect LocationLists to Claude
The server address to paste into Claude settings:
https://locationlists--kylehawke.run.tools
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect LocationLists to ChatGPT
The server address to paste into ChatGPT settings:
https://locationlists--kylehawke.run.tools
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect LocationLists to Cursor
The server address to paste into Cursor settings:
https://locationlists--kylehawke.run.tools
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (9)
Raw names from tools/list. Only developers need these.
| search_datasets | Find LocationLists datasets by brand name, product line, location type or category (e.g. 'bobcat', 'generator dealers', 'hardware stores', 'breakfast restaurants'). Returns slug, name, record count, coverage and page URL. Use the slug with the other tools. |
| get_dataset | Full record for one dataset: fields with descriptions, record and state counts, coverage, advertised refresh cadence AND the real last-modified date of the file, FAQs, sample URL and the dataset's page on locationlists.com. |
| count_locations | Free. How many rows of one dataset match a filter — on geography AND any other column (e.g. nonprofits with revenue_amt gt 2000000, dealers with dealerClass eq 'Elite'). Also reports how many rows were excluded only because a tested column was blank, so a thin column is not mistaken for a small answer. Returns the exact cost of fetching the matches with query_locations versus buying the whole file. Use get_dataset first for the column names. Scans the live file, so it can take several seconds on large datasets. |
| get_sample | Up to 10 real rows from the live file (spread across the dataset, not the first ten), as JSON plus CSV text. Show these to the user so they can judge the fields and quality. |
| get_quote | Line-item prices and total for a list of dataset slugs. If a bundle covers several requested brands for less, it says so. |
| create_checkout | Opens a Stripe Checkout session for one dataset and returns the payment URL plus the session id. Give the URL to the user to pay (card, Apple Pay, Google Pay). After payment Stripe emails them a permanent download link; use check_order with the session id to confirm and fetch it. Does not charge anything by itself. |
| check_order | Given a Stripe Checkout session id (cs_…), reports whether it is paid and, if so, returns the permanent download link for the CSV. |
| query_locations | Return matching rows from one dataset, filtered on ANY of its columns — state/city/county/zip shortcuts plus `where` conditions with numeric comparisons (e.g. [{field:"revenue_amt",op:"gt",value:2000000}]), sorted with `order_by` and paged with `offset`. get_dataset lists the columns; count_locations (free) tells you how many rows match and what fetching them costs before you pay. Priced per row in USDC via x402 and settled only after the rows are produced, so a failed call costs nothing. The rate is derived from the dataset: roughly 2x its list price spread over its record count, so a small slice of a big file is cents. You pay for the limit you request, up to 100 rows. Call it without payment first: the result is an x402 PaymentRequired quote with the exact amount, and nothing is charged until you retry with payment. Datasets under 5,000 records are not sold by the row — buy those files outright. |
| buy_dataset | Buy an ENTIRE dataset outright and get a permanent download link for the CSV. Pays once in USDC on Base, at the same list price a human pays by card — no account and no checkout page.\n\nPrefer this over repeated query_locations calls whenever you want most of a file. Metered queries are priced per row and deliberately cost more than the file if you assemble it that way, so past a few hundred rows buying outright is both cheaper and complete. get_dataset (free) gives the price and record count first. |