MCP Server
Connect Claude, ChatGPT, Cursor, and any other Model Context Protocol agent directly to American Default's economic-distress data. Five read-only tools. Anonymous tier on by default — no signup required for normal use.
Endpoint
https://mcp.americandefault.org/mcp Transport: Streamable HTTP (the current MCP transport spec). TLS terminated at Google's edge.
Fallback URL (if mcp.americandefault.org is unreachable)
https://mcp-server-143101922482.us-central1.run.app/mcp Same server, same auth model, less memorable address. Use this if the custom domain has a DNS issue.
Anonymous tier (no key required)
Call any tool with no Authorization header. Rate limit:
10 calls per minute, 60 per hour, per IP block. Plenty for an
AI agent making 1–3 calls per user query.
If you need more, request an issued key (see below).
Connect from Python
import asyncio
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client
async def main():
async with streamablehttp_client("https://mcp.americandefault.org/mcp") as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
tools = await session.list_tools()
print(f"Tools: {[t.name for t in tools.tools]}")
result = await session.call_tool(
"get_indicator", {"slug": "the-buffer"}
)
print(result.content[0].text)
asyncio.run(main())
Requires the mcp Python SDK (pip install mcp).
Same SDK that ships with the Anthropic Python library.
Connect from Claude Desktop
Add this to ~/Library/Application Support/Claude/claude_desktop_config.json
(macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"american-default": {
"transport": "streamable-http",
"url": "https://mcp.americandefault.org/mcp"
}
}
} Restart Claude Desktop. The five tools appear under the hammer icon.
Available tools
-
get_indicator(slug: str)Compact snapshot of any economic indicator by slug. Returns latest value, unit, frequency, direction, pre-computed aggregates (period averages, extremes, sustained runs), editorial prose, and canonical APA / MLA / Chicago / news-copy citations.
get_indicator(slug='the-buffer') -
get_county_scorecard(fips: str)County Distress Index scorecard by 5-digit FIPS code. Returns composite score (0-100), zone, national + state rank, 5-domain breakdown, key findings, and pre-baked citations. 3,144 counties available.
get_county_scorecard(fips='13063') -
get_adi_composite()Latest quarterly reading of the American Distress Index composite. Returns score, zone, composite Z-score, and the 5-component breakdown with point contributions.
get_adi_composite() -
search_indicators(query: str, limit: int = 10)Search the 96-indicator registry by keyword. Returns ranked matches with slug, branded name, name, category, and canonical URL.
search_indicators(query='savings', limit=5) -
get_cross_correlations(slug: str)Statistically validated leading/lagging relationships for an indicator. Source: the five-filter leading-indicator scanner. Returns `as_leader` (this indicator precedes its follower) and `as_follower` (another indicator precedes this one).
get_cross_correlations(slug='initial-unemployment-claims-sa')
Schema versioning
Every response includes schema_version: "v1". Breaking changes
ship as a new tool with a _v2 suffix; v1 tools stay live for
at least 90 days after v2 ships. Clients should assert the schema version
they expect.
Citations
Every tool response includes a citation object with APA, MLA,
Chicago, and news-copy formats. Three-tier naming is enforced:
- American Default Research — institutional name, used in citations, source lists, bibliographies
- American Default — brand name, used for URLs and casual references
- American Distress Index (ADI) — product name, used only when the composite score is the subject
Data is licensed CC BY 4.0. Free to use with attribution.
Request an issued API key (higher rate limits)
Need more than 10 calls per minute? Tell us about your use case and we'll issue a key. Issued tier limits: 60 calls/min, 600/hour.
research@americandefault.org and reference what you saw here.
Need a key right now for testing?
Anonymous tier handles most test workflows. If you're hitting the rate limit during integration, send the form above and mention "integration test" — we prioritize those.
What's behind the rate limits
The two-layer rate-limit model (per-key + per-IP) protects against bulk-scrape
attacks and rotating-key abuse. The hard ceiling is per-IP at 100 calls/minute
regardless of how many keys are presented. Even at full bore, a sweep of every
indicator and county takes about 30 minutes — and the same data is already
statically available at americandefault.org/api/*.json (faster).
If your use case requires bulk extraction, the static JSON files and llms.txt are the right surfaces. The MCP exists for agent-time citation.