ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

Gramps Web MCP

โดย Scormaveรุ่น 2.9.1i★ –iรันบนเครื่อง
ชื่อใน registryio.github.Scormave/gramps-web-mcp

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

MCP server for structured access to Gramps Web genealogy data

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: อื่น ๆ
  • ต้องใส่ค่าเหล่านี้: GRAMPS_API_URL, GRAMPS_PASSWORD, GRAMPS_REFRESH_TOKEN, GRAMPS_TREE_ID

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

  • ผลตรวจเบื้องต้น: ผ่าน 1 จาก 1 ข้อ
  • รันในเครื่องคุณด้วยสิทธิ์ของผู้ใช้คุณ (ไฟล์ อินเทอร์เน็ต แอปต่าง ๆ)
  • ค่าที่คุณต้องใส่เอง: 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

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • Dockerติดตั้ง Docker ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด 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": "ใส่ค่าของคุณ",
        "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": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add gramps-web --env MCP_TRANSPORT='ใส่ค่าของคุณ' --env GRAMPS_API_URL='ใส่ค่าของคุณ' --env GRAMPS_USERNAME='ใส่ค่าของคุณ' --env GRAMPS_PASSWORD='ใส่ค่าของคุณ' --env GRAMPS_REFRESH_TOKEN='ใส่ค่าของคุณ' --env GRAMPS_TREE_ID='ใส่ค่าของคุณ' --env GRAMPS_READ_ONLY='ใส่ค่าของคุณ' --env GRAMPS_MUTATION_SERIALIZE='ใส่ค่าของคุณ' --env GRAMPS_MUTATION_MIN_INTERVAL_MS='ใส่ค่าของคุณ' --env GRAMPS_CONFIRMATION='ใส่ค่าของคุณ' --env GRAMPS_LOG_LEVEL='ใส่ค่าของคุณ' --env GRAMPS_MEDIA_RESOURCES_ENABLED='ใส่ค่าของคุณ' --env GRAMPS_MEDIA_MAX_BYTES='ใส่ค่าของคุณ' --env GRAMPS_MEDIA_ALLOW_PRIVATE='ใส่ค่าของคุณ' --env GRAMPS_MEDIA_UPLOAD_DIRS='ใส่ค่าของคุณ' --env GRAMPS_MEDIA_UPLOAD_MAX_BYTES='ใส่ค่าของคุณ' -- 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

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .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": "ใส่ค่าของคุณ",
        "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": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .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": "ใส่ค่าของคุณ",
        "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": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • MCP_TRANSPORT env
    Pinned to stdio for registry-installed containers that the client spawns itself. The image's own default is http (Streamable HTTP on port 8080) for networked Docker deployments; see the README for th…
  • GRAMPS_API_URL จำเป็น env
    Base URL of your Gramps Web instance
  • GRAMPS_USERNAME env
    Gramps Web API username; required with GRAMPS_PASSWORD unless GRAMPS_REFRESH_TOKEN is set
  • GRAMPS_PASSWORD ความลับ env
    Gramps Web API password; required with GRAMPS_USERNAME unless GRAMPS_REFRESH_TOKEN is set
  • GRAMPS_REFRESH_TOKEN ความลับ env
    Refresh token for instances with password login disabled; replaces GRAMPS_USERNAME and GRAMPS_PASSWORD
  • GRAMPS_TREE_ID จำเป็น env
    Gramps Web tree UUID
  • GRAMPS_READ_ONLY env
    Set to true to block create, update, and delete tools
  • GRAMPS_MUTATION_SERIALIZE env
    Serialize create/update/delete HTTP calls in-process (set false to allow parallel writes)
  • GRAMPS_MUTATION_MIN_INTERVAL_MS env
    Minimum milliseconds between mutation HTTP calls. Use 250 or 500 on SQLite if you see database is locked
  • GRAMPS_CONFIRMATION env
    Whether delete_object, merge_objects and undo_change ask the user to confirm through MCP elicitation: when-supported, required (refuse in clients that cannot ask), or off
  • GRAMPS_LOG_LEVEL env
    Server log level: Trace, Debug, Information, Warning, Error, Critical, or None. Debug and Trace also log request and response bodies, which contain genealogy data
  • GRAMPS_MEDIA_RESOURCES_ENABLED env
    Set to true to expose read_media and the media resources for thumbnails and full files, and to allow uploads from GRAMPS_MEDIA_UPLOAD_DIRS
  • GRAMPS_MEDIA_MAX_BYTES env
    Maximum bytes returned by read_media or a media resource
  • GRAMPS_MEDIA_ALLOW_PRIVATE env
    Set to true to return bytes for media records marked private
  • GRAMPS_MEDIA_UPLOAD_DIRS env
    Absolute folders, separated by : (; on Windows), that create_media and update_media may upload photos, scans and PDFs from while GRAMPS_MEDIA_RESOURCES_ENABLED is true. Unset turns uploading off and…
  • GRAMPS_MEDIA_UPLOAD_MAX_BYTES env
    Largest file create_media or update_media uploads

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub Scormave ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด อื่น ๆi

  • ดาวมากกว่า 0% ของอีก 32700 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 90% ของอีก 32700 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 32700 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Gramps Web MCP ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: GRAMPS_API_URL, GRAMPS_PASSWORD, GRAMPS_REFRESH_TOKEN, GRAMPS_TREE_ID

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (2.9.1) เข้า registry 4 วันที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Docker ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Agent Data Tools: Utilities

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Spec Driven Development

