Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
제작자가 쓴 설명(영어 원문)
MCP server for structured access to Gramps Web genealogy data
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
MCP_TRANSPORT, GRAMPS_API_URL, GRAMPS_USERNAME, GRAMPS_PASSWORD, GRAMPS_REFRESH_TOKEN, GRAMPS_TREE_ID, GRAMPS_READ_ONLY, GRAMPS_MUTATION_SERIALIZE, GRAMPS_MUTATION_MIN_INTERVAL_MS, GRAMPS_CONFIRMATION, GRAMPS_LOG_LEVEL, GRAMPS_MEDIA_RESOURCES_ENABLED, GRAMPS_MEDIA_MAX_BYTES, GRAMPS_MEDIA_ALLOW_PRIVATE, GRAMPS_MEDIA_UPLOAD_DIRS, GRAMPS_MEDIA_UPLOAD_MAX_BYTES비밀로 표시된 값은 내 계정의 열쇠예요. 절대 다른 사람과 공유하거나 채팅에 붙여 넣지 마세요.
필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"gramps-web": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_TRANSPORT",
"-e",
"GRAMPS_API_URL",
"-e",
"GRAMPS_USERNAME",
"-e",
"GRAMPS_PASSWORD",
"-e",
"GRAMPS_REFRESH_TOKEN",
"-e",
"GRAMPS_TREE_ID",
"-e",
"GRAMPS_READ_ONLY",
"-e",
"GRAMPS_MUTATION_SERIALIZE",
"-e",
"GRAMPS_MUTATION_MIN_INTERVAL_MS",
"-e",
"GRAMPS_CONFIRMATION",
"-e",
"GRAMPS_LOG_LEVEL",
"-e",
"GRAMPS_MEDIA_RESOURCES_ENABLED",
"-e",
"GRAMPS_MEDIA_MAX_BYTES",
"-e",
"GRAMPS_MEDIA_ALLOW_PRIVATE",
"-e",
"GRAMPS_MEDIA_UPLOAD_DIRS",
"-e",
"GRAMPS_MEDIA_UPLOAD_MAX_BYTES",
"ghcr.io/scormave/gramps-web-mcp:2.9.1"
],
"env": {
"MCP_TRANSPORT": "your-value",
"GRAMPS_API_URL": "your-value",
"GRAMPS_USERNAME": "your-value",
"GRAMPS_PASSWORD": "your-value",
"GRAMPS_REFRESH_TOKEN": "your-value",
"GRAMPS_TREE_ID": "your-value",
"GRAMPS_READ_ONLY": "your-value",
"GRAMPS_MUTATION_SERIALIZE": "your-value",
"GRAMPS_MUTATION_MIN_INTERVAL_MS": "your-value",
"GRAMPS_CONFIRMATION": "your-value",
"GRAMPS_LOG_LEVEL": "your-value",
"GRAMPS_MEDIA_RESOURCES_ENABLED": "your-value",
"GRAMPS_MEDIA_MAX_BYTES": "your-value",
"GRAMPS_MEDIA_ALLOW_PRIVATE": "your-value",
"GRAMPS_MEDIA_UPLOAD_DIRS": "your-value",
"GRAMPS_MEDIA_UPLOAD_MAX_BYTES": "your-value"
}
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add gramps-web --env MCP_TRANSPORT=your-value --env GRAMPS_API_URL=your-value --env GRAMPS_USERNAME=your-value --env GRAMPS_PASSWORD=your-value --env GRAMPS_REFRESH_TOKEN=your-value --env GRAMPS_TREE_ID=your-value --env GRAMPS_READ_ONLY=your-value --env GRAMPS_MUTATION_SERIALIZE=your-value --env GRAMPS_MUTATION_MIN_INTERVAL_MS=your-value --env GRAMPS_CONFIRMATION=your-value --env GRAMPS_LOG_LEVEL=your-value --env GRAMPS_MEDIA_RESOURCES_ENABLED=your-value --env GRAMPS_MEDIA_MAX_BYTES=your-value --env GRAMPS_MEDIA_ALLOW_PRIVATE=your-value --env GRAMPS_MEDIA_UPLOAD_DIRS=your-value --env GRAMPS_MEDIA_UPLOAD_MAX_BYTES=your-value -- docker run -i --rm -e MCP_TRANSPORT -e GRAMPS_API_URL -e GRAMPS_USERNAME -e GRAMPS_PASSWORD -e GRAMPS_REFRESH_TOKEN -e GRAMPS_TREE_ID -e GRAMPS_READ_ONLY -e GRAMPS_MUTATION_SERIALIZE -e GRAMPS_MUTATION_MIN_INTERVAL_MS -e GRAMPS_CONFIRMATION -e GRAMPS_LOG_LEVEL -e GRAMPS_MEDIA_RESOURCES_ENABLED -e GRAMPS_MEDIA_MAX_BYTES -e GRAMPS_MEDIA_ALLOW_PRIVATE -e GRAMPS_MEDIA_UPLOAD_DIRS -e GRAMPS_MEDIA_UPLOAD_MAX_BYTES ghcr.io/scormave/gramps-web-mcp:2.9.1실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"gramps-web": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_TRANSPORT",
"-e",
"GRAMPS_API_URL",
"-e",
"GRAMPS_USERNAME",
"-e",
"GRAMPS_PASSWORD",
"-e",
"GRAMPS_REFRESH_TOKEN",
"-e",
"GRAMPS_TREE_ID",
"-e",
"GRAMPS_READ_ONLY",
"-e",
"GRAMPS_MUTATION_SERIALIZE",
"-e",
"GRAMPS_MUTATION_MIN_INTERVAL_MS",
"-e",
"GRAMPS_CONFIRMATION",
"-e",
"GRAMPS_LOG_LEVEL",
"-e",
"GRAMPS_MEDIA_RESOURCES_ENABLED",
"-e",
"GRAMPS_MEDIA_MAX_BYTES",
"-e",
"GRAMPS_MEDIA_ALLOW_PRIVATE",
"-e",
"GRAMPS_MEDIA_UPLOAD_DIRS",
"-e",
"GRAMPS_MEDIA_UPLOAD_MAX_BYTES",
"ghcr.io/scormave/gramps-web-mcp:2.9.1"
],
"env": {
"MCP_TRANSPORT": "your-value",
"GRAMPS_API_URL": "your-value",
"GRAMPS_USERNAME": "your-value",
"GRAMPS_PASSWORD": "your-value",
"GRAMPS_REFRESH_TOKEN": "your-value",
"GRAMPS_TREE_ID": "your-value",
"GRAMPS_READ_ONLY": "your-value",
"GRAMPS_MUTATION_SERIALIZE": "your-value",
"GRAMPS_MUTATION_MIN_INTERVAL_MS": "your-value",
"GRAMPS_CONFIRMATION": "your-value",
"GRAMPS_LOG_LEVEL": "your-value",
"GRAMPS_MEDIA_RESOURCES_ENABLED": "your-value",
"GRAMPS_MEDIA_MAX_BYTES": "your-value",
"GRAMPS_MEDIA_ALLOW_PRIVATE": "your-value",
"GRAMPS_MEDIA_UPLOAD_DIRS": "your-value",
"GRAMPS_MEDIA_UPLOAD_MAX_BYTES": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"gramps-web": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_TRANSPORT",
"-e",
"GRAMPS_API_URL",
"-e",
"GRAMPS_USERNAME",
"-e",
"GRAMPS_PASSWORD",
"-e",
"GRAMPS_REFRESH_TOKEN",
"-e",
"GRAMPS_TREE_ID",
"-e",
"GRAMPS_READ_ONLY",
"-e",
"GRAMPS_MUTATION_SERIALIZE",
"-e",
"GRAMPS_MUTATION_MIN_INTERVAL_MS",
"-e",
"GRAMPS_CONFIRMATION",
"-e",
"GRAMPS_LOG_LEVEL",
"-e",
"GRAMPS_MEDIA_RESOURCES_ENABLED",
"-e",
"GRAMPS_MEDIA_MAX_BYTES",
"-e",
"GRAMPS_MEDIA_ALLOW_PRIVATE",
"-e",
"GRAMPS_MEDIA_UPLOAD_DIRS",
"-e",
"GRAMPS_MEDIA_UPLOAD_MAX_BYTES",
"ghcr.io/scormave/gramps-web-mcp:2.9.1"
],
"env": {
"MCP_TRANSPORT": "your-value",
"GRAMPS_API_URL": "your-value",
"GRAMPS_USERNAME": "your-value",
"GRAMPS_PASSWORD": "your-value",
"GRAMPS_REFRESH_TOKEN": "your-value",
"GRAMPS_TREE_ID": "your-value",
"GRAMPS_READ_ONLY": "your-value",
"GRAMPS_MUTATION_SERIALIZE": "your-value",
"GRAMPS_MUTATION_MIN_INTERVAL_MS": "your-value",
"GRAMPS_CONFIRMATION": "your-value",
"GRAMPS_LOG_LEVEL": "your-value",
"GRAMPS_MEDIA_RESOURCES_ENABLED": "your-value",
"GRAMPS_MEDIA_MAX_BYTES": "your-value",
"GRAMPS_MEDIA_ALLOW_PRIVATE": "your-value",
"GRAMPS_MEDIA_UPLOAD_DIRS": "your-value",
"GRAMPS_MEDIA_UPLOAD_MAX_BYTES": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
MCP_TRANSPORT envGRAMPS_USERNAME envGRAMPS_READ_ONLY envGRAMPS_MUTATION_SERIALIZE envGRAMPS_MUTATION_MIN_INTERVAL_MS envGRAMPS_CONFIRMATION envGRAMPS_LOG_LEVEL envGRAMPS_MEDIA_RESOURCES_ENABLED envGRAMPS_MEDIA_MAX_BYTES envGRAMPS_MEDIA_ALLOW_PRIVATE envGRAMPS_MEDIA_UPLOAD_DIRS envGRAMPS_MEDIA_UPLOAD_MAX_BYTES env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
레지스트리 이름이 GitHub 계정 Scormave 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
입력해야 할 값: GRAMPS_API_URL, GRAMPS_PASSWORD, GRAMPS_REFRESH_TOKEN, GRAMPS_TREE_ID
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(2.9.1)은 4일 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Docker도 있어야 해요.
같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, Aiterm MCP
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Persistent terminals and one launcher for Claude, Codex, Grok, Cursor, and Antigravity harnesses.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
[!WARNING]
Update to 2.3.1 or later. Before 2.3.1 the
update_*tools could drop
stored data that the call did not mention
(#5). If you edited a
tree with an earlier version,
check it for dropped data.
Companion MCP server for the Gramps Web open-source genealogy platform. It lets AI agents read and edit your family tree through the Model Context Protocol. It is not a genealogy UI: run it alongside an existing Gramps Web instance, where your users, trees, media and permissions stay.
[][install-vscode] [][install-vscode-insiders] [][install-cursor]
The buttons add the server to VS Code or Cursor, which start it from the Docker image, so Docker must be installed. For Claude Desktop, install the MCPB extension; other clients are listed under Install.
linkMode and keep the rest; save a whole register entry in one transaction with create_records; dates in every Gramps form and calendarfind_duplicates pairs people entered twice, across spellings and name forms, and the create tools refuse a person the tree already hasundo_change reverts one transaction of the edit history; it, delete_object and merge_objects ask the user, not the model, before they change the tree, in clients that support MCP elicitationThe tool catalog describes every tool, resource and prompt. Upgrading from 1.x? Follow the 2.0 migration guide.
Ask in your own words; the agent chooses the tools. The names stand for people in your tree, and a Gramps ID such as I0012 works as well.
| You ask | You get |
|---|---|
| "Tell me about Maria García." | Her names, events with dates and places, parents, spouses and children, citations and notes |
| "Who were Kenji Tanaka's great-grandparents?" | Each ancestor with a kinship label such as Father's mother, and birth and death dates and places |
| "How is Ivan Petrov related to Maria García?" | The relationship in words, such as second cousin once removed, and the common ancestors by name |
| "Transcribe the baptism scan O0012." | The scan for the agent to read, and the transcription in its reply |
| "Add Thomas Weber, born 3 May 1881 in Hamburg, son of Karl and Anna Weber." | The new records with their Gramps IDs, people already in the tree reused, and what the text left open |
| "Enter entry 12 of the 1884 marriage register: the couple, their fathers and the witnesses." | The citation, the marriage, the new people and families saved in one transaction, which one undo_change takes back |
| "What changed today? Undo the last edit." | The edit history, then the earlier versions back, or a refusal naming the later edits the undo would overwrite |
Reading scans needs media access. The tool catalog lists more requests and the tools each one uses.
You need a running Gramps Web instance and an account on it. Choose the setup by client:
| Client | Setup |
|---|---|
| Claude Desktop | The MCPB extension, installed from one file; no Docker |
| VS Code, Cursor | The install buttons above; the client starts the Docker image |
| Claude Code, Codex, Gemini CLI, Antigravity CLI, Open WebUI and others | Connecting MCP clients: over HTTP to a shared server, or started by the client from the Docker image or the release binary |
| Several clients or machines | One server in Docker, Docker Compose or on Unraid, reached over HTTP |
.mcpb bundle for your platform from the latest release, such as gramps-web-mcp-claude-desktop-osx-arm64-v*.mcpb for Apple Silicon.Claude Desktop connects to servers added by URL from Anthropic's cloud, not from your computer, so it cannot reach a server on your home network; use the extension there. Installation lists the bundle for each platform.
For one server that several clients share:
docker run -p 8080:8080 \
-e GRAMPS_API_URL=https://your-gramps.example.com \ -e GRAMPS_USERNAME=your-user \ -e GRAMPS_PASSWORD=your-password \ -e GRAMPS_TREE_ID=your-tree-uuid \ -e MCP_API_KEY=your-secret-api-key \ ghcr.io/scormave/gramps-web-mcp:latest
Clients then connect to http:// :8080/mcp with the API key, as shown in Over HTTP. Add -e GRAMPS_READ_ONLY=true for read-only mode. Installation covers refresh tokens, health checks, image verification, Docker Compose with Gramps Web, Unraid and upgrades.
Every setting is an environment variable. The main ones:
| Variable | Description | Default |
|---|---|---|
GRAMPS_API_URL | Base URL of your Gramps Web instance (no trailing slash) | — |
GRAMPS_USERNAME, GRAMPS_PASSWORD | The Gramps Web account the server works as | — |
GRAMPS_REFRESH_TOKEN | Used instead of the user name and password when Gramps Web has password login turned off | — |
GRAMPS_TREE_ID | Tree UUID on that server | — |
GRAMPS_READ_ONLY | true publishes only read tools and blocks writes | false (the Claude Desktop extension: true) |
GRAMPS_MEDIA_RESOURCES_ENABLED | Lets agents read scans and photos, and enables uploads | false |
GRAMPS_MEDIA_UPLOAD_DIRS | Folders that create_media may upload from | unset (off) |
MCP_TRANSPORT | stdio, http (Streamable HTTP) or sse | stdio (the Docker image: http) |
MCP_API_KEY | Key that HTTP clients must send; set it whenever other machines can reach the port | — |
Configuration describes every setting, including write pacing for SQLite, confirmation dialogs, media limits, transports, browser origins and logging.
| Document | Description |
|---|---|
| Installation | Claude Desktop, Docker, Docker Compose, Unraid, health checks, and upgrades |
| Connecting MCP clients | Claude Code, VS Code, Cursor, Codex, Gemini and Antigravity CLI, and Open WebUI, over HTTP or stdio |
| Configuration | Every environment variable |
| Tool catalog | Every tool, resource and prompt, and more example requests |
| System prompt | Suggested prompt for MCP clients |
| Migrating to 2.0 | Tool replacements and setup changes for 1.x users |
| Claude Desktop MCPB | Desktop extension packaging |
| Architecture | System design overview |
| Developer guide | Running from source, tests, and adding tools |
| docs index | All documentation files |
Contributions are welcome. ./run-local-server.sh runs the server from source against the public demo.grampsweb.org tree at http://127.0.0.1:8080/mcp, and dotnet test runs the tests. See CONTRIBUTING.md and the developer guide.
gramps-web-mcp is free and open source. If it helps your research, you can support its development through GitHub Sponsors, monthly or once. Sponsors whose tier includes a mention are listed here.
To report a vulnerability, see SECURITY.md.
The Claude Desktop extension is a local MCP server. It sends data only to the Gramps Web instance you configure and does not collect analytics or conversation data. See PRIVACY.md for full details.
Copyright (c) Scormave
This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0-or-later). Because this is network server software, hosting a modified version requires making the corresponding source available to users interacting with it over a network.
Bundled third-party components, such as ImageSharp, the MCP C# SDK, and the .NET runtime, keep their own Apache 2.0 or MIT licenses; see THIRD-PARTY-NOTICES.txt. The MCP Bundles and the Docker image ship that file next to LICENSE.
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요