Elysia Tools Docs
EN
Language
ZHESPTRUFRDEEN
Back to site
Browse tools

Education

Wright–Fisher Population Drift & Allele Frequency Tutor

Simulate Wright–Fisher genetic drift across many replicate populations with mutation and selection. Visualize drift trajectories, the final-frequency distribution, heterozygosity decay Hₜ = H₀(1−1/2Nₑ)ᵗ, and run a Hardy–Weinberg chi-square test.

html· HTML resultOpen tool

Quick start

Call this tool from your code in three languages.

cURL
curl -X POST 'https://api.elysiatools.com/en/api/tools/wright-fisher-population-drift-and-allele-frequency-tutor' \
  -H 'Content-Type: application/json' \
  -d '{"N":100,"ploidy":"diploid","generations":100,"reps":40,"p0":0.5,"mu":0,"s":0,"dominance":"additive","seed":42,"hwAA":0,"hwAa":0,"hwaa":0}'

API reference

Send a POST request with your inputs as JSON. File parameters require a separate upload first.

Endpoint

HTTP
POST https://api.elysiatools.com/en/api/tools/wright-fisher-population-drift-and-allele-frequency-tutor

Parameters

NameTypeRequiredDescription
NnumberNo—
ploidyselectNo—
generationsnumberNo—
repsnumberNo—
p0numberNo—
mu

MCP integration

Add this tool to your Model Context Protocol server so AI agents can list and call it.

Server configuration

Add this block to your MCP client configuration:

mcp.json
{
  "mcpServers": {
    "elysiatools-wright-fisher-population-drift-and-allele-frequency-tutor": {
      "name": "wright-fisher-population-drift-and-allele-frequency-tutor",
      "description": "Simulate Wright–Fisher genetic drift across many replicate populations with mutation and selection. Visualize drift trajectories, the final-frequency distribution, heterozygosity decay Hₜ = H₀(1−1/2Nₑ)ᵗ, and run a Hardy–Weinberg chi-square test.",
      "baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=wright-fisher-population-drift-and-allele-frequency-tutor",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

List available tools

After connecting to the SSE endpoint, list the exposed tools:

tools/list
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list"
}

Call this tool

Invoke the tool by its id, passing arguments built from its parameters:

tools/call
{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "tools/call",
  "params": {
    "name": "wright-fisher-population-drift-and-allele-frequency-tutor",
    "arguments": {
  "N": 100,
  "ploidy": "diploid",
  "generations": 100,
  "reps": 40,
  "p0": 0.5,
  "mu": 0,
  "s": 0,
  "dominance": "additive",
  "seed": 42,
  "hwAA": 0,
  "hwAa": 0,
  "hwaa": 0
}
  }
}
Browse toolsOpen tool

© 2026 Elysia Tools. Developer documentation.

Back to siteBrowse tools
number
No
—
snumberNo—
dominanceselectNo—
seednumberNo—
hwAAnumberNo—
hwAanumberNo—
hwaanumberNo—

Response format

HTML result

JSON
{
  "result": "<div>Processed HTML content</div>",
  "error": "Error message (optional)",
  "message": "Notification message (optional)",
  "metadata": {
    "key": "value"
  }
}
Chain multiple tools in one session with a comma-separated toolId list, e.g. /mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp (max 20).

Questions or issues? Contact [email protected]