Ephys MCP server
io.github.happyc0der/ephys-mcp·v0.5.1·1 starsRead-only analysis of intracortical BCI recordings (NWB, DANDI, WAV): spikes, PSTHs, decoding, plots
1 stars39 downloads/wk
Reviews
Write oneNobody has reviewed Ephys yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Ephys tools
No tool declarations could be read from the package source. They show once the server is installed.
Public scan report
scanner v0.1.10 · 2026-11-01 · same rubric, same numbers if you re-run it
- Code scan23 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 37 days ago12/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How Ephys compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 88/100
- higher than 75% of 48,255 servers
- GitHub stars
- 1
- more than 65% of 28,688 servers
- Downloads a week
- 39
- more than 30% of 12,191 servers with a package
Release history: 3 versions in the registry since 2026-09-22, latest 2026-09-22, typically several a day.
Install Ephys in Claude Code, Cursor or VS Code
claude mcp add ephys-mcp -- uvx ephys-mcp
What the publisher says
From the Ephys repository's README, as published. We do not edit it. Read it on GitHub
ephys-mcp
<!-- mcp-name: io.github.happyc0der/ephys-mcp -->
An MCP server that lets an LLM analyse intracortical (spike-level) brain-computer-interface recordings: signal quality, spike detection, firing rates, and cursor-velocity decoding.
Existing BCI MCP servers target scalp EEG. This one targets the kind of data a high-channel-count implant produces, and defines a read-only adapter contract so a live device backend can be added when a vendor publishes an API.
Research and education software. Not a medical device. Not for clinical use.
Not affiliated with or endorsed by Neuralink Corp. or any other implant manufacturer.
Status
v0.5. The planned feature set is complete: local NWB files, local broadband WAV recordings, live Lab Streaming Layer streams, streaming from the DANDI Archive, a synthetic motor-cortex source with ground truth, spike detection, quality metrics, ridge and Kalman decoders, trial-aligned PSTHs, spike sorting, cross-session (FALCON-style) evaluation, latent-factor models (GPFA, PCA), probe geometry, and figures. 24 tools. Bug reports and feature requests go to GitHub Issues.
Install and run
Needs uv. No install step: uvx ephys-mcp fetches the package and starts the server on stdio.
Claude Code:
claude mcp add ephys -- uvx ephys-mcpClaude Desktop (claudedesktopconfig.json):
{ "mcpServers": { "ephys": { "command": "uvx", "args": ["ephys-mcp"] } } }From a checkout, use uv run ephys-mcp instead, or uv --directory /path/to/ephys-mcp run ephys-mcp in the configs above.
HTTP transport
For remote clients or hosted agents, serve streamable HTTP instead of stdio:
EPHYS_MCP_TOKEN='a-long-random-secret' uvx ephys-mcp --http --host 0.0.0.0 --port 8000Every request must then carry Authorization: Bearer . The server refuses to bind to a non-loopback address without a token, and tokens must be at least 16 characters. Put TLS in front of it (a reverse proxy) before exposing it beyond a private network: the token travels in clear text otherwise. On loopback the token is optional, so ephys-mcp --http alone serves http://127.0.0.1:8000/mcp for local testing.
Then ask, for real data: "Find a small motor cortex dataset on DANDI, open it, and tell me how well hand velocity can be decoded." Or offline: "Open a synthetic session, check signal quality, fit a Kalman decoder and show me a decoded window."
Data sources
Dataset licence and citation come from the archive and are returned by opensession, so the model can attribute the data. Many datasets record only during trials; the server tracks those spans (recordedfraction) and leaves the gaps out of rates and decoding instead of reading them as silence.
WAV samples carry no physical unit, so amplitudes are reported as ADC counts unless you pass uvpercount; every amplitude result names its unit. Clips in a folder are separate recordings, so the server says that timing across those channels is not meaningful. Spike times from WAV are threshold crossings, not sorted units.
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Ephys: common questions
- Is Ephys MCP server safe?
- Yes, by our scan: it is graded A (88/100). Read the Ephys safety report
- How do I install Ephys?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Ephys need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Ephys maintained?
- The last commit was 40 days ago (2026-09-25). The latest release is v0.5.1.
- How does Ephys compare with other MCP servers?
- safety score 88/100 (higher than 75% of 48,255 servers); github stars 1 (more than 65% of 28,688 servers); downloads a week 39 (more than 30% of 12,191 servers with a package). Full comparison.