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.

πŸ†• v2.5 β€” Active-inference second-order loop with principled halting

ASTRA v2.5 makes the self-evidencing loop genuinely principled. A native discrete active-inference core (active-inference.ts) computes the real variational free energy F and expected free energy G(Ο€) = βˆ’pragmatic βˆ’ epistemic, and learns its generative model online (Dirichlet A/B) β€” the true self-evidencing organ. The recursive loop now halts only when free energy has settled AND realized task quality is high (sustained over a patience window), fixing the v2.4 flaw where input stationarity alone falsely declared satisfaction: a mediocre fixed point is now correctly refused. A verified NumPy reference (python/second_order/active_inference_loop.py) cross-checks the math. New/updated tools: tcai_active_inference, tcai_convergence, tcai_cycle { stopWhenSatisfied }. See SECOND-ORDER-LOOP-INTEGRATION.md.

Related MCP server: ASTRA β€” Unified Research Lab + MCP Server

πŸ†• v2.2 β€” the_consciousness_ai (ACM) Integration

ASTRA v2.2 integrates tlcdv/the_consciousness_ai β€” the Artificial Consciousness Module research codebase β€” at two levels:

  • Native TypeScript port (src/engine/tcai/): Global Neuronal Workspace with sigmoid ignition & reverberation, Kuramoto/AKOrN oscillatory binding, PAD emotional processing & reward shaping, attention-gated emotional memory, self-representation core + attention schema, and a metrics suite (GNW Β· Effective Information Β· Ξ¦Μƒ-RIIU) β€” all fed live from the SNN/world-model state and exposed as 8 new MCP tools (tcai_cycle, tcai_workspace_state, tcai_emotion_appraise, tcai_memory_store, tcai_memory_retrieve, tcai_self_model, tcai_metrics, tcai_reset).

  • Full vendored Python codebase (python/the_consciousness_ai/, 215 files): the complete upstream ACM project for reference and PyTorch-based reproduction.

See TCAI-INTEGRATION.md for the complete Python β†’ TypeScript mapping and architecture coupling. All consciousness-related metrics remain computational proxies, not measurements.

πŸ†• v2.2 β€” FinalSpark NeuroPlatform v2 Integration

ASTRA v2.2 also integrates the FinalSpark NeuroPlatform v2 wetware control API β€” the closed-loop interface to living neural organoids on a 128-electrode MEA β€” at two levels:

  • Native TypeScript port + biophysical simulator (src/engine/neuroplatform.ts): faithful port of the NeuroPlatform controller surface (StimParam with charge-balance checking, IntanController, TriggerController, DatabaseController, CameraController) backed by a seeded OrganoidMEA model β€” exposed as 9 new MCP tools (np_status, np_configure_stim, np_send_trigger, np_count_spikes, np_query_spike_count, np_query_spike_events, np_query_triggers, np_camera_capture, np_closed_loop). The MEA's 128 electrodes couple one-to-one with the ASTRA SNN's 128 neurons.

  • Live Python bridge (python/neuroplatform/astra_np_bridge.py): runs a homeostatic closed loop against the physical platform via the genuine neuroplatformv2 SDK, streaming couplings to ASTRA over JSON-RPC.

  • Standalone dashboard (dashboard/ASTRA-NeuroPlatform-Dashboard.html): live MEA raster, spike scope, StimParam editor with charge-balance readout, trigger generator and closed-loop telemetry.

See NEUROPLATFORM-INTEGRATION.md for the complete API β†’ TypeScript mapping. With no hardware attached the server runs in simulate mode (deterministic biophysical model), not living-tissue measurements.