โดย formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

รันบนเครื่อง★ 440MITอัปเดต 14 เดือนที่ผ่านมา
ติดตั้ง

Remote Desktop Commander

โดย desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

รันบนคลาวด์★ 211อัปเดต เมื่อวานซืน
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

gramps-web-mcp

[!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.

Features

  • Up to 35 MCP tools — read, create, update, merge, and delete people, families, events, places, sources, citations, notes, media, repositories, and tags
  • Search and kinship — full-text search, listings filtered by Gramps QL or Gramps filter rules, ancestors, descendants, relationships, and timelines
  • Careful edits — add or remove one link with linkMode and keep the rest; save a whole register entry in one transaction with create_records; dates in every Gramps form and calendar
  • Duplicates — find_duplicates pairs people entered twice, across spellings and name forms, and the create tools refuse a person the tree already has
  • Undo and confirmation — undo_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 elicitation
  • Scans and photos — opt-in previews that vision-capable agents can read, with EXIF/GPS metadata stripped, and uploads from a folder you choose
  • 8 MCP resources and guided prompts — type vocabularies, tree metadata, filter rules, and workflows for research, imports, citing facts, and tree audits
  • Read-only mode — publish only read tools and block direct mutation calls
  • Any MCP client — stdio, Streamable HTTP, and legacy SSE, from a Claude Desktop extension, a Docker image, or a single-file release binary

The tool catalog describes every tool, resource and prompt. Upgrading from 1.x? Follow the 2.0 migration guide.

What to ask

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 askYou 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.

Install

You need a running Gramps Web instance and an account on it. Choose the setup by client:

ClientSetup
Claude DesktopThe MCPB extension, installed from one file; no Docker
VS Code, CursorThe install buttons above; the client starts the Docker image
Claude Code, Codex, Gemini CLI, Antigravity CLI, Open WebUI and othersConnecting MCP clients: over HTTP to a shared server, or started by the client from the Docker image or the release binary
Several clients or machinesOne server in Docker, Docker Compose or on Unraid, reached over HTTP
Claude Desktop
  1. Download the .mcpb bundle for your platform from the latest release, such as gramps-web-mcp-claude-desktop-osx-arm64-v*.mcpb for Apple Silicon.
  2. Double-click it, or drag it into the Claude Desktop window.
  3. Enter your Gramps Web URL, username, password/token, and tree UUID.
  4. Leave Read-only mode enabled for your first session; disable it only when you want Claude to create or edit records.
  5. Complete installation and start a new chat.

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.

Docker

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.

Configuration

Every setting is an environment variable. The main ones:

VariableDescriptionDefault
GRAMPS_API_URLBase URL of your Gramps Web instance (no trailing slash)—
GRAMPS_USERNAME, GRAMPS_PASSWORDThe Gramps Web account the server works as—
GRAMPS_REFRESH_TOKENUsed instead of the user name and password when Gramps Web has password login turned off—
GRAMPS_TREE_IDTree UUID on that server—
GRAMPS_READ_ONLYtrue publishes only read tools and blocks writesfalse (the Claude Desktop extension: true)
GRAMPS_MEDIA_RESOURCES_ENABLEDLets agents read scans and photos, and enables uploadsfalse
GRAMPS_MEDIA_UPLOAD_DIRSFolders that create_media may upload fromunset (off)
MCP_TRANSPORTstdio, http (Streamable HTTP) or ssestdio (the Docker image: http)
MCP_API_KEYKey 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.

Documentation

DocumentDescription
InstallationClaude Desktop, Docker, Docker Compose, Unraid, health checks, and upgrades
Connecting MCP clientsClaude Code, VS Code, Cursor, Codex, Gemini and Antigravity CLI, and Open WebUI, over HTTP or stdio
ConfigurationEvery environment variable
Tool catalogEvery tool, resource and prompt, and more example requests
System promptSuggested prompt for MCP clients
Migrating to 2.0Tool replacements and setup changes for 1.x users
Claude Desktop MCPBDesktop extension packaging
ArchitectureSystem design overview
Developer guideRunning from source, tests, and adding tools
docs indexAll documentation files

Contributing

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.

Sponsors

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.

Security

To report a vulnerability, see SECURITY.md.

Privacy Policy

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.

License

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.

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx