Platform & Integrations

Evagene is more than a pedigree editor. Its platform features let you integrate pedigree intelligence into your own workflows, connect AI agents, push data to external systems, and embed pedigree visualisations in third-party applications.

The platform at a glance

FeatureWhat it doesWho it's for
API KeysProgrammatic access to the full Evagene APIDevelopers, integrators, DevOps
BYOK LLMUse your own LLM API key for AI analysisPower users, organisations with LLM accounts
WebhooksPush notifications when data changesIntegration engineers, EHR/LIMS connectors
Analysis TemplatesReusable custom AI prompt templatesGenetic counsellors, researchers, clinical teams
MCP ServerAI agent access via the Model Context ProtocolAI developers, Claude Desktop users
Embeddable ViewerPedigree diagrams on third-party websitesWeb developers, patient portals, dashboards

How the features connect

The platform features are designed to reinforce each other. The typical setup path is:

  1. 1Start with API Keys — everything else depends on them. API keys provide the authentication layer for programmatic access, MCP servers, and embeddable viewers.
  2. 2Set up BYOK if you want to use your own LLM — this removes the per-user quota limit and lets you choose your provider and model.
  3. 3Create Analysis Templates once BYOK is configured — templates let you run custom AI analyses tailored to your clinical or research questions.
  4. 4Register Webhooks to push pedigree changes to external systems — EHR integration, lab notification, Slack alerts.
  5. 5Deploy the MCP Server to let AI agents work with pedigrees directly — Claude Desktop, Claude Code, or any MCP-compatible client.
  6. 6Embed the Viewer in patient portals, research dashboards, or any website that needs to display pedigree diagrams.

API Keys

API keys give you programmatic access to the Evagene API. Unlike session tokens (which expire after 30 minutes), API keys are long-lived and designed for machine-to-machine communication. Each key has configurable scopes and rate limits, giving you fine-grained control over what it can do.

Key format

All Evagene API keys follow the format evg_<43 characters>. The evg_ prefix makes keys easy to identify in logs and configuration. Generated from 32 bytes of cryptographically secure randomness (256 bits of entropy). Only a SHA-256 hash is stored on the server.

Scopes

ScopeAllowsHTTP Methods
readFetch pedigrees, individuals, relationships, catalog dataGET
writeCreate, update, and delete pedigrees, individuals, relationshipsPOST, PATCH, PUT, DELETE
analyseRun AI interpretation, describe pedigree, risk analysis/interpret, /describe, /risk

write implies read. analyse implies read. Use the narrowest scope your integration needs.

Rate limits

Every key has two configurable rate limits: per-minute (default 60) and per-day (default 10,000). Tracked via sliding window. When exceeded, the API returns 429 Too Many Requests.

Quick start

curl -H "X-API-Key: evg_your_key_here" \
     https://your-server/api/pedigrees

Maximum 20 keys per account. Keys can have optional expiry dates and can be revoked or deleted at any time. Full API keys documentation →

Bring Your Own LLM Key

Evagene's AI interpretation uses a language model to analyse pedigree data and generate clinical insights. By default, the server's own key is used with a rolling 24-hour quota (typically 10 calls per day). With BYOK, you supply your own API key for Anthropic (Claude) or OpenAI (GPT) and bypass the quota entirely.

Supported providers

ProviderDefault modelKey format
Anthropicclaude-sonnet-4-20250514sk-ant-...
OpenAIgpt-4osk-...

Encryption at rest

Your API key is encrypted before storage using Fernet (AES-128-CBC with HMAC-SHA256 authentication), keyed from the server's JWT secret. The key is never stored in plaintext and is decrypted only at the moment an LLM call is made, then discarded from memory.

Model override

The model override field lets you specify any model ID your provider supports. Use a larger model for complex pedigrees, a smaller one for quick analyses, or a reasoning model for the most challenging cases. Leave it blank to use the provider's default. Full BYOK documentation →

Webhooks

