genealogy-mcp

Pesquisa de história da família: 79 arquivos e bancos de dados, variantes de nomes, calendários históricos, parentesco, verificações de evidências, auditoria GEDCOM e rascunhos de solicitações de arquivo. Servidor MCP local em Python, licença MIT, sem necessidade de chaves de API.

Documentação

genealogy-mcp — encontre sua história de família com qualquer assistente de IA

Versão em russo

CI License: MIT

Um servidor MCP que transforma Claude, ChatGPT, Cursor ou qualquer assistente compatível com MCP em um genealogista cuidadoso. Ele sabe onde estão os registros de seus ancestrais (114 arquivos e bancos de dados na Rússia e na antiga URSS, Europa, Ilhas Britânicas, EUA e América Latina), como pesquisá-los (variantes de nomes, transliterações, ortografia antiga, calendário juliano) e quando um achado realmente é sua pessoa — para que o assistente forneça links funcionais e um plano em vez de palpites confiantes.

Construído a partir de anos de pesquisa real para um arquivo familiar aberto (igoruan.ru/gene, motor: gene_archive): registros paroquiais, listas de revisão, bancos de dados da Primeira e Segunda Guerra Mundial, arquivos de repressão, registros de emigração — e todas as armadilhas em que caímos ao longo do caminho.

O que você pode perguntar

Meu bisavô Ivan Kolodin nasceu por volta de 1885 perto de Bogoroditsk, província de Tula. Onde devo procurar?

O assistente faz um plano para a Rússia 1880–1945, lê os guias de registros, constrói as formas do nome (Колодин / Колодина / Колодинъ / Kolodin / Kołodin…), fornece links de pesquisa para FamilySearch, texto completo do Internet Archive e os bancos de dados de guerra russos, informa qual arquivo guarda os registros paroquiais e redige o pedido.

Este registro de batismo é o mesmo Ivan? Diz «Іоаннъ, pai Петръ, 1887, Сынково».

check_match compara fato por fato com variantes de nome e tolerância de idade: dois fatos independentes além do nome → confirmado; um → provável; uma contradição → encontre um terceiro documento.

O que a filha da prima da minha avó é para mim? E como se diz isso em português?

kinship → «prima em segundo grau… / first cousin once removed» — em russo, inglês e romeno, com a parcela esperada de DNA.

Verifique minha árvore. (um GEDCOM do Ancestry, MyHeritage, Gramps, Geni…)

audit_tree encontra o impossível (nascido após a morte da mãe, uma mãe de 10 anos, morte antes do nascimento), possíveis duplicatas e lacunas — uma lista de tarefas para a próxima pesquisa.

O registro diz que ele nasceu «на Покров» 1885, o ano está escrito ҂аѡ҃пе.

cyrillic_numerals lê o ano (1885), feast_date dá 1º de outubro (juliano) = 13 de outubro de 1885.

Compartilhamos 230 cM com um match no MyHeritage. Quem ela poderia ser?

dna_match: prima de segundo grau, prima-avó em primeiro grau, meia-prima de primeiro grau… — e por que apenas documentos podem decidir.

Onde estão agora os registros paroquiais da província de Volínia?

where_are_records: os arquivos estaduais de Zhytomyr (o consistório), Rivne e Volyn — as fronteiras mudaram, então nem sempre é o arquivo da região atual.

Lembre-se do que encontramos e continue na próxima semana.

Um projeto de pesquisa no seu computador: pessoas, fontes com citações completas, pistas em aberto e um registro de cada busca — incluindo "nada encontrado" — para que ninguém pesquise o mesmo lugar duas vezes. GEDCOM para dentro e para fora.

Escreva o que encontramos no nosso site da família.

Se o seu arquivo familiar é um site gene-archive, dê às ferramentas do projeto o caminho da sua pasta: o assistente lê o próprio arquivo — quem está faltando, quais datas não têm documento — e cada mudança que ele faz passa pelas verificações do próprio site, entra nas suas correções e registros de pesquisa, é commitada no git sob o seu nome e reconstrói o site. Ele mostra a mudança primeiro e escreve somente após o seu "sim".

