{"name":"io.github.Exekiel179/mne-mcp","slug":"exekiel179-mne-mcp","title":"MNE-MCP","description":"MNE-Python neurophysiology analysis (EEG, MEG, sEEG, ECoG, fNIRS) via the Model Context Protocol","url":"https://mcp.market/server/exekiel179-mne-mcp","rating":null,"grade":"A","score":85,"certified":false,"status":"active","category":"ai","tags":["ai"],"presence":{"score":36,"stars":8,"forks":1,"downloads_week":280,"last_push_at":"2026-09-21T07:56:45.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/Exekiel179/MNE-MCP","website":null,"version":"0.2.2","remotes":[],"packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"mne-mcp","version":"0.2.2","runtimeHint":"uvx","transport":{"type":"stdio"},"runtimeArguments":[{"value":"mne-mcp[ica]","type":"named","name":"--from"}],"packageArguments":[{"value":"serve","type":"positional"},{"value":"stdio","type":"named","name":"--transport"}]}],"tools":[{"name":"mne_apply_ica","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_apply_inverse","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_average_evoked","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_check_status","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_compute_noise_cov","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_connectivity","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_crop","description":"Crop a Raw/Epochs/Evoked object to the time window [tmin, tmax] seconds, in place.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_decode","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_describe","description":"Show a detailed summary of one named session object (channels, sfreq, montage, bads, etc.).","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_events_from_annotations","description":"Convert a Raw object's annotations into an events array + event_id map (for EDF/BrainVision/EEGLAB data).","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_filter","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_find_events","description":"Find stimulus/trigger events on a stim channel of a Raw object. Stores them under events_name.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_fit_ica","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_get_config","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_get_info","description":"Show the full channel list and measurement info for a named session object.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_interpolate_bads","description":"Interpolate currently-marked bad channels using spherical splines (requires a montage).","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_list_files","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_load_raw","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_make_epochs","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_make_forward","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_mark_bad_channels","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_plot_epochs_image","description":"Plot an ERP image (epochs × time heatmap) for an Epochs object. Returns PNG path(s).","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_plot_evoked","description":"Plot an Evoked response. style: 'joint' (butterfly + topomaps, default), 'topo', or 'butterfly'. Returns PNG path.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_plot_ica_components","description":"Plot ICA component scalp topographies (to identify eye/heart/muscle artifacts). Returns PNG path(s).","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_plot_ica_sources","description":"Plot ICA component time courses for an instrument (raw/epochs). Returns a PNG path.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_plot_psd","description":"Plot the power spectral density of a Raw/Epochs/Evoked object. Returns a PNG path.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_plot_raw","description":"Plot raw signal traces (a window of channels over time). Returns a PNG path.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_plot_sensors","description":"Plot the sensor/electrode layout (kind='topomap' 2D or '3d'). Returns a PNG path.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_plot_source_estimate","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_plot_topomap","description":"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.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_resample","description":"Resample a Raw/Epochs object to a new sampling frequency (Hz), in place.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_reset_session","description":"Clear all loaded objects and figures from the session, starting fresh. Irreversible.","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_run_code","description":"","write_action":true,"price_micros":0,"input_schema":null},{"name":"mne_save","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_session_info","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_set_montage","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_set_reference","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"mne_tfr_morlet","description":"","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":85,"grade":"A","scanned_at":"2026-09-27T12:15:16.219Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-27T12:15:16.260Z","components":{"code":{"score":20,"max":25,"notes":["14 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 6 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"exec.eval","severity":"medium","component":"code","title":"eval / new Function used","evidence":"mne_mcp-0.2.2/src/mne_mcp/kernel.py: …one: result_value = eval( compile(ast.Exp…"}],"inputs":{"packages":[{"registryType":"pypi","identifier":"mne-mcp","version":"0.2.2","found":true,"weeklyDownloads":280,"license":"MIT","dependencyCount":10,"publishedAt":"2026-06-05T08:09:33.295655Z","repositoryUrl":"https://github.com/Exekiel179/MNE-MCP"}],"repo":{"found":true,"owner":"Exekiel179","repo":"MNE-MCP","archived":false,"pushedAt":"2026-09-21T07:56:45Z","stars":8,"forks":1,"openIssues":1,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/140684002?v=4","ownerCreatedAt":"2023-07-27T04:47:09Z","license":"MIT"},"icon":{"url":null,"source":"none"},"presence":{"stars":8,"forks":1,"downloadsWeek":280,"license":"MIT","lastPushAt":"2026-09-21T07:56:45.000Z","score":36}}}},"grade_history":[],"reviews":[]}