Webhooks send HMAC-SHA256 signed HTTP POST notifications to your endpoints when pedigree data changes. Use them to connect Evagene to EHR systems, LIMS platforms, Slack, or any service that accepts HTTP.

Event types

pedigree.created
pedigree.updated
pedigree.deleted
individual.created
individual.updated
individual.deleted
analysis.completed
import.completed

Payload format

Each delivery includes three headers for verification and tracing:

X-Evagene-Event: pedigree.updated
X-Evagene-Signature-256: sha256=<hex-digest>
X-Evagene-Delivery: <unique-uuid>

The body is JSON containing the event type, pedigree ID, timestamp, and change details. Always verify the HMAC-SHA256 signature before processing. Maximum 20 webhooks per user, with delivery history for the last 20 attempts per webhook. Full webhooks documentation →

Analysis Templates

Analysis templates let you create reusable AI prompt templates for specific clinical or research questions. Instead of relying solely on the built-in five-section interpretation, you can design custom analyses focused on pharmacogenomics, reproductive risk, research hypotheses, or any other aspect of a pedigree.

Template variables

Placeholders are replaced with computed values at execution time:

VariableReplaced with
{{pedigree_description}}Full structured English description of the pedigree
{{proband_name}}Display name of the proband
{{proband_sex}}Biological sex of the proband
{{disease_list}}Comma-separated names of diseases in the working set
{{risk_summary}}Risk screening results (if available)

Example template

{
  "name": "Cancer Screening Protocol",
  "system_prompt": "You are an oncology genetic counsellor.",
  "user_prompt_template": "Review this family pedigree:\n\n{{pedigree_description}}\n\nThe proband is {{proband_name}} ({{proband_sex}}).\nDiseases: {{disease_list}}\n\nProvide:\n1. Cancer risk summary per syndrome\n2. Recommended genetic testing panel\n3. Screening schedule with start ages\n4. Cascade testing priorities for relatives"
}

Templates can be shared publicly with other users. Maximum 50 per account. Execution uses your BYOK key or the server default (subject to quota). Full templates documentation →

MCP Server for AI Agents

The Model Context Protocol (MCP) is an open standard that lets AI agents interact with external tools and data sources. Evagene includes an MCP server that exposes 11 pedigree management tools — meaning any MCP-compatible AI agent can create pedigrees, add individuals, run analyses, and import/export data through natural conversation.

Available tools

ToolDescription
list_pedigreesList all pedigrees owned by the authenticated user
get_pedigreeGet full details (individuals, relationships, eggs)
create_pedigreeCreate a new empty pedigree
add_individualAdd a person to a pedigree
update_individualUpdate an individual's properties
add_relationshipCreate a partnership between two individuals
add_offspringLink a child to a relationship
describe_pedigreeGenerate a structured English description
get_pedigree_summaryCompact summary (counts, proband, diseases)
export_gedcomExport as GEDCOM 5.5.1 text
import_gedcomImport GEDCOM content into a pedigree

Claude Desktop configuration

{
  "mcpServers": {
    "evagene": {
      "command": "python",
      "args": ["-m", "evagene.mcp_server"],
      "env": {
        "EVAGENE_API_KEY": "evg_your_key_here",
        "EVAGENE_DB_PATH": "/path/to/data/evagene.db"
      }
    }
  }
}

Example conversation

You: "Create a new pedigree called 'Smith Family' and add a female proband named Jane, age 34, with her parents John and Mary."

Agent: Uses create_pedigree, then add_individual three times, then add_relationship for the parents, then add_offspring to link Jane.

Architecture

The MCP server operates as a separate process that connects directly to the same SQLite database as the Evagene web application. Changes made via MCP are immediately visible in the web UI (and vice versa). No additional network ports are needed — communication is via stdin/stdout. Full MCP server documentation →

Embeddable Pedigree Viewer

Display Evagene pedigree diagrams on any website — patient portals, research dashboards, EHR integrations, or internal tools. Pedigrees are rendered as standard SVG using recognised pedigree notation.

