Verified

Gramps Web Rs MCP Server

Genealogy records management for Gramps Web instances using Rust.

Data last scanned today · Reviewed today

Overview

This MCP server provides a direct interface between AI assistants and Gramps Web genealogy databases. It exposes a full suite of API tools, allowing users to search, read, create, update, delete, and merge records, or manage transactions directly through their chosen AI interface. Deployment is flexible, supporting local stdio execution for direct host connections, or HTTP-based transport for LAN, VPN, or public server access. The server is implemented in Rust and requires configuration of credentials and base API URLs to establish a connection to an existing Gramps Web instance.

Our verdict

This project holds a security score of 35/100, resulting in a high-risk classification. The primary concern is that the authentication methods and potential read-only safeguards have not been editorially reviewed, meaning users should exercise caution when connecting this to databases containing sensitive family information. It is intended for power users familiar with self-hosting and security best practices, rather than general consumers.

  • Zero direct dependencies reduce the supply-chain attack surface.
  • Built in Rust for potentially improved performance and reliability.
  • Comprehensive CRUD operations for full database management.
  • Detailed setup documentation provided for multiple deployment environments.
  • High-risk status due to lack of security review for authentication.
  • Read-only mode implementation has not been formally verified.
  • Community-maintained project lacking official support from Gramps Web.

Compatibility

ClientLocalDockerRemoteRead-only
ChatGPT
Claude Desktop
Cursor
VS Code
Windsurf

Frequently asked questions

Which deployment modes are supported?

The server supports Local (stdio) for same-machine access, LAN/VPN (HTTP) for local network access, and Public server (HTTP+TLS) for internet-exposed instances.

How do I restrict the server to read-only access?

You can set the GRAMPS_READONLY environment variable to true, though using a Gramps Web account with the Viewer role is recommended for formal access control.

Is authentication required for the HTTP transport mode?

You can protect the /mcp endpoint using the MCP_AUTH_TOKEN environment variable. If this is left unset, no authentication is performed, which should only be used on trusted networks.

How does the server prevent DNS-rebinding attacks?

The server uses the MCP_ALLOWED_HOSTS variable to define accepted Host header values. If this is not configured, it defaults to allowing only localhost, 127.0.0.1, and ::1.

What happens if I do not set a keep-alive timeout?

The MCP session has a default keep-alive timeout of 300 seconds. You can set the MCP_KEEP_ALIVE variable to 0 to disable session expiration entirely.

Alternatives

Changelog

Badge

Gramps Web Rs MCP Server security score, rated on RepoAI

Maintain this server? Add the live badge to your README.