A comprehensive Model Context Protocol (MCP) server for querying the Allen Institute for Brain Science API.
Allen Brain API MCP Server
A comprehensive Model Context Protocol (MCP) server for querying the Allen Institute for Brain Science API. This server provides access to the Allen Brain API using the RESTful Model Access (RMA) format and high-level endpoints for various Allen Brain Institute datasets, including Cell Types, Mouse Connectivity, Ontologies, Image Downloads, Grid Data, and Neuronal Models.
Features
execute_rma_query: Allows sending raw, generic RMA queries for maximum flexibility. You can query models likeSpecimen,SectionDataSet,Structure, and filter them dynamically.get_cell_specimens: A convenient tool to query cell specimens from the Cell Types Database by species (e.g., Mus musculus or Homo Sapiens).get_mouse_connectivity_experiments: A high-level tool to quickly fetch projection/injection experiments from the Mouse Brain Connectivity Atlas.get_atlases: Retrieve atlases available through the API.get_structure_graphs: Retrieve structure graphs.get_structures: Retrieve data about anatomical structures, with optional filtering by graph ID.get_atlas_images: List atlas images belonging to a specified atlas.get_section_images: List section images belonging to a specified section data set.get_grid_data_download_url: Returns the URL to download 3-D expression grid data for a section data set.get_neuronal_models: Fetch biophysically detailed neuronal model records.
Installation
This project is built using TypeScript. To install dependencies:
cd allenbrain-mcp
npm install
Build
Compile the TypeScript code:
npm run build
Running the Server
Start the server using node:
npm start
Or run in development mode with tsx watch:
npm run dev
Testing
Tests are written using Vitest. Mocked axios is used to prevent actual network calls during the test suite.
npm run test
Adding to an Agent (e.g., Gemini CLI)
To integrate this MCP server with an agent like the Gemini CLI, you need to configure your agent to recognize and execute the server.
-
Ensure the server is built:
cd /path/to/allenbrain-mcp npm run build -
Configure your agent: You will typically need to provide a path to the server's executable. For the Gemini CLI, this is usually done via a configuration file (e.g.,
tool-code-interpreter.jsonor similar, depending on your setup). Add an entry that points to the compiled server.Example configuration entry (adjust
/path/to/allenbrain-mcpto your actual directory):{ "mcpServers": { "allenbrain-api": { "command": "node", "args": ["/path/to/allenbrain-mcp/build/index.js"] } } }Once configured, your agent should be able to list and call the tools provided by this MCP server.
Disclaimer and Support
This project is a work in progress, and not all functionality has been exhaustively tested with live data. While efforts have been made to accurately reflect the Allen Brain API based on available documentation, this project is not officially linked to or endorsed by the Allen Institute for Brain Science.
Feedback, bug reports, and contributions are welcome and encouraged to improve its completeness and reliability.