NATIVE CAPABILITY COMPOSITION

A goal.
A checked path.

Describe the result and the data you have. Rust searches the registered capabilities, preserves their contracts and explains what can run.

Explore the capability atlas ↗Connect your assistant →

Three optional MCP tools

  1. list_composition_capabilities returns implemented engines, explicit adapters, composite capabilities, versioned facts and reproducible examples.
  2. compose_capabilities searches for a dependency plan without running calculations. Its response includes the selected graph, examined alternatives, blockers and an execution binding where one exists.
  3. execute_composition recompiles 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.

First published 30 September 2026 · Last updated 6 October 2026

Try the explained demonstrations

Each page includes editable example arguments, the actual method and its limitations. No calculation starts when a page is opened. These are tools in one MCP server, not separate server endpoints.

Browse all 30 demonstrations →