Skip to content
Agentmart
Submit a tool

MNE-MCP

MNE-Python neurophysiology analysis (EEG, MEG, sEEG, ECoG, fNIRS).

Connector by Exekiel179 · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)★ 12
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/exekiel179-mne-mcp

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

MNE-Python neurophysiology analysis (EEG, MEG, sEEG, ECoG, fNIRS) via the Model Context Protocol

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list, install config and code. Checked Oct 25, 2026.

Runs code on install

Its package runs an install script (such as npm postinstall or setup.py code) as soon as you install it, before any tool is called. Read the script first.

Tools
16 read · 7 write · 5 delete · 18 not yet classified
Secrets
None asked for
Install scripts
Runs code on install
Runs as
Python package

Tools by what they do 46

Read from the source code; the running server may list different tools.

Read 16 · Look things up without changing anything.

  • mne_check_status
  • mne_compute_noise_cov
  • mne_cpp_check_status
  • mne_cpp_evoked_summary
  • mne_cpp_get_help
  • mne_cpp_inspect_fiff
  • mne_cpp_read_metadata
  • mne_describe
  • mne_events_from_annotations
  • mne_find_events
  • mne_get_config
  • mne_get_info
Show 4 more tools
  • mne_list_files
  • mne_plot_source_estimate
  • mne_session_info
  • mne_tfr_morlet

Write 7 · Create, change, send or run things.

  • mne_apply_inverse
  • mne_make_epochs
  • mne_make_forward
  • mne_mark_bad_channels
  • mne_save
  • mne_set_montage
  • mne_set_reference

Delete 5 · Delete, drop, revoke or wipe things.

  • mne_apply_ica
  • mne_compute_connectivity
  • mne_compute_tfr
  • mne_reset_session
  • mne_run_code

Not yet classified 18 · We could not tell from the name and description.

  • mne_average_evoked
  • mne_connectivity
  • mne_crop
  • mne_decode
  • mne_decoding_group_test
  • mne_filter
  • mne_fit_ica
  • mne_interpolate_bads
  • mne_load_raw
  • mne_plot_epochs_image
  • mne_plot_evoked
  • mne_plot_ica_components
Show 6 more tools
  • mne_plot_ica_sources
  • mne_plot_psd
  • mne_plot_raw
  • mne_plot_sensors
  • mne_plot_topomap
  • mne_resample

Network hosts it talks to 2

  • github.com · found in code
  • opencode.ai · found in code

Files it touches

  • Your home directory (~)
  • F:\\MCP\\MNE-MCP\\tmp\\brainbench-runs\\full-eegmat-isolated-20260930
  • Any path the agent passes to its tools

Tools (46)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • mne_apply_ica

    Remove ICA components from an instrument in place. exclude = comma-separated component indices to drop (e.g. '0,3'); if omitted, uses the ICA object's current exclude list.

  • mne_apply_inverse

    Estimate cortical sources from an Evoked using a forward model and noise covariance. method: 'dSPM' (default), 'MNE', 'sLORETA', 'eLORETA'. Stores the source estimate (stc) and reports the peak activation time. Pair with mne_make_forward + mne_compute_noise_cov.

  • mne_average_evoked

    Average Epochs into an Evoked (ERP/ERF) response. condition = an event_id name to average just that condition (else averages all). Stored under evoked_name.

  • mne_check_status

    Check MNE MCP capabilities: MNE-Python version, scikit-learn (needed for ICA), numpy/scipy/matplotlib versions, and runtime directories. Call this first.

  • mne_compute_connectivitycan change or delete data

    Bivariate across-trial connectivity with a params JSON object: multiple bands, ordered channel-name pairs, picks, epoch-relative time window, multitaper/fourier/cwt_morlet estimation and smoothing/cycles. Preserves signed, directed and complex values. Stores an MNE Connectivity object; optional first-30-edge heatmap (CWT time mean, complex magnitude only for display). Requires mne-connectivity. Not Granger/PAC.

  • mne_compute_noise_cov

    Compute a noise covariance matrix from the Epochs baseline (data up to tmax seconds, default 0). Needed before building an inverse operator for source localization.

  • mne_compute_tfrcan change or delete data

    Compute Morlet or multitaper Epochs power with explicit frequencies, scalar/per-frequency n_cycles, channel picks, decimation, trial retention, optional ITC and power baseline normalization. Pass a params JSON object. Averaged trial power is total power, not strictly induced power. ITC requires average=true. Returns output names, shape, optional figure paths and reproducible code. Input epochs are unchanged.

  • mne_connectivity

    Spectral connectivity between channels over Epochs in a frequency band. method: 'coh', 'plv', 'wpli', 'pli', 'imcoh', etc. Returns an ordered-edge heatmap without forcing symmetry. Use mne_compute_connectivity for multi-band, channel-pair and estimator parameters. Requires mne-connectivity.

  • mne_cpp_check_statusread-only

    Verify native executables and version; report missing installation without installing anything.

  • mne_cpp_evoked_summaryread-only

    Read native evoked dataset counts, nave, time range and channel types; not statistical analysis.

  • mne_cpp_get_helpread-only

    Read installed official help. Only the two allowlisted native inspection tools can be executed.

  • mne_cpp_inspect_fiffread-only

    Inspect FIFF structure with native MNE-CPP; blocks_only avoids detailed metadata by default.

  • mne_cpp_read_metadataread-only

    Read sampling and Nyquist frequency via native FIFF tags; not a signal quality assessment.

  • mne_crop

    Crop a Raw/Epochs/Evoked object to the time window [tmin, tmax] seconds, in place.

  • mne_decode

    Time-resolved decoding (MVPA): train a classifier at each time point to discriminate two conditions, with cross-validation. cond_a/cond_b are event_id names (e.g. 'target','standard'). Supports stratified, stratified_group or leave_one_group_out CV. groups must align with ALL retained input epochs before condition filtering. Saves mean scores under name, per-fold scores under name_folds and split diagnostics under name_details. method='sliding' returns (time,), 'generalizing' returns (train_time, test_time). Optional tmin/tmax crop a copy in seconds. C>0, class_weight=null|'balanced' and max_i…

