Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
portNoThe port for connecting to the EEG device (e.g. /dev/tty.usbmodem1101)

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_devicesA

List EEG devices/URIs you can connect to.

connectB

Connect to an EEG device and start streaming. Default is the synthetic brain.

disconnectA

Disconnect from the current EEG device.

get_brain_stateA

Get the current brain state. Returns heuristic band-power proxy metrics (focus, calm, attention, engagement, fatigue, meditation), band powers, and signal quality. Each reading carries confidence (0..1), per-metric metric_confidence, and a status ('ok'/'warming_up'/'unreliable') — weight the metrics by these and do not interpret an unreliable/low-confidence reading. Call get_metric_definitions to learn what each metric means.

get_band_powersB

Get absolute and relative EEG band powers (delta, theta, alpha, beta, gamma).

get_signal_qualityA

Get electrode signal quality, reading confidence, and detected artifacts (blink, railing, emg, flatline).

get_metric_definitionsA

Explain each brain metric: its exact formula, the literature it draws on (with DOIs under references), and an honest caveat. Call this to learn what focus/calm/attention/engagement/fatigue/meditation actually measure and how much to trust them — they are heuristic proxies, not validated cognitive measurements. Cite a reference only for its role: a caveat source contests the metric and must never be cited as support.

get_pipeline_limitationsA

What this pipeline can and cannot do: the exact analysis method (Welch PSD window, band edges, filters), a plain-English list of limitations (it averages transients out, is not clinical/qEEG, metrics are heuristic proxies, no source localization/connectivity), and its intended use. Read this before drawing any conclusion from the metrics — especially do not present them as clinical, diagnostic, or event-level (ERP/spindle) results.

calibrateC

Capture a baseline so focus/calm/etc. are personalized to the wearer.

mark_eventC

Annotate the live stream with a labeled event marker.

stream_summaryB

Current brain-state snapshot. (The seconds window for rolling stats arrives in a later phase; this currently returns the live reading.)

recordB

Record the live stream for N seconds to a file (npz/csv/edf).

start_neurofeedbackC

Begin a neurofeedback session rewarding time spent above a metric target.

get_neurofeedback_scoreA

Sample the current neurofeedback score (in-zone now + cumulative %).

Prompts

Interactive templates invoked by user choice

NameDescription
interpret_brain_statePrompt template: ask the model to interpret the current brain state.

Resources

Contextual data attached and managed by the client

NameDescription
brain_state_resourceLive brain-state snapshot (JSON), same shape as get_brain_state.
brain_device_resourceDiscoverable devices and registered URI schemes (JSON).
brain_citations_resourceMachine-readable citations (JSON): DOI-keyed references for the analysis method and each metric, the software's own citation and license, and data provenance (bci-mcp bundles no datasets).

TDQS

B3.4/5.0

Scored across 14 tools

Disambiguation3/5

Most tools target distinct actions, but get_brain_state, get_band_powers, get_signal_quality, and stream_summary overlap significantly because get_brain_state already bundles band powers, metrics, and signal quality. stream_summary is especially vague and its description admits it currently returns only the live reading, making it hard to distinguish from get_brain_state.

Naming Consistency4/5

The set mostly follows a predictable snake_case pattern with clear verb/noun forms such as list_devices, get_brain_state, mark_event, and start_neurofeedback. Minor deviations are bare verbs like connect, disconnect, record, and calibrate, plus the noun-like stream_summary, but these remain readable and conventional for session lifecycle actions.

Tool Count5/5

Fourteen tools is well-scoped for an EEG/BCI server that needs device lifecycle, signal inspection, calibration, events, recording, and neurofeedback. Each tool generally corresponds to a meaningful part of the live BCI workflow without excessive surface area.

Completeness4/5

The surface covers the core lifecycle: device discovery, connect/disconnect, signal and brain-state reads, calibration, event marking, recording, and neurofeedback start/score. Minor gaps remain, notably no explicit stop_neurofeedback or clear session-stop operation beyond disconnect, and marker/event retrieval is absent.

Maintenance

ActivityMaintained
ResponsivenessSlow