FinalSpark (800K neurons) ──┐
Cortical Labs CL1 ──────────┼─→ Spike Encoders β†’ SNN (LIF+STDP, 128 neurons) β†’ ACM Proxies
Koniku Kore β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜         β”‚                    β”‚
                                      β”‚              β”Œβ”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”
                                      │              │  Φ̃  GW̃  PAD̃  │
                                      β”‚              β””β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜
                                      β”œβ”€β†’ TCAI/ACM Layer (GNW Β· AKOrN Β· PAD Β· Ξ¦Μƒ-RIIU Β· EI)
                                      β”œβ”€β†’ NeuroPlatform v2 Bridge (MEA ↔ SNN Β· StimParam Β· closed loop)
                                      β”œβ”€β†’ Ethics IRB Monitor (mode-aware)
                                      └─→ MCP Server (49 tools Β· 11 resources Β· 8 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


Quick Start

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

# 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 (41)

All tools declare MCP annotations (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) and human-readable titles. Core tools below; see TCAI-INTEGRATION.md for the 8 tcai_* tools and NEUROPLATFORM-INTEGRATION.md for the 9 np_* tools.

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

tcai_* (8)

ACM consciousness cycle, workspace, emotion, memory, self-model, metrics, reset

mixed β€” see TCAI guide

np_* (9)

NeuroPlatform v2: status, stim config, triggers, spike queries, camera, closed loop

mixed β€” see NeuroPlatform guide

MCP Resources (10)

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

astra://tcai/state

TCAI/ACM workspace, emotion, self-model & metrics

astra://neuroplatform/state

NeuroPlatform bridge state (MEA activity, viability, coupling)

MCP Prompts (7)

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

Prompt

Description

system-health-report

Orchestrates multiple 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

tcai-consciousness-cycle

Guided ACM cycle: specialists β†’ binding β†’ ignition β†’ broadcast β†’ qualia β†’ metrics

neuroplatform-experiment

Guided closed-loop protocol: read MEA β†’ configure charge-balanced stim β†’ trigger β†’ observe


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 (49 tools + 8 prompts + 11 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)
β”‚   β”œβ”€β”€ server-tcai-tools.ts  # TCAI/ACM tools (16 tools + 2 resources + 2 prompts incl. second-order loop + active-inference halting)
β”‚   β”œβ”€β”€ server-neuroplatform-tools.ts # NeuroPlatform v2 tools (9 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
β”‚   β”œβ”€β”€ neuroplatform.ts      # FinalSpark NeuroPlatform v2 port + OrganoidMEA simulator
β”‚   └── 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
β”œβ”€β”€ tcai.test.ts          # TCAI/ACM: binding, GNW, memory, emotion, self-model, metrics
β”œβ”€β”€ neuroplatform.test.ts # NeuroPlatform: StimParam, OrganoidMEA, controllers, bridge
└── 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

# TCAI / NeuroPlatform suites only
npm run test:tcai
npm run test:np

# MCP Inspector
npm run inspect

Full suite: 216/216 passing (188 prior + 28 second-order loop / active-inference), 0 TypeScript errors (strict, Node16 ESM).

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

ASTRA-Unified-ResearchLab-MCP-v2.5

Available Tools

49 tools
check_ethicsC

IRB Neural Welfare Check

Inputs: no named parameters.

export_snapshotC

Full State Snapshot

Inputs: no named parameters.

get_acm_scoreC

Consciousness Assessment (Proxy)

Inputs: no named parameters.

get_metricsC

Real-time Metrics

Inputs: no named parameters.

get_platform_statusD

Bio-Computing Platforms

Inputs: no named parameters.

get_snn_stateC

SNN Engine State

Inputs: no named parameters.

get_system_statusC

ASTRA System Status

Inputs: no named parameters.

inject_spikesD

Spike Injection

Inputs: neuronIds (required), strength.

np_camera_captureC

NeuroPlatform v2 β€” Last MEA camera capture (descriptor + viability)

Inputs: mea.

np_closed_loopC

NeuroPlatform v2 β€” Closed loop: read organoid β†’ couple to ASTRA fusion/ROS/ethics, optionally drive the SNN

Inputs: drive_snn, window_ms, couple_ethics, drive_strength.

np_configure_stimB

NeuroPlatform v2 β€” Define, validate & upload a StimParam (charge-balanced biphasic stimulation)

Inputs: index, enable, nb_pulse, polarity, +7 more.

np_count_spikesC

NeuroPlatform v2 β€” Closed-loop _count_spike: spikes per electrode over an N-ms window

Inputs: top_k, window_ms.

np_query_spike_countB

NeuroPlatform v2 DB β€” SpikeCountQuery: spikes/minute per electrode over a time window

Inputs: fsname, window_sec, nonzero_only.

np_query_spike_eventsC

NeuroPlatform v2 DB β€” SpikeEventQuery: individual spike timings over a window

Inputs: limit, fsname, window_sec.

np_query_triggersC

NeuroPlatform v2 DB β€” TriggersQuery: triggers sent to the organoid over a window

Inputs: dedup, window_sec.

np_send_triggerC

NeuroPlatform v2 β€” Fire trigger(s): execute uploaded StimParams via a 16-bit trigger array

Inputs: triggers (required), repeats.

np_statusC

NeuroPlatform v2 β€” Platform & Controller Status

Inputs: no named parameters.

sensor_audioB

A-JEPA Audio Encoding (Waveform β†’ Mel β†’ Latent)

Inputs: input (required).

sensor_fuseD

Cross-Modal Attention Fusion

Inputs: includeAudio, includeVisual, includeOlfactory.

sensor_olfactoryC

Koniku Kore Olfactory Encoding (Chemoreceptor β†’ Latent)

Inputs: input (required).

sensor_processC

Full Multimodal Pipeline (All Modalities β†’ Fused z)

Inputs: compounds, visualSource, audioFrequency.

sensor_statusC

Multimodal Sensor Pipeline Status

Inputs: no named parameters.

sensor_visualC

V-JEPA 2 Visual Encoding (Image/Video)

Inputs: input (required), videoFrames.

set_parameterD

Modify State Parameter

Inputs: path (required), value (required).

simulation_controlD

Simulation Control

Inputs: command (required).

snn_resetB

Reset SNN Engine

Inputs: no named parameters.

snn_stepC

Advance SNN Simulation

Inputs: steps.

tcai_active_inferenceA

Active-inference core telemetry (v2.5): the REAL variational free energy F (surprise), expected free energy G(Ο€) decomposed into pragmatic + epistemic value, the realized task quality, the model entropy, and the Dirichlet-learned action. This is the principled quantity the halting criterion thresholds on β€” not a heuristic correlate (Da Costa et al. 2020; Legros 2026 Β§4.3).

Inputs: no named parameters.

tcai_capability_modelA

Agency capability model (DirectExperienceLearner port): action β†’ expected-valence map (EMA). Query expected outcome of an action, or list the learned capability table.

Inputs: action.

tcai_convergenceA

Inspect or configure the recursive double-loop halting criterion (v2.5). With no arguments, returns the current satisfaction state and active thresholds. With arguments, updates them. The loop halts only when variational free energy has settled (|Ξ”F| ≀ epsFreeEnergy) AND realized task quality is high (β‰₯ minTaskQuality) AND epistemic value is low, sustained over patience cycles β€” stationarity alone is insufficient (Legros 2026 Β§2.2/Β§4.3).

Inputs: patience, maxEpistemic, epsFreeEnergy, minTaskQuality.

tcai_curiosityB

Intrinsic-reward / curiosity (RNDCuriosity port): prediction error between a frozen random target and an online predictor on a representation vector. High error = novelty = exploration drive (EFE epistemic value proxy, Legros 2026 Β§4.1). Defaults to the current GNW broadcast.

Inputs: embedding.

tcai_cycleA

Run one or more ACM cycles (the_consciousness_ai port): SNN signals β†’ AKOrN binding β†’ GNW ignition β†’ qualia β†’ emotion β†’ reward shaping β†’ emotional memory β†’ self-model β†’ second-order loop. Set stopWhenSatisfied to halt early once the recursive loop reaches a sustained satisfactory (converged, low-curiosity, stable) regime.

Inputs: cycles, threat, novelty, narrative, +9 more.

tcai_developmentA

Longitudinal developmental tracking (DevelopmentTracker port): coarse stage (nascent→reactive→integrative→reflective) from the running composite-proxy level, stability and meta-representation score. Second-order self-monitoring over time.

Inputs: no named parameters.

tcai_emotion_appraiseB

Appraise raw signals into PAD emotional space (Mehrabian) with inertia

Inputs: threat, novelty, rewardSignal, controllability.

tcai_memory_retrieveB

Retrieve memories by blended cosine similarity, PAD congruence and salience

Inputs: topK, arousal, valence, dominance, +1 more.

tcai_memory_storeB

Store an experience in emotional memory (attention-gated, salience-indexed)

Inputs: narrative (required), arousal, valence, dominance, +2 more.

tcai_metaconsciousnessA

Meta-consciousness composite (MetaconsciousnessEvaluator port): weighted score over confidence calibration, learning awareness, self-continuity and error monitoring. PROXY of meta-representation capacity, not a measurement.

Inputs: no named parameters.

tcai_meta_learningA

Meta-learning state (MetaLearningModule port): learning velocity from RPE-variance dynamics. velocity>0 β‡’ converging; noveltySpike β‡’ novel/confusing regime. Optionally inject an RPE sample.

Inputs: rpe.

tcai_metricsC

Consciousness proxy report: GNW metrics, Effective Information, Ξ¦Μƒ-RIIU, composite score

Inputs: no named parameters.

tcai_resetA

Reset the TCAI consciousness system (workspace, memory, emotion, metrics)

Inputs: no named parameters.

tcai_second_orderB

Second-order (self-evidencing) loop snapshot: meta-learning velocity, RND curiosity (epistemic value), capability model, meta-consciousness score, developmental stage. The system observing and correcting its own predictive capacity (Legros 2026 Β§3.2).

Inputs: no named parameters.

tcai_self_modelB

Self-representation state: interoception, epistemic model, temporal continuity, attention schema

Inputs: no named parameters.

tcai_workspace_stateC

Global Neuronal Workspace state: ignition, focus, qualia, sync R, unity metrics, access history

Inputs: no named parameters.

wm_encodeB

Encode SNN State to Latent Space

Inputs: no named parameters.

wm_planC

CEM Planning for Optimal Spike Injection

Inputs: goal (required), horizon.

wm_predictC

Predict Next SNN State in Latent Space

Inputs: action (required), steps.

wm_statusC

World Model Status & Metrics

Inputs: no named parameters.

wm_surpriseC

Violation-of-Expectation Detection

Inputs: action (required).

wm_train_stepD

Online World Model Training Step

Inputs: action (required).

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    C2.3/5.0

    Scored across 49 tools

    Disambiguation4/5

    Tools are grouped by domain (tcai, wm, sensor, snn, np) and each description specifies a distinct subsystem or function. Some overlap exists among reporting tools (e.g., tcai_metrics, tcai_second_order, tcai_metaconsciousness), but their detailed descriptions clarify differences. Overall, an agent can usually select the right tool with careful reading.

    Naming Consistency2/5

    Naming conventions are inconsistent. Some tools use verb-first patterns (get_system_status, set_parameter, export_snapshot), others use domain-prefix + noun (np_status, sensor_status, tcai_self_model), and still others use domain-prefix + verb (wm_encode, tcai_reset, sensor_fuse). While the domain prefixes help organize tools, the lack of a uniform verb_noun pattern makes the set feel chaotic.

    Tool Count2/5

    With 49 tools, the server feels overloaded. The broad scope (SNN simulation, world model, sensors, consciousness metrics, organoid control) justifies a larger toolkit, but the sheer number likely overwhelms agents and increases selection errors. A more streamlined set or grouped sub-servers would be more appropriate.

    Completeness4/5

    The tool surface covers the major subsystems comprehensively: sensor encoding and fusion, world model training/prediction/planning, SNN stepping and reset, consciousness cycle and metacognition, memory storage/retrieval, and neuroplatform stimulation/queries. Minor gaps exist (e.g., no explicit raw SNN waveform export, no tool to delete memories), but agents can accomplish core workflows.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers