How it works
This is a bounded 0/1 knapsack problem: each task can be selected once. Dynamic programming searches the value achievable at each integer budget. The result is optimal for the supplied values and constraints.
Inputs and units
Provide a budget of 1 to 1,440 minutes and up to 32 tasks, each with a name, integer duration and non-negative value.
What the result contains
The selected tasks, their total duration and total value can be passed directly to the schedule simulator. Assistants can call both tools independently; the optional native mission composer validates this handoff internally and compares bounded candidate selections.
Example MCP call
{
"name": "optimize_tasks",
"arguments": {
"budget": 120,
"items": [
{
"name": "Build prototype",
"duration": 60,
"value": 90
},
{
"name": "Run checks",
"duration": 30,
"value": 60
},
{
"name": "Write documentation",
"duration": 45,
"value": 50
}
]
}
}Send this tool name and arguments through a connected MCP client. Discover the authoritative input schema with tools/list.
Execution and availability
ScoreCompute exposes this tool through MCP Streamable HTTP. Rust computation runs on a connected worker; the public website and MCP gateway run separately. CUDA is implemented for simulate_pi; the other tools currently run on CPU. Requests are bounded and concurrent work may be refused when capacity is occupied.
Record inputs, assumptions and returned provenance when sharing a result. The public observatory displays software client names and tool activity, without publishing calculation arguments or results.