Por que usar

Sem eleCom genealogy-mcp
O assistente cita dois ou três sites famosos114 fontes escolhidas por país, anos e tipo de registro, cada uma com "como pesquisar bem"
Pesquisa uma única grafiaVariantes de grafia, ortografia pré-1918, formas masculinas/femininas, 9 sistemas de transliteração, equivalentes de nomes próprios (Иван = Іоаннъ = Jan = Johann = Juan)
URLs inventadas ou quebradasLinks de pesquisa prontos construídos a partir de modelos de URL testados; um trabalho semanal verifica cada site
"Este é provavelmente seu ancestral"Uma regra explícita de evidência: um homônimo não é um parente
Datas aceitas pelo valor de faceJuliano ↔ Gregoriano, anos de nascimento a partir de idades com variação realista, datas normalizadas para GEDCOM
Conselhos genéricosGuias de registros: registros paroquiais, listas de confissão, listas de revisão, livros de domicílio, Primeira/Segunda Guerra Mundial, arquivos de repressão, listas de passageiros, censos, registro civil europeu, registros latino-americanos
Você escreve para arquivos do zeroRascunhos de pedidos para ZAGS russo, arquivos estaduais, militares e FSB, e para qualquer arquivo em inglês, espanhol ou português
Ele esquece tudo entre conversasUm projeto de pesquisa que lembra pessoas, fontes, pistas e cada busca
Ele não consegue ler números e datas antigosNumerais eslavônicos eclesiásticos, festas religiosas, calendários juliano, hebraico e republicano francês
"Pesquise seu nome no FamilySearch"Busca ao vivo no texto completo do Internet Archive, WikiTree, Open Archives e histórico de lugares no Wikidata
Correspondências de DNA são um mistériocM compartilhados → os relacionamentos que ele comporta

Tudo roda no seu computador. O servidor fica online apenas quando o assistente executa uma busca ao vivo (search_online, place_history), e então envia essa consulta para aquele único site.

Cobertura

  • Mundial: FamilySearch (registros e o catálogo de imagens não indexadas), texto completo do Internet Archive, MyHeritage, Geni, WikiTree, Find a Grave, BillionGraves, Arquivos Arolsen, Yad Vashem, JewishGen, Matricula, Geneanet, Wikipedia.
  • Rússia e URSS: Yandex Archive, guias de arquivos, fórum VGD, Pamyat Naroda, OBD Memorial, gwar.mil.ru, Open List, Immortal Barrack, Returned Names, mártires do PSTGU, Bibliotecas Eletrônicas Presidencial e Nacional, bibliotecas históricas, mapas antigos, história da igreja, RIA-1914, arquivos regionais, ZAGS, TsAMO, RGVIA, RGIA, GARF.
  • Ucrânia, Bielorrússia, Moldávia, Romênia, Polônia, Bálticos: portais e catálogos de arquivos nacionais, TsDIAK, Geneteka, Szukajwarchiwach, epaveldas, Raduraksti, arquivos estonianos.
  • Europa: prisioneiros da Primeira Guerra Mundial do CICV, CWGC, Volksbund, ScotlandsPeople, FreeBMD, registros civis e censos irlandeses, Archion, GenWiki, FranceArchives, Mémoire des hommes, Antenati, PARES, Digitarq, Open Archives (NL), Arquivos do Estado da Bélgica, Riksarkivet, Digitalarkivet, Danish Family Search, HisKi, Arquivo Digital Finlandês, Hungaricana, Acta Publica (Tchéquia), arquivos estatais búlgaros, FreeCEN, FreeREG, The National Archives, GRO, Welsh Newspapers.
  • Alemanha e países de língua alemã: listas de baixas da Primeira Guerra Mundial, GEDBAS, Online-OFB, Biblioteca Digital Alemã, Bundesarchiv, Léxico Biográfico do Báltico, alemães do Mar Negro (Odessa3), Projeto Poznań, Metryki.
  • Genealogia judaica: JRI-Poland, Gesher Galicia, LitvakSIG, JewishGen, Yad Vashem, ferramentas One-Step de Steve Morse.
  • Cáucaso e Ásia Central: Arquivos Nacionais da Geórgia, arquivos estatais centrais do Cazaquistão, Uzbequistão, Quirguistão, Tajiquistão e Turcomenistão.
  • Américas: FamilySearch América Latina, AGN México, Arquivo Nacional e Museu da Imigração (Brasil), Hemeroteca Digital, CEMLA e AGN (Argentina), Archivo Nacional (Chile), NARA, Ellis Island, Chronicling America, USGenWeb, Biblioteca e Arquivos do Canadá, BAnQ (Quebec), Pier 21.
  • Austrália e Nova Zelândia: Trove, Arquivos Nacionais da Austrália, Papers Past, BDM da Nova Zelândia.

