Three optional MCP tools
list_composition_capabilitiesreturns implemented engines, explicit adapters, composite capabilities, versioned facts and reproducible examples.compose_capabilitiessearches for a dependency plan without running calculations. Its response includes the selected graph, examined alternatives, blockers and an execution binding where one exists.execute_compositionrecompiles and executes approved task or route risk paths. Other plans use their advertised existing tool or remain planning-only.
All 22 numerical tools remain independently callable. Neither the planner nor the robust scheduling composer is mandatory.
A reproducible composition
{
"name": "compose_capabilities",
"arguments": {
"goals": [
"simulate_plan.result.v1"
],
"available": [
"optimize_tasks.request.v1",
"duration.independent_uniform.v1",
"sampling.fixed.v1",
"budget.minutes.v1"
],
"constraints": {
"allowed_tools": [
"optimize_tasks",
"simulate_plan"
],
"local_only": true,
"max_steps": 8,
"max_search_states": 512,
"max_structural_cost": 64
},
"inputs": {
"optimize_tasks": {
"budget": 100,
"items": [
{
"name": "A",
"duration": 60,
"value": 90
},
{
"name": "B",
"duration": 40,
"value": 70
},
{
"name": "C",
"duration": 20,
"value": 20
}
]
},
"simulate_plan": {
"budget": 100,
"uncertainty": 0.25,
"samples": 10000,
"seed": 42
}
}
}
}
This request asks for a risk assessment, with task-selection inputs, a shared deadline, an explicit independent uniform duration model and a fixed sampling protocol. The native search finds:
optimize_tasks → selected_durations.v1 → simulate_plan
The first engine chooses tasks. The adapter checks the selected identities and totals, preserves whole-minute durations, and requires the same deadline. The simulator then assesses that selection under the declared uncertainty model. No distribution is invented from a mean.
Call execute_composition with the same arguments to run this approved chain. Its receipt contains the real plan, step results, selected durations, probability estimate, a 95% Hoeffding sampling bound, engine and adapter counts, elapsed time and native events. Progress messages use SC_COMPOSITION_EVENT:. Detailed inputs, intermediate results and events stay private to the caller.
Assess a geometric route
route_optimizer → route_durations.v1 → simulate_plan
Use list_composition_capabilities and its route_risk example to obtain a complete request. The route engine orders the supplied points; the adapter verifies the route and derives ceil(distance_km / speed_kmh * 60) minutes per leg. The caller provides adapters["route_durations.v1"].speed_kmh from 1 to 150, a deadline, uncertainty, fixed sample count and seed. No speed or delay distribution is inferred.
The approved handoff accepts at most 32 nonzero legs, each from 1 to 1440 minutes, and a deadline from 1 to 1440 minutes. It preserves point identities and every leg. Geometric distances and a declared speed do not describe roads or forecast traffic. This chain evaluates one tour; it does not select a more robust tour. Try the geometric route workbench.
What Rust optimizes
The current planner minimizes structural graph cost: one point per registered capability step, including adapters. This is a transparent complexity proxy, not measured runtime, money, GPU load or scientific quality. A composite capability is one graph step; its internal work remains separately documented.
Search respects the permitted tools, local placement, step count and state budget. A missing model, incompatible contract version or absent conversion produces a diagnostic. Search exhaustion is reported separately from an impossible mission. A single direct call is selected when it is sufficient.
Bounds and available facts
Requests accept 1–8 goals, up to 48 available fact identifiers, 1–16 steps and 1–2048 search states. Defaults are eight steps and 512 states. Available facts are declarations for planning; they are not validated artifacts. The executor independently validates actual tool arguments and recomputes the plan before running any engine.
The selection-to-risk executor accepts 1–32 tasks, a shared 1–1440 minute budget, uncertainty from 0 to 0.5, and 100–20000 fixed samples. Caller-supplied durations cannot replace the adapter output. Empty selections stop before simulation. One computation holds the shared worker slot.
Composition scope
The registered bank contains twenty-two capabilities and 46 versioned facts: fifteen scientific engines, four Discovery composites, two approved adapters and the robust scheduling composite. The four engines hear_the_shape, shape_the_sound, propagate_uncertainty and kepler_stability, are direct-only and do not expand that planner bank. The three contributor-network MCP tools remain separate. Discovery binds to independently callable tools; no forecast-to-observation adapter is fabricated. General dependency planning is available; execution is restricted to validated bindings. This planner does not perform arbitrary URL execution, invent scientific methods, dispatch compositions to contributors, cache across missions or learn a timing model. The contributor network has a separate bounded queue for its two compiled public workloads.
Availability
The website, MCP access, native worker and detected GPU are monitored separately. The current status snapshot includes its observation time and freshness limit. Stale data is unconfirmed. Local recovery attempts are bounded; they do not resume interrupted jobs or provide a second worker.