gedcom-mcp
Reads and searches GEDCOM 5.5.1 files, enabling AI agents to look up individuals, families, sources, and multimedia references in a family tree.
README
gedcom-mcp
A small MCP server that reads and searches a GEDCOM 5.5.1 file. It gives an AI agent a fast, structured way to look up individuals, families, sources, and multimedia references in a family tree, and to suggest folder slugs for an archive of per-person pages.
It is tolerant of the custom tags that Ancestry.com exports emit
(_APID, _TREE, _PRIM, _OID, and M/D/YYYY dates), but it works with
any spec-compliant GEDCOM.
No family data is bundled with this server — you point it at your own .ged
file via an environment variable.
Install
Requires Python 3.10+ and uv.
git clone https://github.com/<you>/gedcom-mcp.git
cd gedcom-mcp
uv sync
Configuration
One required environment variable:
| Variable | Description |
|---|---|
GEDCOM_FILE |
Absolute path to the .ged file to load. |
The file is parsed lazily on the first tool call and cached in memory.
Tools
| Tool | What it does |
|---|---|
info |
File path, Ancestry tree id (if present), counts by record type. |
find_individual(query, limit=25) |
Token search over INDI names (incl. AKAs). |
get_individual(id) |
Full INDI record: events, residences, sources, multimedia, family links, suggested slug, external_ids. |
find_family(husband_query, wife_query, marriage_year, limit=25) |
Match FAM records by spouses and/or year. |
get_family(id) |
Full FAM record with husband/wife/children resolved. |
list_children(individual_id) |
Children across all spouse families. |
list_ancestors(individual_id, generations=4) |
Bounded ancestor walk. |
list_descendants(individual_id, generations=4) |
Bounded descendant walk. |
get_sources(individual_id) |
SOUR citations attached to the person and their events, including Ancestry _APID codes. |
suggest_slug(id) |
Suggest a stable folder slug for the record (see below). |
IDs may be passed with or without @ delimiters (I123 and @I123@ are
equivalent).
Running locally
GEDCOM_FILE="/path/to/your-tree.ged" uv run gedcom-mcp
It speaks MCP over stdio.
Registering with an MCP client
Add an entry like this to your MCP client's server config (paths are
examples — adjust to your checkout and your .ged file):
{
"mcpServers": {
"gedcom": {
"command": "uv",
"args": ["run", "--directory", "/path/to/gedcom-mcp", "gedcom-mcp"],
"env": {
"GEDCOM_FILE": "/path/to/your-tree.ged"
}
}
}
}
Output conventions
The server returns plain JSON-shaped data. Dates are normalized to
ISO 8601 (YYYY-MM-DD, partial dates allowed). The agent is responsible for
turning these dicts into whatever it needs; the server stays out of
formatting decisions.
Slug convention
suggest_slug produces a lowercase, hyphenated, ASCII slug intended as a
stable folder name for a per-record page:
- Individual:
<surname>-<given>-<birthyear>(e.g.smith-john-1901) - Family:
<husband-surname>-<wife-surname>-<marriageyear>
unknown is used for a missing year. This convention is opinionated; if your
archive uses a different scheme, adapt suggest_slug / the *_slug helpers
in src/gedcom_mcp/model.py.
License
MIT. See LICENSE.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.