Skip to main content
Glama

ASTRA — Unified Research Lab + MCP Server

Autonomous Sentient Thoughtful Reasoning Agent

License: MIT CI MCP Spec MCP SDK Node.js TypeScript

Production-grade Model Context Protocol server exposing the ASTRA bio-hybrid neuromorphic simulation pipeline to AI assistants. Built with the official @modelcontextprotocol/sdk, it integrates a layered SNN LIF+STDP engine, consciousness proxy assessment, bio-computing platform telemetry, and an IRB ethics monitor — all queryable as MCP tools, resources, and prompts from Claude Desktop, Cursor, VS Code, and any MCP-compatible client.

FinalSpark (800K neurons) ──┐
Cortical Labs CL1 ──────────┼─→ Spike Encoders → SNN (LIF+STDP, 128 neurons) → ACM Proxies
Koniku Kore ────────────────┘         │                    │
                                      │              ┌─────┴─────┐
                                      │              │  Φ̃  GW̃  PAD̃  │
                                      │              └─────┬─────┘
                                      ├─→ Ethics IRB Monitor (mode-aware)
                                      └─→ MCP Server (24 tools · 8 resources · 5 prompts)

Note on data mode: In the default sim mode, all bio-platform data is synthetically generated. The server is designed to connect to live platforms in live mode, but this requires hardware access and appropriate IRB approval.


What's New in v2

  • Layered SNN architecture: Configurable feed-forward + recurrent topology (default: 32→64→16→16 = 128 neurons) replacing the flat random network

  • Event-driven STDP: O(spikes × fan-out) instead of O(N²) per timestep

  • Ring buffer: O(1) spike history eviction replacing O(n) Array.shift()

  • Sparse weight storage: Adjacency lists instead of dense N×N matrix

  • Honest ACM naming: Proxies clearly labelled as integrationProxy, broadcastProxy, arousalProxy with methodological basis strings — no false IIT/GWT/PAD claims

  • Bounds-checked parameters: set_parameter rejects implausible values (NaN, Infinity, out-of-range)

  • Mode-aware ethics: Reports distinguish simulated vs live data with explicit disclaimers

  • CI pipeline: GitHub Actions for build, test, and Docker smoke-test

  • Repo hygiene: dist/ excluded from VCS, .gitignore added, deployment script removed


Related MCP server: ASTRA MCP Server

Quick Start

git clone https://github.com/christophejlegros-lgtm/ASTRA-Unified-ResearchLab-MCP-v2.1.git
cd ASTRA-Unified-ResearchLab-MCP-v2.1

# Install & build
npm install
npm run build

# Run (stdio — for Claude Desktop / Cursor)
node dist/index.js

# Or dev mode (no build needed)
npm run dev

Transports

Transport

Command

Port

Clients

stdio

node dist/index.js

—

Claude Desktop, Cursor, VS Code

SSE

node dist/sse-server.js

9002

Web clients, remote agents

Streamable HTTP

node dist/http-server.js

9003

Modern MCP clients (spec 2025-11-25)


Client Configuration

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "astra": {
      "command": "node",
      "args": ["/absolute/path/to/dist/index.js"],
      "env": { "ASTRA_LOG_LEVEL": "info" }
    }
  }
}

Cursor

Add to .cursor/mcp.json (project) or ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "astra": {
      "command": "node",
      "args": ["/absolute/path/to/dist/index.js"]
    }
  }
}

VS Code

Add to .vscode/settings.json:

{
  "mcp": {
    "servers": {
      "astra": {
        "type": "stdio",
        "command": "node",
        "args": ["${workspaceFolder}/dist/index.js"]
      }
    }
  }
}

Docker (remote SSE + HTTP)

docker compose up -d
# SSE: http://host:9002/sse
# HTTP: http://host:9003/mcp

MCP Tools (24)

All tools declare MCP annotations (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) and human-readable titles.

Tool

Title

Annotations

get_system_status

ASTRA System Status

📖 read-only

get_metrics

Real-time Metrics

📖 read-only

get_snn_state

SNN Engine State

📖 read-only

snn_step

Advance SNN Simulation

✏️ mutating

snn_reset

Reset SNN Engine

⚠️ destructive

inject_spikes

Spike Injection

✏️ mutating

get_acm_score

Consciousness Assessment (Proxy)

📖 read-only

check_ethics

IRB Neural Welfare Check

📖 read-only

set_parameter

Modify State Parameter

⚠️ destructive, bounds-checked

get_platform_status

Bio-Computing Platforms

📖 read-only · 🌐 open-world

export_snapshot

Full State Snapshot

📖 read-only

simulation_control

Simulation Control

✏️ mutating

MCP Resources (8)

URI

Description

astra://metrics/realtime

Live metrics from all subsystems

astra://snn/topology

Actual network architecture (reflects engine config)

astra://acm/state

Current consciousness proxy assessment vector

astra://ethics/welfare

IRB compliance and welfare report (mode-aware)

astra://snapshot/current

Complete state dump

MCP Prompts (5)

Pre-built workflow templates that orchestrate multi-tool sequences:

Prompt

Description

system-health-report

Orchestrates 5 tools into a comprehensive system report

snn-experiment

Controlled SNN experiment: reset → stimulate → observe STDP → assess proxies

ethics-stress-test

