Structured for agents
Predictable JSON responses, OpenAPI 3.1 spec, and a native MCP server. Your agent stops scraping and starts reasoning.
Tool-augmented retrieval for AI agents working with historical geography. 1,034 entities with capital timelines, rulers, events, and 2,400+ academic sources. Empirically validated: hallucinations from 0.21 → 0.07 per query (benchmark v7.0).
Predictable JSON responses, OpenAPI 3.1 spec, and a native MCP server. Your agent stops scraping and starts reasoning.
Over 2,400 academic citations. Every record carries a confidence score and a status: confirmed, uncertain, or disputed.
Contested territories show every version. Colonial names coexist with original ones. We document history — we don't arbitrate it.
A 5,000-year timeline rendered from real boundary data. No mockup.
AtlasPI ships as an MCP server. Add it to your Claude config and your AI agent can query historical geographic data natively — no custom integration, no glue code, no scraping.
{
"mcpServers": {
"atlaspi": {
"command": "python",
"args": ["-m", "atlaspi_mcp"]
}
}
}
Restart Claude. Ask: "What empires existed in Anatolia in 1200 BCE?"
50+ endpoints. JSON in, JSON out. No auth required for the open tier.
# Get every entity that existed in the year 1500
curl https://atlaspi.cra-srl.com/v1/snapshot/1500 | jq '.summary'
# Compare two empires side by side
curl https://atlaspi.cra-srl.com/v1/compare/1/2
# Find what existed near a coordinate at a given year
curl "https://atlaspi.cra-srl.com/v1/nearby?lat=41.9&lon=12.5&year=100"
import requests
# What existed near Rome in the year 100 CE?
r = requests.get(
"https://atlaspi.cra-srl.com/v1/nearby",
params={"lat": 41.9, "lon": 12.5, "year": 100},
)
for entity in r.json()["results"]:
print(entity["name"], entity["confidence_score"])
// Compare two historical entities by ID
const r = await fetch(
'https://atlaspi.cra-srl.com/v1/compare/1/2'
);
const data = await r.json();
console.log(data.entity_a.name, 'vs', data.entity_b.name);
console.log('Overlap years:', data.temporal_overlap);
Historical reasoning without hallucination. Cite sources, surface confidence, refuse to invent borders that never existed.
Timeline analysis, cross-cultural research, reproducible queries. Export GeoJSON or CSV with full citation chains intact.
Drop the interactive map into your learning platform with a single iframe. Time slider included. No license fees.
Realistic historical map generation, faction boundaries by era, period-accurate place names in their original languages.
An agent reasoning about history is an agent reasoning under deep uncertainty. Sources contradict. Borders shift mid-sentence. The same city has four names depending on who you ask and when. Web scraping flattens all of this into prose that looks authoritative — and that is exactly how hallucinations enter pipelines that should know better.
AtlasPI returns structured records. Each one carries an explicit
confidence_score, a status field, and a
sources[] array of academic citations. When the data is contested,
the API says so. When a boundary is approximated, the metadata flags it. Your
agent can finally hedge correctly, cite properly, and refuse to fabricate the
borders of an empire that ended 800 years before the year you asked about.
The same information is also available via the MCP server, so an agent running in Claude Desktop or Claude Code can call AtlasPI tools directly — no custom function definitions required.
$0/month
Custom