Education
1:N split from current and target densities, with keep/fresh-medium volumes and inter-passage doublings. Educational use only.
Call this tool from your code in three languages.
curl -X POST 'http://127.0.0.1:3003/en/api/tools/passage-dilution-ratio' \
-H 'Content-Type: application/json' \
-d '{"mode":"volume","currentDensity":2000000,"targetDensity":200000,"cultureVolumeMl":10,"intervalHours":48,"decimalPlaces":2}'Send a POST request with your inputs as JSON. File parameters require a separate upload first.
POST http://127.0.0.1:3003/en/api/tools/passage-dilution-ratio| Name | Type | Required | Description |
|---|---|---|---|
| mode | select | Yes | Just the 1:N ratio, or the split volumes for a specific culture volume. |
| currentDensity | number | Yes | Viable-cell density of the culture being passaged (from a hemocytometer count). |
| targetDensity | number | Yes | Seed density you want in the new flask. |
| cultureVolumeMl | number | Yes | Total volume of the culture being split (volume mode). |
| intervalHours | number |
Add this tool to your Model Context Protocol server so AI agents can list and call it.
Add this block to your MCP client configuration:
{
"mcpServers": {
"elysiatools-passage-dilution-ratio": {
"name": "passage-dilution-ratio",
"description": "1:N split from current and target densities, with keep/fresh-medium volumes and inter-passage doublings. Educational use only.",
"baseUrl": "http://127.0.0.1:3003/mcp/sse?toolId=passage-dilution-ratio",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}After connecting to the SSE endpoint, list the exposed tools:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Invoke the tool by its id, passing arguments built from its parameters:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "passage-dilution-ratio",
"arguments": {
"mode": "volume",
"currentDensity": 2000000,
"targetDensity": 200000,
"cultureVolumeMl": 10,
"intervalHours": 48,
"decimalPlaces": 2
}
}
}Questions or issues? Contact [email protected]
| Optional planned hours between passages, for doublings and doubling time. |
| decimalPlaces | number | No | — |
JSON result
{
"key": {...},
"metadata": {
"key": "value"
},
"error": "Error message (optional)",
"message": "Notification message (optional)"
}