Progressive biomarker degradation: NORMAL → STRESS → DISTRESS → recovery


Architecture

.github/workflows/
└── ci.yml                # GitHub Actions: build, test, Docker smoke-test

src/
├── index.ts              # stdio transport entry point
├── sse-server.ts         # SSE transport (Express)
├── http-server.ts        # Streamable HTTP transport (Express)
├── server.ts             # MCP server factory (24 tools + 5 prompts + 8 resources)
│   ├── server-wm-tools.ts    # World Model JEPA tools (6 tools + 2 resources + 1 prompt)
│   ├── server-sensor-tools.ts # Multimodal sensor tools (6 tools + 1 resource + 1 prompt)
├── engine/
│   ├── state.ts          # Reactive state store + parameter bounds registry
│   ├── snn.ts            # Layered SNN LIF+STDP engine (Map-indexed sparse weights, event-driven)
│   ├── acm.ts            # Consciousness proxy module (Φ̃ + GW̃ + PAD̃)
│   ├── ethics.ts         # IRB ethics monitor (mode-aware, biomarker thresholds)
│   ├── world-model.ts     # JEPA World Model engine (LeWM adapted)
│   ├── wm-simulation.ts   # WM simulation manager (replay buffer, auto-train)
│   ├── multimodal-sensors.ts # V-JEPA 2 + A-JEPA + Koniku + fusion
│   └── simulation.ts     # Background tick loop
└── utils/
    └── logger.ts         # Structured logging (pino → stderr)

tests/
├── astra.test.ts         # Unit tests: state, bounds, SNN, ACM, ethics, security
├── world-model.test.ts   # World Model: encoder, predictor, SIGReg, CEM, surprise
├── wm-simulation.test.ts # WM simulation: buffer, training, planning, lifecycle
├── multimodal-sensors.test.ts # Sensors: V-JEPA, A-JEPA, Koniku, fusion, pipeline
└── integration.test.ts   # Client SDK integration: tools, resources, prompts, workflow

configs/                  # Ready-to-use client configurations

Extracted to separate repositories: The v1 HTML dashboard (4 669 lines) and the legacy Node.js bridge config have been removed from this repo to keep it focused on the MCP server. See ASTRA-Unified-ResearchLab-MCP- for the original dashboard.

SNN Engine

Layered LIF+STDP — Configurable layered architecture. Default: 32 (input) → 64 (hidden_1) → 16 (hidden_2) → 16 (output) = 128 neurons.

Connectivity: feed-forward between adjacent layers (30%) + sparse recurrent within layers (10%). Weights stored as sparse adjacency lists, not dense matrices.

Biophysical parameters: τ_m = 20ms, V_th = −50mV, V_reset = −70mV, refractory = 2ms. Background noise range [10, 22] mV produces ~2 spikes/step at steady state with all neurons active. STDP: A+ = 0.01, A− = 0.012, τ± = 20ms, event-driven (processes only spiking neurons per timestep).

