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-tutorParameters
| Name | Type | Required | Description |
|---|---|---|---|
| N | number | No | — |
| ploidy | select | No | — |
| generations | number | No | — |
| reps | number | No | — |
| p0 | number | No | — |
| 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
}
}
}