Guias de registros em inglês, russo e ucraniano; os principais também em espanhol, português, polonês e alemão.

Instalação

Claude Desktop, um clique: baixe genealogy-mcp-<version>.mcpb do último lançamento e abra-o — o Claude Desktop o instala e pergunta onde manter seus projetos de pesquisa.

Para as outras formas, você precisa do uv (ele baixa o Python e o pacote por conta própria).

Claude Desktop, manualmente — Configurações → Desenvolvedor → Editar Config, adicione:

{
  "mcpServers": {
    "genealogy": {
      "command": "uvx",
      "args": ["genealogy-mcp"]
    }
  }
}

Claude Code:

claude mcp add genealogy -- uvx genealogy-mcp

Cursor (~/.cursor/mcp.json), Windsurf, Cline — o mesmo bloco mcpServers do Claude Desktop. VS Code (.vscode/mcp.json): {"servers": {"genealogy": {"command": "uvx", "args": [ …same… ]}}}.

Docker: docker build -t genealogy-mcp . e depois docker run -i --rm genealogy-mcp (stdio) ou docker run --rm -p 8000:8000 genealogy-mcp --http --host 0.0.0.0 (HTTP em /mcp).

Seu site gene-archive como projeto: instale o servidor junto com o gene-archive — pip install "genealogy-mcp[site]" ou uvx --from "genealogy-mcp[site]" genealogy-mcp (o comando gene é encontrado no PATH ou ao lado do Python do servidor; em outros lugares, defina GENE_CMD), então nomeie a pasta em GENEALOGY_MCP_SITES (ou nas configurações da extensão do Claude Desktop), ou apenas dê seu caminho ao assistente. GENE_AUTHOR define o nome no histórico do git (padrão: git config user.name).

Clientes que se conectam via HTTP (conectores ChatGPT, agentes remotos): execute genealogy-mcp --http --host 0.0.0.0 --port 8000 atrás de HTTPS e adicione https://your-host/mcp. No modo HTTP, audit_tree aceita apenas o texto GEDCOM, nunca um caminho de arquivo.

O pacote está no PyPI e no Registro MCP oficial (io.github.igormel81/genealogy-mcp): uvx genealogy-mcp instala e executa.

Ferramentas