Three ways to embed

1. Full HTML page (iframe)

<iframe
  src="https://your-server/api/embed/PEDIGREE_ID?api_key=evg_your_key"
  style="border:none; width:100%; min-height:400px; border-radius:10px"
  loading="lazy">
</iframe>

2. Raw SVG (img tag)

<img src="https://your-server/api/embed/PEDIGREE_ID/svg?api_key=evg_your_key"
     alt="Family Pedigree"
     style="max-width:100%">

3. JavaScript snippet (automatic)

<div data-evagene-pedigree="PEDIGREE_ID"
     data-evagene-key="evg_your_key"></div>

<script src="https://your-server/api/embed/snippet.js"></script>

SVG symbol notation

SymbolMeaning
SquareMale
CircleFemale
DiamondUnknown / intersex / other
Solid fill (indigo)Affected
Centre dot (light purple)Carrier / heterozygous
Diagonal line (red)Deceased
Arrow (orange)Proband

Pedigrees can also be accessed without authentication if marked as public — suitable for educational examples, published case studies, or anonymised demonstrations. The SVG is responsive and scales to fit the container. Full embeddable viewer documentation →

Security considerations

  • API keys are SHA-256 hashed before storage — the plaintext key exists only in your hands
  • BYOK keys are encrypted at rest with Fernet (AES-128-CBC + HMAC-SHA256), keyed from the server's JWT secret
  • Webhook secrets are unique per-webhook and used for HMAC-SHA256 payload signing — always verify signatures before processing
  • Rate limits are enforced per API key with configurable per-minute and per-day sliding windows
  • Scope restrictions ensure API keys can only perform the actions you authorise (read, write, analyse)
  • Embed access requires either an API key or a pedigree explicitly marked as public

Frequently asked questions

How do I get started with the Evagene API?

Go to Account > API Keys in the Evagene dashboard, enter a name, and click Generate Key. Copy the key immediately — it's shown only once. Then use it via the X-API-Key header in any API request. Each key supports configurable scopes and rate limits.

Can I use Evagene with Claude Desktop or Claude Code?

Yes. Add the MCP server to your Claude Desktop configuration with your API key and database path. Once connected, you can create pedigrees, add individuals, describe family structures, import/export GEDCOM, and more through natural conversation. The same MCP server works with Claude Code and any MCP-compatible client.

Can Evagene integrate with EHR or LIMS systems?

Yes, via the REST API and webhooks. The API provides programmatic access to all pedigree data, and webhooks push real-time notifications when data changes. This enables integration patterns such as syncing pedigree updates to an EHR, triggering downstream workflows in a LIMS when analysis completes, or posting alerts to Slack. The embeddable viewer can also display pedigrees directly within an EHR's web interface.

Is the API secure?

Yes. API keys are SHA-256 hashed before storage. BYOK LLM keys are encrypted at rest with Fernet. Webhook payloads are HMAC-SHA256 signed. Rate limits prevent abuse. API keys support three fine-grained scopes so you can follow the principle of least privilege.

What are analysis templates?

Reusable custom AI prompt templates with variable injection. You define a system prompt (the AI's role) and a user prompt template with placeholders like {{pedigree_description}} and {{proband_name}}. At execution time, these are replaced with computed values from the target pedigree. Design analyses for pharmacogenomics, reproductive risk, cancer screening, or patient-friendly summaries.

Can I use my own AI model?

Yes. BYOK lets you supply your own Anthropic (Claude) or OpenAI (GPT) API key. Your key is encrypted at rest, bypasses the daily quota, and you can override the default model — for example, Claude Opus for maximum quality or GPT-4o-mini for speed.

Build on Evagene

REST API, MCP server, webhooks, analysis templates, BYOK LLM, and embeddable viewers. Join the alpha programme and start integrating pedigree intelligence into your workflows.

Join the Alpha Waiting List