Castlemap MCP server
MCP serverSearchGive your AI a searchable collection of 2,400 castles, fortresses, and palaces. Once added, it can look places up by name, find ones near a location, rank them by fame, and pull statistics. No key or sign-up is needed, and the data is released under CC0.
Use Castlemap MCP server in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add Castlemap MCP server and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use Castlemap MCP server to search castles
No key or account is asked for. Not verified by us yet: Ahel has not run a call through it.
Details
Available today. Use it from your connected AI after setup.
No key or account is asked for. Not verified by us yet: Ahel has not run a call through it.
Add it, then ask your AI to look up a castle by name or list well-known ones near a place you have in mind.
What your AI can do with it
- Search the collection by castle name
- Find castles, fortresses, and palaces near a location
- Rank castles by how famous they are
- Get statistics across the 2,400 entries
Install Castlemap MCP server
The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.
Claude Code
claude mcp add --transport http --scope user castlemap-mcp-server 'https://thecastlemap.com/mcp'Run it once in your project, then open /mcp to approve any sign-in the server asks for.
Claude Desktop
https://thecastlemap.com/mcpAdd a custom connector in Settings, paste this address, and approve the sign-in.
Cursor
cursor://anysphere.cursor-deeplink/mcp/install?name=castlemap-mcp-server&config=eyJ1cmwiOiJodHRwczovL3RoZWNhc3RsZW1hcC5jb20vbWNwIn0=Open the link and Cursor adds the server at that address.
ChatGPT
https://thecastlemap.com/mcpIn Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.
Codex
codex mcp add castlemap-mcp-server --url 'https://thecastlemap.com/mcp'Run it once, then sign in with codex mcp login castlemap-mcp-server if the server asks for an account.
From the project's README
As published by flightmussy/castlemap-mcp in README.md.
A Model Context Protocol server for the Castlemap atlas: 7,786 castles, fortresses, palaces and ruins across 141 countries, with coordinates, founding dates, categories, fame ranking and Wikipedia summaries.
It is already running. Point a client at the hosted endpoint — there is no install, no signup and no API key:
https://thecastlemap.com/mcp
Streamable HTTP, stateless, POST-only (a GET returning 405 is correct).
Protocol revisions 2025-06-18 and 2025-03-26 are accepted.
Client configuration
{
"mcpServers": {
"castles": {
"type": "http",
"url": "https://thecastlemap.com/mcp"
}
}
}
Registry entry: com.thecastlemap/castles.
Tools
| Tool | What it does |
|---|---|
search_castles | Find castles by name, country or category |
get_castle | Full record for one castle |
castles_near | Nearest castles to a coordinate (haversine); geocode first |
top_castles | Best-known castles, by fame rank |
list_countries | The 141 countries, with counts |
get_statistics | Live aggregates — totals, per-country, per-century |
random_castle | One castle at random |
Data
Derived from Wikidata, with summaries from Wikipedia and images from Wikimedia Commons. The atlas is curated rather than exhaustive: it covers castles with a documented history, a real photo and exact coordinates, not every earthwork and ruin.
The factual records are released as CC0 and downloadable as GeoJSON and CSV
from thecastlemap.com/data — also mirrored on
GitHub,
Hugging Face,
Kaggle
and Zenodo (concept DOI
10.5281/zenodo.21322359, which always resolves to the newest version).
Running it yourself
server.mjs has zero dependencies — no SDK, no node_modules. It needs
Node 18+ and a castles.geojson to read (download one from
/data):
CASTLES_GEOJSON=/path/to/castles.geojson PORT=8891 node server.mjs
It binds 127.0.0.1:8891 by default; HOST, PORT and CASTLES_GEOJSON
override that. The file is re-read when its mtime changes (throttled to 60s), so
updating the data needs no restart.
castlemap-mcp.service is the systemd unit used in production — loopback-bound,
DynamicUser, ProtectSystem=strict, with nginx terminating TLS in front. Set
ExecStart to your own node path and ReadOnlyPaths/CASTLES_GEOJSON to
wherever the data lives.
Provenance
Built by flightmussy with AI assistance: the concept, direction and review are mine; much of the implementation was written with Claude. The underlying data is not generated — it comes from Wikidata, and every record is traceable to its Wikidata item.
License
Code: MIT (see LICENSE). Data: CC0. Wikipedia summary text remains CC BY-SA
and is attributed per record.
Tools it offers (7)
What this server listed when Ahel dialed its public endpoint in Sep 2026, with no key and no account of yours. The names are the server’s own.
search_castlesget_castlecastles_neartop_castleslist_countriesget_statisticsrandom_castle
Signals
- GitHub stars
- 1
- Last commit
- Aug 2026
Advanced
- Delivery
- castles MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
- Item type
- mcp-server
- Key
com-thecastlemap-castles- Source
- github.com/flightmussy/castlemap-mcp
- Hosted endpoint
https://thecastlemap.com/mcp
github.com/flightmussy/castlemap-mcp