Show 31 more tools
  • mne_decoding_group_test

    Group-level sign-flip inference on mne_decode mean scores, one per independent subject. Requires score_names, unique subject_ids, independent_subjects=true and explicit null_value. Never pass CV folds or repeated runs as subjects. Supports ROC AUC/balanced accuracy, matching time grids and methods. max_t: two-sided pointwise FWER across the whole curve/matrix; cluster: cluster-mass FWER with time or train-time/test-time lattice adjacency. Requires symmetric subject effects under the null. Not single-subject label shuffling or population prevalence. Stores statistic, corrected p values or clust…

  • mne_describe

    Show a detailed summary of one named session object (channels, sfreq, montage, bads, etc.).

  • mne_events_from_annotations

    Convert a Raw object's annotations into an events array + event_id map (for EDF/BrainVision/EEGLAB data).

  • mne_filter

    Band-pass / high-pass / low-pass and/or notch filter a Raw/Epochs/Evoked object in place. l_freq=high-pass edge, h_freq=low-pass edge (either may be null), notch=line-noise frequency (e.g. 50 or 60). picks optional ('eeg', 'meg', or null).

  • mne_find_events

    Find stimulus/trigger events on a stim channel of a Raw object. Stores them under events_name.

  • mne_fit_ica

    Fit Independent Component Analysis on a (preferably 1 Hz high-pass filtered) Raw/Epochs object for artifact removal. n_components can be an int, a float (variance fraction), or null. method: 'fastica' (default), 'infomax', 'picard'. Stored under ica_name (default 'ica'). Requires scikit-learn.

  • mne_get_config

    Show the configured default analysis parameters (line frequency, default montage, filter band, rejection threshold, ICA method/components, epoch window, dirs, timeout) that the structured tools fall back to when a parameter is omitted. Users change these by running `mne-mcp configure` in a terminal.

  • mne_get_info

    Show the full channel list and measurement info for a named session object.

  • mne_interpolate_bads

    Interpolate currently-marked bad channels using spherical splines (requires a montage).

  • mne_list_files

    List neurophysiology data files (.fif, .edf, .bdf, .vhdr, .set, .cnt, .egi/.mff, .ds, .snirf, …) under a directory. Defaults to MNE_MCP_DATA_DIR / current dir. Optionally pass a glob pattern.

  • mne_load_raw

    Load a raw recording from disk into the session. Auto-detects the format by extension (FIF/EDF/BDF/BrainVision/EEGLAB/CNT/EGI/…). Stores it under `name` (default `raw`). Set preload=False for very large files.

  • mne_make_epochs

    Segment a Raw object into Epochs around events. tmin/tmax in seconds relative to the event; baseline 'default' = (None, 0); event_id like 'target:1,standard:2' to name/select conditions; reject_eeg = peak-to-peak EEG rejection threshold in volts (e.g. 100e-6). Prefer JSON event_id={label: code} and baseline=[start, end] or null; legacy strings remain supported. reject/flat map channel types to SI thresholds; reject={} disables configured rejection. Do not combine reject with reject_eeg. Stored under epochs_name.

  • mne_make_forward

    Build a template-head (fsaverage) EEG forward model for the named object's montage. Downloads the fsaverage template once (~ tens of MB). Use for EEG source localization without an individual MRI. Stored under fwd_name.

  • mne_mark_bad_channels

    Mark channels as bad (comma-separated names, e.g. 'Fp1,T7'). By default appends to existing bads; set replace=true to overwrite.

  • mne_plot_epochs_image

    Plot an ERP image (epochs × time heatmap) for an Epochs object. Returns PNG path(s).

  • mne_plot_evoked

    Plot an Evoked response. style: 'joint' (butterfly + topomaps, default), 'topo', or 'butterfly'. Returns PNG path.

  • mne_plot_ica_components

    Plot ICA component scalp topographies (to identify eye/heart/muscle artifacts). Returns PNG path(s).

  • mne_plot_ica_sources

    Plot ICA component time courses for an instrument (raw/epochs). Returns a PNG path.

  • mne_plot_psd

    Plot the power spectral density of a Raw/Epochs/Evoked object. Returns a PNG path.

  • mne_plot_raw

    Plot raw signal traces (a window of channels over time). Returns a PNG path.

  • mne_plot_sensors

    Plot the sensor/electrode layout (kind='topomap' 2D or '3d'). Returns a PNG path.

  • mne_plot_source_estimate

    Render a source estimate (stc) as a cortical activation map (PNG) at its peak time or a given time. hemi: 'both' / 'lh' / 'rh'. Requires PyVista with off-screen rendering; if 3D rendering is unavailable the estimate is still computed and can be inspected via mne_run_code.

  • mne_plot_topomap

    Plot scalp topographies of an Evoked at given times. times='auto', 'peaks', or comma-separated seconds (e.g. '0.1,0.2,0.3'). Returns PNG path.

  • mne_resample

    Resample a Raw/Epochs object to a new sampling frequency (Hz), in place.

  • mne_reset_session

    Clear all loaded objects and figures from the session, starting fresh. Irreversible.

  • mne_run_code

    Execute arbitrary Python/MNE code in the persistent session namespace. Pre-bound names: `mne`, `np`, `pd`, `plt`, plus every object you have loaded (e.g. `raw`, `epochs`, `evoked`, `ica`). Like a notebook cell: the value of a final expression is returned, stdout is captured, and any matplotlib figures are saved as PNG (paths returned). Use this for anything the structured tools do not cover.

  • mne_save

    Save a session object to disk. MNE naming rules: Raw → '*_raw.fif', Epochs → '*-epo.fif', Evoked → '*-ave.fif'. Other formats follow the object's .save() support.

  • mne_session_info

    List every object currently held in the persistent analysis session (raw recordings, epochs, evoked, ICA, events, arrays) with a one-line summary. Use this to see what is loaded before operating on it.

  • mne_set_montage

    Apply a standard electrode montage (e.g. 'standard_1020', 'standard_1005', 'biosemi64', 'GSN-HydroCel-128') to set channel positions. Needed before topographic plots and interpolation. If montage is omitted, uses the configured default (set via `mne-mcp configure`).

  • mne_set_reference

    Set the EEG reference. Use 'average' for average reference, 'REST', or a comma-separated list of channel names (e.g. 'TP9,TP10').

  • mne_tfr_morlet

    Compute Morlet-wavelet time-frequency power on Epochs and plot it. fmin/fmax = frequency range (Hz), n_freqs = number of frequencies. Stored under tfr_name. Returns PNG path.

Signals

Stars
12
Forks
1
Open issues
1
Weekly downloads
82
Last commit
Oct 14, 2026 (15 days ago)
Last release
Sep 21, 2026 (1 month ago)
Last package publish
Sep 21, 2026 (1 month ago)

From GitHub (fetched Oct 24, 2026) and the package registry.

Details

Registry name
io.github.Exekiel179/mne-mcp
Version
0.2.2
Auth
No auth
Packages
pypi mne-mcp
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026
Cite this page

MNE-MCP. Agent Mart. https://agentmart.dev/connectors/exekiel179-mne-mcp (last updated 2026-10-24)