MNE-MCP
MNE-Python neurophysiology analysis (EEG, MEG, sEEG, ECoG, fNIRS).
Connector by Exekiel179 · GitHub account verified by the MCP Registry
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.
About
Reviews
Write a reviewNo 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_statusmne_compute_noise_covmne_cpp_check_statusmne_cpp_evoked_summarymne_cpp_get_helpmne_cpp_inspect_fiffmne_cpp_read_metadatamne_describemne_events_from_annotationsmne_find_eventsmne_get_configmne_get_info
Show 4 more tools
mne_list_filesmne_plot_source_estimatemne_session_infomne_tfr_morlet
Write 7 · Create, change, send or run things.
mne_apply_inversemne_make_epochsmne_make_forwardmne_mark_bad_channelsmne_savemne_set_montagemne_set_reference
Delete 5 · Delete, drop, revoke or wipe things.
mne_apply_icamne_compute_connectivitymne_compute_tfrmne_reset_sessionmne_run_code
Not yet classified 18 · We could not tell from the name and description.
mne_average_evokedmne_connectivitymne_cropmne_decodemne_decoding_group_testmne_filtermne_fit_icamne_interpolate_badsmne_load_rawmne_plot_epochs_imagemne_plot_evokedmne_plot_ica_components
Show 6 more tools
mne_plot_ica_sourcesmne_plot_psdmne_plot_rawmne_plot_sensorsmne_plot_topomapmne_resample
Network hosts it talks to 2
github.com· found in codeopencode.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_icaRemove 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_inverseEstimate 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_evokedAverage 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_statusCheck 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 dataBivariate 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_covCompute 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 dataCompute 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_connectivitySpectral 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-onlyVerify native executables and version; report missing installation without installing anything.
mne_cpp_evoked_summaryread-onlyRead native evoked dataset counts, nave, time range and channel types; not statistical analysis.
mne_cpp_get_helpread-onlyRead installed official help. Only the two allowlisted native inspection tools can be executed.
mne_cpp_inspect_fiffread-onlyInspect FIFF structure with native MNE-CPP; blocks_only avoids detailed metadata by default.
mne_cpp_read_metadataread-onlyRead sampling and Nyquist frequency via native FIFF tags; not a signal quality assessment.
mne_cropCrop a Raw/Epochs/Evoked object to the time window [tmin, tmax] seconds, in place.
mne_decodeTime-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_testGroup-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_describeShow a detailed summary of one named session object (channels, sfreq, montage, bads, etc.).
mne_events_from_annotationsConvert a Raw object's annotations into an events array + event_id map (for EDF/BrainVision/EEGLAB data).
mne_filterBand-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_eventsFind stimulus/trigger events on a stim channel of a Raw object. Stores them under events_name.
mne_fit_icaFit 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_configShow 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_infoShow the full channel list and measurement info for a named session object.
mne_interpolate_badsInterpolate currently-marked bad channels using spherical splines (requires a montage).
mne_list_filesList 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_rawLoad 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_epochsSegment 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_forwardBuild 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_channelsMark channels as bad (comma-separated names, e.g. 'Fp1,T7'). By default appends to existing bads; set replace=true to overwrite.
mne_plot_epochs_imagePlot an ERP image (epochs × time heatmap) for an Epochs object. Returns PNG path(s).
mne_plot_evokedPlot an Evoked response. style: 'joint' (butterfly + topomaps, default), 'topo', or 'butterfly'. Returns PNG path.
mne_plot_ica_componentsPlot ICA component scalp topographies (to identify eye/heart/muscle artifacts). Returns PNG path(s).
mne_plot_ica_sourcesPlot ICA component time courses for an instrument (raw/epochs). Returns a PNG path.
mne_plot_psdPlot the power spectral density of a Raw/Epochs/Evoked object. Returns a PNG path.
mne_plot_rawPlot raw signal traces (a window of channels over time). Returns a PNG path.
mne_plot_sensorsPlot the sensor/electrode layout (kind='topomap' 2D or '3d'). Returns a PNG path.
mne_plot_source_estimateRender 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_topomapPlot 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_resampleResample a Raw/Epochs object to a new sampling frequency (Hz), in place.
mne_reset_sessionClear all loaded objects and figures from the session, starting fresh. Irreversible.
mne_run_codeExecute 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_saveSave 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_infoList 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_montageApply 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_referenceSet the EEG reference. Use 'average' for average reference, 'REST', or a comma-separated list of channel names (e.g. 'TP9,TP10').
mne_tfr_morletCompute 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
- Repository
- github.com/Exekiel179/MNE-MCP
- 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)