FerramentaO que faz
plan_researchUm plano passo a passo para um país e período: quais registros existem, guias, fontes em ordem
find_sourcesFontes por país/região (europe, latin_america, russian_empire…), anos e tipo de registro
source_detailsUma fonte: cobertura, acesso, como pesquisar
where_are_recordsQuais arquivos guardam agora os registros de uma província histórica (Império Russo, Polônia, Galícia, Bucovina, Prússia Oriental, Bálticos, Cáucaso)
search_linksURLs de pesquisa prontas para um nome e suas variantes
search_onlineBusca ao vivo: texto completo do Internet Archive, Chronicling America, WikiTree, Open Archives, Open List
place_historyWikidata: a que um vilarejo pertenceu ao longo dos anos, coordenadas, artigo na Wikipédia
name_variantsGrafia, ortografia antiga, formas com gênero, transliterações, códigos Daitch–Mokotoff, equivalentes de nomes próprios (incl. iídiche e hebraico), patronímicos
normalize_date"около 1899", "9 de octubre de 1899" → ABT 1899, 9 OCT 1899
convert_calendarJuliano ↔ Gregoriano, hebraico, republicano francês
feast_date«на Покров», «после Петрова поста», Páscoa, Wielkanoc… → a data em um determinado ano
cyrillic_numerals҂аѡ҃п ↔ 1880
birth_year_from_ageA faixa de ano de nascimento a partir de uma idade em um registro
kinshipO nome de um parentesco em ru/en/ro, com a parcela esperada de DNA
dna_matchcM compartilhados → os relacionamentos que ele comporta (Shared cM Project 4.0)
check_matchUm registro encontrado é a nossa pessoa? Um veredito com cada fato comparado (sobrenomes duplos hispânicos também)
audit_treeFatos impossíveis, duplicatas e lacunas em um GEDCOM ou family_tree.json
project_view, project_save, project_log, project_transferO projeto de pesquisa entre conversas: pessoas, famílias, fontes, pistas, o registro de buscas, importação/exportação GEDCOM — ou uma pasta de site gene-archive, escrita por meio de suas verificações e registros
draft_archive_requestUma carta de pedido a um cartório ou arquivo
record_guideComo ler e encontrar um tipo de registro
glossaryTermos de registros russos antigos explicados

Recursos: genealogy://sources (o catálogo), genealogy://guide/research/{en|ru} (um guia completo de pesquisa), genealogy://guide/prompts/{en|ru} (pedidos prontos para cada etapa), genealogy://records/{topic}, genealogy://glossary. Prompts: iniciar pesquisa, verificar um achado, transcrever um registro, escrever para um arquivo.

Privacidade e honestidade

  • O servidor não envia nada para lugar nenhum por conta própria. Uma busca ao vivo (search_online, place_history) envia a consulta — nomes, anos, local — para o único site pesquisado. Projetos de pesquisa são arquivos no seu computador (~/Documents/genealogy-mcp ou GENEALOGY_MCP_HOME); em um servidor HTTP compartilhado, eles são desativados.
  • O assistente que você usa é um serviço separado com sua própria política de privacidade — pense antes de colar detalhes sobre pessoas vivas.
  • Cartas são rascunhos: você as revisa e envia.
  • As regras que o assistente recebe: cite o original, mantenha versões conflitantes, marque suposições como "provavelmente", nunca vincule um homônimo sem evidência.

Benchmark

evals/tasks.json contém 32 perguntas com respostas verificáveis: datas por festas religiosas, calendários juliano, hebraico e republicano, numerais cirílicos, Daitch–Mokotoff, DNA, parentesco, termos antigos, arquivos de províncias históricas, verificações de evidências, histórico de registros. evals/check_tools.py roda em CI e verifica se as ferramentas respondem todas corretamente. evals/run.py faz as mesmas perguntas a um modelo Claude sem o servidor e com ele, e pontua ambos (requer uma chave de API; custa dinheiro, então é executado manualmente: Actions → Benchmark).

Contribuindo

Veja CONTRIBUTING.md para campos de fonte e diretrizes de contribuição. Uma fonte está faltando ou um link mudou? Edite tools/make_sources.py, execute python3 tools/make_sources.py e python3 -m unittest discover tests, abra um pull request. Guias de registros vivem em src/genealogy_mcp/guides.py.

Veja também

  • gene_archive — um motor de código aberto para um site de arquivo familiar: árvore, histórias, documentos, mapa, GEDCOM, um editor online e comentários de parentes.

Licença MIT.