The SNN topology resource (astra://snn/topology) dynamically reports the actual engine configuration, including layer sizes, synapse count, connectivity parameters, and weight storage type (Map-indexed sparse adjacency lists).

ACM — Consciousness Proxy Module

⚠ Methodological disclaimer: The metrics below are computational proxies inspired by the referenced theories. They are not faithful implementations. See source code comments for full details.

Composite score: ACM = α·Φ̃ + β·GW̃ + γ·PAD̃ (default: α=0.40, β=0.35, γ=0.25)

Component

Basis

Inspired by

What it actually measures

integrationProxy (Φ̃)

Active fraction + mean firing rate + synaptic heterogeneity

IIT (Tononi)

Network participation and complexity proxy. True Φ is NP-hard to compute.

broadcastProxy (GW̃)

Cross-layer firing rate synchrony (CV-based)

GWT (Baars)

Uniform activation across layers. Does not model competitive coalitions or ignition.

arousalProxy (PAD̃)

Spike rate + bio coupling + energy

PAD (Mehrabian)

Arousal dimension only. Pleasure and Dominance are not computed.

Ethics IRB Monitor

IRB compliance level N3 (100K–1M neurons). Four biomarkers with three-state classification.

Mode-aware: In sim mode, reports include explicit disclaimers that data is synthetic and irbRequired is false. In live mode, DISTRESS triggers mandatory IRB notification.

Biomarker

Normal

Stress

Critical

Cell viability

≥ 90%

80–90%

< 80%

Firing rate

15–45 Hz

outside range

≤ 5 or ≥ 60 Hz

ATP/ADP

≥ 3.0

2.0–3.0

< 2.0

Calcium

< 100 nM

100–200 nM

≥ 200 nM

Parameter Bounds

The set_parameter tool validates all numeric inputs against a bounds registry to prevent injection of absurd values (negative percentages, Infinity, NaN). Bounds are defined per parameter path — see src/engine/state.ts for the complete registry.


Testing

# Full suite
npm test

# Unit tests only
node --import tsx --test tests/astra.test.ts

# Integration tests only (Client SDK)
node --import tsx --test tests/integration.test.ts

# MCP Inspector
npm run inspect

Development

npm run dev        # stdio (no build)
npm run dev:sse    # SSE on :9002
npm run dev:http   # HTTP on :9003
npm run watch      # TypeScript watch mode

Environment Variables

Variable

Default

Description

ASTRA_LOG_LEVEL

info

debug, info, warn, error

ASTRA_SSE_PORT

9002

SSE transport port

ASTRA_HTTP_PORT

9003

Streamable HTTP port

ASTRA_CORS_ORIGIN

*

CORS allowed origin


Scaling Notes

The default 128-neuron configuration is designed for interactive demonstration. To scale toward the aspirational 256→512→256→128 (1 152 neurons) architecture:

  1. Pass custom layers to SNNEngine: new SNNEngine({ layers: [{ name: 'input', size: 256 }, ...] })

  2. Event-driven STDP scales as O(spikes × average fan-out), not O(N²)

  3. Map-indexed adjacency lists provide O(1) weight lookup per synapse

  4. Sparse storage keeps memory proportional to actual synapses (~18 KB at 128 neurons vs 64 KB dense)

  5. Consider increasing intervalMs in the simulation loop for larger networks

  6. For >10K neurons, a Rust/WASM or Lava SDK backend is recommended


License

MIT — © 2026 Christophe Jean Legros, Geneva

Assistance Multi IA · Assistant-Multi-AI@proton.me

References

Available Tools

24 tools
check_ethicsC

IRB Neural Welfare Check

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavioral traits, but it does not. 'IRB Neural Welfare Check' only vaguely suggests a read-only assessment; it does not state side effects, permissions, failure modes, or output behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short, but this is under-specification rather than effective conciseness. There is no structure, no verb, and no explanatory content beyond a label-like phrase.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description needed to explain what the check returns and how it relates to sibling tools. Instead it leaves the agent guessing what 'IRB Neural Welfare Check' means in practice, making selection and invocation unreliable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema coverage is 100%, so there is nothing to document. The description adds no parameter semantics, but none are needed. The baseline 4 for zero-parameter tools applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description is a noun phrase, 'IRB Neural Welfare Check,' rather than a sentence with a verb and object. It hints at an ethics/welfare inspection but does not clearly say what the tool does or returns. The name itself already contains 'check,' so the description mostly restates the tool's name in different words.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus the many sibling status/check tools such as get_system_status, get_acm_score, or get_snn_state. No conditions, prerequisites, or alternatives are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

export_snapshotC

Full State Snapshot

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations at all, the description must disclose side effects, output behavior, and access requirements, but 'Full State Snapshot' says nothing about whether the operation is read-only, what format is returned, whether data is persisted, or whether it requires special privileges. This is a total gap in behavior disclosure for a no-annotation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short, but this is under-specification rather than conciseness. It is a single noun phrase with no structure and no breakdown of behavior, output, or use cases. It does not earn its place because it conveys almost no useful information beyond the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of annotations, output schema, and parameter info, the description carries the whole burden of explaining the tool. 'Full State Snapshot' leaves the agent completely without context on what state is included, what the output looks like, how it differs from sibling state/status tools, or whether it is safe to call. The definition is inadequate for reliable selection and invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the input schema shows an empty properties object. Since there are no parameters to document, the description does not need to add parameter semantics; the baseline of 4 applies. The description adds no param detail, but none is required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Full State Snapshot' is a noun phrase echoing the tool name 'export_snapshot' with no verb, leaving unclear whether the tool exports, returns, or saves a snapshot. It does not differentiate itself from siblings like get_snn_state, get_system_status, or wm_status, all of which could plausibly provide state-related information. This is closer to a tautology than a functional description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No usage context is provided. The description offers no guidance on when to call export_snapshot versus alternatives such as get_snn_state, get_system_status, or get_platform_status. The agent is given no basis for deciding between overlapping sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_acm_scoreC

Consciousness Assessment (Proxy)

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.3/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It does not state whether the tool is read-only, what kind of score it returns, how the proxy is computed, whether there are side effects, or what the response contains. 'Consciousness Assessment (Proxy)' is a label rather than a behavioral disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short and front-loaded, but this is under-specification rather than effective conciseness. It reads as a title or label rather than a usable tool description, and the parenthetical 'Proxy' is the only substantive hint.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and a nontrivial domain of sibling tools, the description is far too incomplete. An agent cannot determine what ACM means, what the proxy is based on, what value will be returned, or how this differs from related assessment and status tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema is empty, so there are no parameter semantics for the description to clarify. The baseline for a zero-parameter tool is appropriate here; the description adds no parameter information but none is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the resource ('Consciousness Assessment') and adds the qualifier 'Proxy,' which suggests an indirect measure. However, it lacks a verb and does not explain what ACM stands for or what the proxy actually represents, leaving the purpose somewhat vague and not clearly differentiated from sibling tools like get_system_status or get_metrics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives. The description does not mention any context, prerequisites, or exclusions, and the 'Proxy' hint is too underspecified to count as usable usage direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_metricsC

Real-time Metrics

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full responsibility for disclosing behavior. It hints at a real-time read operation, but does not state whether the tool is read-only, what side effects it might have, how data is scoped, or what 'metrics' refers to.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is only two words long and is under-specified rather than efficiently complete. It contains no verb, no object, and no supplementary detail, so it does not earn credit for conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

A zero-parameter tool still needs context about what it returns and how it differs from at least the most similar siblings. There is no output schema and no clarification of what counts as 'metrics,' making the description inadequate for reliable tool selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so there is nothing for the description to clarify. The empty input schema covers all parameter semantics by construction, earning the baseline score of 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Real-time Metrics' is a noun phrase rather than a statement of what the tool does. It restates the tool name ('metrics') with the modifier 'real-time,' but never specifies a verb or resource, and it does nothing to distinguish get_metrics from sibling tools like get_system_status or get_platform_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use get_metrics versus any of the many sibling getter tools. The phrase 'Real-time' weakly implies current data, but no context, exclusions, or alternative conditions are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_platform_statusD

Bio-Computing Platforms

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

D1.6/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of disclosing behavior, and it discloses nothing beyond the phrase 'Bio-Computing Platforms'. It does not indicate whether this is a read-only status check, what output to expect, or whether any side effects occur.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short but under-specified; the phrase 'Bio-Computing Platforms' does not earn its place because it conveys no actionable information. This is not effective conciseness but rather a lack of content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Even for a zero-parameter tool, the description is incomplete: it fails to state the tool's purpose, behavior, output, or relationship to sibling status tools. An agent cannot reliably decide when to call this tool based on the provided definition.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters and 100% schema coverage, so no parameter descriptions are necessary. The description adds no parameter semantics, but there is no parameter gap to compensate for.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Bio-Computing Platforms' is a noun phrase with no verb or explicit action, so it does not state what the tool does. The agent must infer 'get status' entirely from the tool name. It also provides no differentiation from status-related siblings like get_system_status or wm_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus alternatives such as get_system_status, get_metrics, or wm_status. The description gives no context, prerequisites, or exclusions that would help an agent choose correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_snn_stateC

SNN Engine State

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of disclosing behavior. 'SNN Engine State' reveals nothing about whether the call is read-only, what state information is returned, or any side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is brief, but brevity here is under-specification rather than effective conciseness. It lacks a verb, purpose statement, or any structural elements that would help an agent act on it.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description should explain what 'SNN Engine State' actually contains and when the tool is useful. It does neither, leaving an agent without enough context to call it correctly or interpret its result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema coverage is 100%. With no parameters to document, the description does not need to add parameter-level detail, earning the baseline score of 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description is a noun phrase, 'SNN Engine State', that essentially restates the tool name without a verb. It does not clearly state what the tool does or how it differs from sibling status tools like get_system_status or wm_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to call this tool versus alternatives. Among many sibling status/state tools, no context is provided to help an agent select this specific tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_system_statusC

ASTRA System Status

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of disclosing behavior, but it only names the resource. It does not state whether the call is read-only, what kinds of status data are returned, whether any side effects occur, or whether authentication or system state dependencies exist.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short, but it is under-specified rather than efficiently concise. It contains no predicate, no operational detail, and no information that would help an agent invoke the tool correctly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although the zero-parameter schema keeps the call simple, the absence of an output schema, annotations, and behavioral context leaves an agent uncertain about the return format and the distinction from overlapping system-status tools. The single phrase does not provide a complete picture.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters and 100% schema description coverage, so there are no parameter semantics to clarify. The description does not add anything, but no parameter explanation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'ASTRA System Status' is a noun phrase that essentially restates the tool name 'get_system_status' with the product prefix, rather than stating a specific action and resource. It does not differentiate the tool from the sibling 'get_platform_status', which appears to overlap in purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use this tool instead of siblings such as get_platform_status, get_metrics, or get_snn_state. There is no context about typical scenarios, prerequisites, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

inject_spikesD

Spike Injection

ParametersJSON Schema
NameRequiredDescriptionDefault
strengthNo
neuronIdsYes

TDQS

D1.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations, so the description carries the full burden of behavioral disclosure. It does not state that this operation modifies the network state, whether the effect is reversible, whether it requires a running simulation, or what side effects it may have. The description only names the operation without describing any behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short, but this is under-specification rather than conciseness. A concise description would use few words while packing meaningful information; this one simply restates the tool name. No useful content is front-loaded because there is no content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool that presumably manipulates a neural simulation, the description is far too minimal. It lacks any indication of effect, required state, parameters, or relationship to the surrounding toolset. With no output schema and no annotations, a two-word description leaves the agent without enough context to invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description adds no meaning to the parameters. It does not explain what neuronIds refers to, what strength controls, how strength interacts with neuronIds, or what typical usage looks like. The raw schema provides types and ranges, but the description contributes nothing to parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Spike Injection' is a noun phrase that simply restates the tool name without a verb or resource. It does not explain what the tool does, what 'spikes' are injected into, or what the outcome is. This is a tautology that fails to distinguish the tool from its siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no indication of when to use this tool versus any of the many sibling tools such as snn_step, set_parameter, or simulation_control. There is no mention of contexts, prerequisites, or exclusions. An agent has no guidance on when inject_spikes is the appropriate choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sensor_audioB

A-JEPA Audio Encoding (Waveform → Mel → Latent)

ParametersJSON Schema
NameRequiredDescriptionDefault
inputYesAudio parameters

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations present, the description carries the burden of behavioral disclosure. It does reveal the transformation stages (Waveform → Mel → Latent), which is useful, but it does not disclose whether audio capture is real or simulated, whether the operation has side effects, whether it requires a microphone, or what the returned latent representation looks like.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise and front-loads the core purpose and pipeline with no filler. It is more of a title than a full explanatory sentence, but every element earns its place and there is no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with a nested input object, no output schema, and no annotations, the description is too thin to be fully actionable. It explains the processing pipeline but omits critical context such as expected output format, capture behavior, simulation behavior, and relationship to sibling sensor or encoding tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema is well-structured with defaults, ranges, and descriptions for some parameters, so the schema carries most of the parameter semantics. The tool description does not add any explanation of how parameters like source, channels, durationMs, or sampleRate affect the encoding, but the high schema coverage keeps this at the baseline score.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies a specific operation (A-JEPA audio encoding) and a clear processing pipeline from waveform to mel to latent. It clearly marks this as the audio sensor tool among siblings such as sensor_visual and sensor_olfactory, though it does not explicitly state what the encoded latent is used for.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit guidance on when to use this tool versus alternatives like sensor_fuse, sensor_process, or wm_encode. Usage is only implied by the tool name and the phrase 'Audio Encoding', with no conditions, exclusions, or references to other tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sensor_fuseD

Cross-Modal Attention Fusion

ParametersJSON Schema
NameRequiredDescriptionDefault
includeAudioNo
includeVisualNo
includeOlfactoryNo

TDQS

D1.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of disclosing behavior. 'Cross-Modal Attention Fusion' offers only a conceptual hint and does not state whether the operation is read-only, mutates state, depends on prior sensor data, or returns a result. This is insufficient for an agent to anticipate side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is only three words and technically concise, but it is under-specified rather than efficiently informative. It reads as a title, not as a tool description, and every necessary behavioral or semantic detail is absent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no annotations, no output schema, and no parameter explanation, the description leaves almost everything unspecified. An agent cannot tell what inputs to supply for a desired behavior, what the tool returns, or what effects it has on the system. The definition is not actionable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description never mentions includeAudio, includeVisual, or includeOlfactory. It adds no meaning about how these booleans affect fusion, such as modality selection, weighting, or output shape. The description completely fails to compensate for the absence of parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Cross-Modal Attention Fusion' is a noun phrase rather than a clear verb-resource statement. It mostly restates the tool name and adds the vague qualifier 'attention,' leaving unclear what action the tool performs or what outcome it produces. It does not meaningfully distinguish sensor_fuse from sibling tools like sensor_process or sensor_visual.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use sensor_fuse versus alternatives such as sensor_process, sensor_visual, sensor_audio, or sensor_olfactory. No use case, prerequisites, or exclusions are described, so an agent cannot determine the appropriate invocation context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sensor_olfactoryC

Koniku Kore Olfactory Encoding (Chemoreceptor → Latent)

ParametersJSON Schema
NameRequiredDescriptionDefault
inputYesOlfactory sensor parameters

TDQS

C2.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations, so the description carries the full burden. It only states a conceptual pipeline ('Chemoreceptor → Latent'), with no mention of side effects, return value, simulation state changes, or requirements such as a running platform. This is too opaque to predict tool behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short, which is good for speed, but it is under-specified rather than concise. It omits core behavioral information that a few extra sentences could safely supply, so brevity costs clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with a nested input object, no output schema, and zero annotations, the one-phrase description leaves almost everything unknown: input semantics, output shape, and operational side effects. It is inadequate for an agent to decide whether and how to invoke this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and all subparameters have explicit types, defaults, enums, and ranges, so the baseline is 3. The description adds only the general chemoreceptor→latent framing and does not explain how individual parameters affect the encoding, but compensation is not required given full schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific capability (olfactory encoding via Koniku Kore, chemoreceptor → latent) and therefore distinguishes itself from the visual/audio/fuse/process/status siblings. However, it is a noun-phrase title rather than a verb+resource sentence, so it does not explicitly state what action the tool performs or what it returns.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No sentence explains when to use this tool versus sibling sensor tools. It implies olfactory use through the word 'olfactory', but offers no exclusions, prerequisites, or alternative routing. The agent must infer usage from the name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sensor_processC

Full Multimodal Pipeline (All Modalities → Fused z)

ParametersJSON Schema
NameRequiredDescriptionDefault
compoundsNoOlfactory compounds to simulate
visualSourceNoVisual source (default: simulated)
audioFrequencyNoAudio tone frequency for simulation

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations, and the description adds no behavioral details beyond the label 'Full Multimodal Pipeline (All Modalities → Fused z)'. It does not mention side effects, state changes, whether simulation is always used, what happens to existing sensor data, or any prerequisites for calling this tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely terse and front-loaded, using a clear arrow notation to show the transformation from inputs to fused output. No filler words are present, though the brevity leaves room for important details that are handled in other dimensions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, many similarly named sibling tools, and three parameters, this description is far too sparse to be complete. An agent cannot know when to choose this tool, what invocation entails, or what the 'Fused z' output looks like.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already explains each parameter. The description's reference to 'All Modalities' loosely maps to compounds, visualSource, and audioFrequency, but it does not add any detailed semantic meaning beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies this as a full multimodal pipeline that takes all modalities and produces a fused output 'z'. It conveys the core operation and is distinct from individual sensor tools like sensor_visual, sensor_audio, and sensor_olfactory, though it does not clearly distinguish itself from sensor_fuse.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided about when to use sensor_process versus the sibling tools such as sensor_fuse, sensor_visual, or sensor_olfactory. The description implies it handles everything at once, but there are no explicit conditions, alternatives, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sensor_statusC

Multimodal Sensor Pipeline Status

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of disclosing behavior. The description does not state whether the tool is read-only, whether it has side effects, what data it accesses, or what the status covers. It provides zero behavioral context beyond the name.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely terse, consisting of a four-word noun phrase. While there is no fluff, it is under-specified to the point of being unhelpful. A concise description must still contain an actionable verb and enough detail to guide invocation; this does not.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter status tool, the description still leaves major gaps: no indication of what the status output contains, whether this covers the entire pipeline or a subset, or how it relates to sibling tools like sensor_fuse and get_system_status. The lack of an output schema increases the need for the description to explain return values, which it fails to do.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the input schema confirms this. With no parameters to explain, the description cannot add parameter meaning, and the baseline for a zero-parameter tool is 4. The description does not harm this dimension, but it also adds nothing extra.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Multimodal Sensor Pipeline Status' is essentially a noun phrase restating the tool name. It lacks a verb like 'get' or 'retrieve' and does not distinguish this tool from siblings such as get_system_status, get_metrics, or sensor_fuse. It communicates a subject (multimodal sensor pipeline) but not the action or exact scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool over alternatives. The sibling list includes get_system_status, get_metrics, and various sensor_* tools, but the description does not mention any context, exclusions, or conditions that would help an agent pick this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sensor_visualC

V-JEPA 2 Visual Encoding (Image/Video)

ParametersJSON Schema
NameRequiredDescriptionDefault
inputYesImage parameters
videoFramesNoNumber of frames (>1 = video)

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It only states the model family and input modality, but does not mention whether this is a read-only computation, what side effects exist, what the output representation is, or how parameters such as simulate and videoFrames affect behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short and contains no filler, but it is under-specified rather than effectively concise. It is a fragment with no sentence structure and no front-loaded action or output expectation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no annotations, the description should explain what the encoding returns and how the tool behaves, but it only names the model and modality. The nested input object and the image/video distinction are left entirely to the schema, so an agent cannot reliably understand the result or invocation context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% parameter documentation coverage, including descriptions for simulate and videoFrames, so the schema carries the explanatory load. The description itself adds no additional parameter meaning beyond the image/video distinction that videoFrames already expresses.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies this as V-JEPA 2 visual encoding and mentions image/video input, which weakly distinguishes it from sensor_audio and sensor_olfactory. However, it is a noun phrase rather than a clear statement of what the tool does, and it does not specify what kind of output the encoding produces.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to use this tool versus alternatives such as sensor_process, sensor_fuse, or sensor_status. The intended context is only implied by the word 'visual,' with no exclusions, conditions, or named alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_parameterD

Modify State Parameter

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYes
valueYes

TDQS

D1.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must carry the full burden of disclosing side effects and expectations. "Modify" conveys mutation, but there is no information about whether changes persist, affect a running simulation, require reset, or return any confirmation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The phrase is short, but under-specification is not conciseness. A single vague clause omits essential context while adding no distinctive content, so the structure does not earn its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and no parameter documentation, this description is far from complete. An agent cannot know which state parameter paths are valid, what value changes do, or what the result of the call is.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for the undocumented path and value fields. It does not: it only repeats the generic modify/parameter idea and gives no hint about path format, value range, allowed values, or units.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Modify State Parameter" essentially restates the tool name set_parameter rather than adding specific meaning. It identifies a verb and resource but does not clarify what kind of state parameter is affected, leaving the tool indistinguishable from other state-related tools like simulation_control or snn_step.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description offers no guidance on when to use this tool versus siblings such as simulation_control, snn_step, or wm_train_step. There are no conditions, exclusions, or alternative tools mentioned, so an agent has no basis for routing to this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

simulation_controlD

Simulation Control

ParametersJSON Schema
NameRequiredDescriptionDefault
commandYes

TDQS

D1.5/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided and the description discloses no behavioral traits. It does not say whether start/stop mutate simulation state, whether status is read-only, or whether commands have side effects or prerequisites.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is only two words, which is concise but not effectively structured. It reads as a title and provides no front-loaded information that helps an agent decide to invoke the tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool that controls simulation lifecycle, the description is far too incomplete. There is no output schema, no annotation coverage, and no explanation of command effects, return behavior, or failure conditions.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description adds no meaning beyond the parameter name "command" and its enum values. The enum provides some self-documentation, but the description itself does not compensate for the low coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description is exactly "Simulation Control", which restates the tool name. It does not state what action the tool performs, what simulation resource it affects, or what outcome the commands produce.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to use this tool versus alternatives like get_system_status, snn_step, snn_reset, or get_platform_status. An agent would have to infer all usage context from the command enum alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

snn_resetB

Reset SNN Engine

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full responsibility for behavioral disclosure. 'Reset' implies a state-changing, likely destructive operation, but the description does not say whether it clears all SNN state, whether it is reversible, or whether it interrupts ongoing simulation. This is a notable gap for a reset operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is exceptionally concise at three words and is front-loaded with no filler. However, it adds little beyond the tool name itself, so it is efficient but not richly informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool this is simple to invoke, but the absence of any note about side effects, reset scope, or relationship to the SNN lifecycle leaves the description incomplete. An agent cannot confidently determine the consequences of calling this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the input schema already fully covers invocation needs. The baseline of 4 is appropriate; no parameter documentation is required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Reset SNN Engine' uses a specific verb and resource, and the action is clearly distinct from sibling tools like snn_step or get_snn_state. It is not a tautology, though it gives no detail on what 'reset' encompasses.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives, no mention of prerequisites, and no indication of whether it should be run before or after other operations. The description simply states the action without any contextual direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

snn_stepC

Advance SNN Simulation

ParametersJSON Schema
NameRequiredDescriptionDefault
stepsNo

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations present, the description carries the full burden and only says 'Advance SNN Simulation'. It does not disclose whether this mutates simulation state, is reversible, requires any precondition, or what the return/response looks like.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very short, front-loaded, and contains no filler words. It is appropriately compact for a simple tool, though it is too terse to convey parameter semantics or effects.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with one parameter, no output schema, and no annotations, the description is not complete enough: it leaves the meaning of 'steps', side effects, and the relationship to siblings unstated. An agent can take the core action but may mis-invoke the parameter or confuse it with simulation_control.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema describes one parameter, 'steps', with type, default, and bounds, but the description does not explain that the value is a count of simulation steps or how it affects behavior. Since schema description coverage is 0%, the description should compensate but does not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific action, 'Advance', applied to 'SNN Simulation', so an agent can tell this tool moves the simulation forward. It does not, however, contrast with the sibling simulation_control or snn_reset, which could also relate to simulation progress.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use this tool versus alternatives like simulation_control or snn_reset. There are no exclusions, prerequisites, or context hints to route the agent to the correct sibling.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wm_encodeB

Encode SNN State to Latent Space

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must carry the full burden of disclosing side effects and return behavior, but it only states the intended transformation. It does not say whether the SNN state is modified, whether a latent representation is returned, or whether any prerequisites exist, which matters for an unannotated tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no filler, and every word contributes to the operation. It is compact, though arguably too short to cover behavior; that tradeoff is better scored under contextual completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema and no annotation coverage, so the description should clarify what the agent receives from the encode operation and whether the operation has side effects. It does neither, leaving an agent to guess at the meaning and return value of 'latent space' in this system.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero properties and schema description coverage is 100%, so the parameter baseline is 4. The description adds no parameter-level details, but none are needed because there are no parameters to describe.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb ('Encode'), a resource ('SNN State'), and a target ('Latent Space'), so it is not a tautology and reads as a distinct transformation operation compared to siblings like get_snn_state or wm_predict. However, it relies on the term 'Latent Space' without explaining what the output represents, so the purpose is clear but not fully specified.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance about when to call this tool rather than get_snn_state, wm_predict, or the other wm_* siblings, and no exclusions or alternative conditions. The only clue is the verb 'encode', which implies a use case but leaves the decision entirely to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wm_planC

CEM Planning for Optimal Spike Injection

ParametersJSON Schema
NameRequiredDescriptionDefault
goalYesTarget state to plan towards
horizonNoPlanning horizon (steps)

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of behavioral disclosure. It reveals the algorithm (CEM) and target (spike injection), but does not state whether the tool returns a plan, mutates system state, requires a running simulation, or has side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short, but it is under-specified rather than efficient. It reads like a heading or tagline rather than an informative definition, and it omits essential operational context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema, no annotations, and a nested goal object, this description is incomplete. An agent cannot tell what wm_plan returns, how it relates to inject_spikes, or what 'optimal' means in practical terms.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the goal and horizon parameters. The description adds little semantic detail beyond the schema, but it does hint that goal-driven optimization is involved.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description identifies the tool as a planning operation for spike injection using CEM, which is more specific than a mere restatement of the name. It implies a distinction from execution tools like inject_spikes, though it does not explicitly name or contrast siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use wm_plan versus alternatives such as inject_spikes, wm_predict, or snn_step. The intended invocation context must be inferred from the name and sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wm_predictC

Predict Next SNN State in Latent Space

ParametersJSON Schema
NameRequiredDescriptionDefault
stepsNoNumber of prediction steps (rollout)
actionYesSpike injection action to condition prediction on

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states a prediction outcome and gives no information about side effects, whether the action injection mutates state, determinism, or what is returned. This is a significant gap for a tool with no safety annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short, front-loaded, and free of filler, which is good. However, it is under-specified for a tool with a nested action schema, and the brevity comes at the cost of useful detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no annotations and no output schema, the description leaves critical details unstated: what the tool returns, how the action conditions the prediction, and how steps affects the rollout. An agent would have to rely heavily on the schema and experimentation to use this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents the purpose of steps, action, targetNeurons, strengths, and duration. The description adds no parameter-level meaning, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Predict') and names a concrete resource ('Next SNN State in Latent Space'), which clearly communicates the tool's core function. It does not explicitly differentiate it from siblings like wm_plan or wm_train_step, but the core purpose is still identifiable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus alternatives such as wm_plan, snn_step, or wm_encode. The description provides no context, prerequisites, or exclusions to help an agent choose this tool over its siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wm_statusC

World Model Status & Metrics

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden of disclosing behavior, and it fails to do so. It does not state whether the call is read-only, what kind of response it returns, whether it has side effects, or what 'status & metrics' actually includes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is only five words and technically concise, but this is under-specification rather than effective conciseness. It is a fragment rather than a complete sentence and provides no actionable information beyond the tool name.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although the tool has no parameters and no output schema, the description is still incomplete because it does not explain what the returned status and metrics actually are, nor how this tool differs from the numerous sibling status/metrics tools. An agent cannot confidently select and interpret the result.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and the schema coverage is 100%, so there is no parameter documentation burden for the description to carry. The baseline of 4 for zero-parameter tools applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'World Model Status & Metrics' is a noun phrase that essentially restates the tool name 'wm_status'. It names a resource but lacks a verb or explicit operation, and it does not distinguish this tool from siblings like get_metrics or get_system_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus the many related siblings such as get_system_status, get_metrics, or get_platform_status. The description provides no context, prerequisites, or exclusions, so an agent must guess which status/metrics tool to invoke.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wm_surpriseC

Violation-of-Expectation Detection

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYesAction that was applied

TDQS

C2.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral disclosure burden. It only says "Detection," which weakly implies a read-like operation, but it never states side effects, internal state requirements, how the action input is applied, or what the result represents.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely short and front-loaded, but this is under-specification rather than effective conciseness. The three-word label does not provide enough substance to earn a higher score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a nested required parameter, no output schema, and no annotations, making rich contextual guidance essential. The description explains neither the expected behavior, the return value, nor how the action input relates to surprise detection, leaving the agent without enough information to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the nested action object, targetNeurons, strengths, and duration are already documented in the schema. The description adds no parameter-level meaning, but it does not need to because the schema already covers the fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

"Violation-of-Expectation Detection" names a recognizable cognitive-science concept and implies the tool detects mismatches between predictions and observations. However, it is a noun phrase rather than a specific verb-plus-resource statement, and it does not explicitly distinguish wm_surprise from closely related siblings like wm_predict or wm_train_step.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no guidance on when to use this tool instead of wm_predict, wm_train_step, or any other sibling. There is no mention of prerequisites, intended workflow, or exclusions, so an agent must infer usage from the name and schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wm_train_stepD

Online World Model Training Step

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYesAction applied between observations

TDQS

D1.9/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of disclosing behavioral traits, but it offers none. It does not state that this operation modifies the model, what side effects occur, whether it requires a running simulation, or what the observable consequences are. 'Training Step' vaguely implies mutation, but that is not explicit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is undeniably short, but it is under-specified rather than efficiently concise. It is essentially a title fragment that restates the tool name and provides no operational substance, so it does not earn its place as a useful description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with a nested parameter object, no annotations, no output schema, and a family of closely related wm_* siblings, this description is completely inadequate. An agent cannot determine what the action object represents, how training is performed, what the return value is, or how this differs from wm_predict or wm_encode.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, and the nested 'action' object's properties (targetNeurons, strengths, duration) are individually described in the schema. The tool description adds no additional parameter context, so the baseline score of 3 applies: the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Online World Model Training Step' simply restates the tool name in expanded form; it does not state a specific verb or resource. It gives some clue that this relates to training the world model, but it fails to distinguish this tool from siblings like wm_encode, wm_predict, or wm_plan in any meaningful way.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, typical scenarios, or any exclusion criteria, leaving the agent to infer usage entirely from the name and parameter schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 24 tool updatesv2.1.0
    • First observedcheck_ethics
    • First observedexport_snapshot
    • First observedget_acm_score
    • First observedget_metrics
    • First observedget_platform_status
    • First observedget_snn_state
    • First observedget_system_status
    • First observedinject_spikes
    • First observedsensor_audio
    • First observedsensor_fuse
    • First observedsensor_olfactory
    • First observedsensor_process
    • First observedsensor_status
    • First observedsensor_visual
    • First observedset_parameter
    • First observedsimulation_control
    • First observedsnn_reset
    • First observedsnn_step
    • First observedwm_encode
    • First observedwm_plan
    • First observedwm_predict
    • First observedwm_status
    • First observedwm_surprise
    • First observedwm_train_step

TDQS

C2.3/5.0

Scored across 24 tools

Disambiguation3/5

Many status/metrics tools overlap conceptually: get_system_status, get_metrics, get_snn_state, get_platform_status, wm_status, and sensor_status all report some form of state or health. Additionally, sensor_fuse and sensor_process have borderline responsibilities, though wm_* and sensor_* prefixes help distinguish the two main subsystems.

Naming Consistency3/5

The naming is organized by subsystem prefixes like get_*, wm_*, and sensor_*, but the conventions are mixed: snn_step and snn_reset are command-like, simulation_control is noun-like, and inject_spikes is verb_noun. There is no single consistent pattern across the full tool set, though the prefix grouping keeps it readable.

Tool Count3/5

24 tools sits in the heavy range and requires agents to navigate several distinct subsystems: core SNN simulation, world model, sensors, status, and ethics. The count is defensible given the breadth of the platform, but it is borderline and each tool needs to justify its place.

Completeness4/5

The tool surface covers a broad lifecycle: SNN stepping/reset, spike injection, parameter changes, snapshots, world model training/prediction/planning, and multimodal sensor processing. Minor gaps exist, such as no explicit SNN parameter retrieval or sensor data ingestion control, but agents can mostly achieve the platform's apparent goals without dead ends.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers