Skip to main content

Generated from aind-library-template

Project description

AIND Data MCP Server

License Code Style semantic-release: angular Interrogate Coverage Python

An MCP (Model Context Protocol) server that provides access to AIND (Allen Institute for Neural Dynamics) metadata and data assets through a comprehensive set of tools and resources. This server targets the V2 aind-data-schema format.

Installation

Each IDE/client has its own configuration method, look at their documentation for instructions on MCP configuration/setup.

You can either use the command uvx aind-data-mcp to launch the server, or install it locally with uv tool install aind-data-mcp and then launch it with just aind-data-mcp.

For use in Code Ocean

Features

This MCP server provides the following tools:

Data Retrieval & Querying

  • get_records — Query MongoDB collections using filters and projections
  • aggregation_retrieval — Execute complex MongoDB aggregation pipelines
  • count_records — Count documents matching a filter
  • flatten_records — Retrieve and flatten records into dot-notation for easier inspection
  • get_project_names — List all project names in the database
  • get_summary — Generate an AI-powered summary for a specific data asset

Schema Navigation

  • get_top_level_nodes — Explore the top-level fields of the V2 metadata schema
  • get_additional_schema_help — Query-writing guidance for V2 aggregations
  • get_modality_types — List all available data modality names and abbreviations

Schema Examples (one tool per document type)

  • get_acquisition_example, get_data_description_example, get_instrument_example, get_procedures_example, get_subject_example, get_processing_example, get_model_example, get_quality_control_example

NWB File Access

  • identify_nwb_contents_in_code_ocean — Load an NWB file from the /data directory in a Code Ocean capsule
  • identify_nwb_contents_with_s3_link — Load an NWB file from an S3 path

Resources (accessible via the MCP protocol)

  • resource://aind_api — Context and usage patterns for the AIND data access API
  • resource://load_nwbfile — Reference script for loading NWB files

Development

To develop the code, run

uv sync --extra dev

To run tests:

uv run coverage run -m unittest discover && uv run coverage report

To run linting:

uv run flake8 . && uv run interrogate --verbose .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aind_data_mcp-0.3.0.tar.gz (20.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aind_data_mcp-0.3.0-py3-none-any.whl (19.6 kB view details)

Uploaded Python 3

File details

Details for the file aind_data_mcp-0.3.0.tar.gz.

File metadata

  • Download URL: aind_data_mcp-0.3.0.tar.gz
  • Upload date:
  • Size: 20.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aind_data_mcp-0.3.0.tar.gz
Algorithm Hash digest
SHA256 decb961c77649b8d08aa7331675b5683add3c860f052047454f0ac41f0269f0a
MD5 d13e9709c6aa56a5532f240d7a1ac9d2
BLAKE2b-256 b8ca669f7382a1f70f4d20f630a8b6aa1d0e4d57df70fd2c155d5fa1415ffc3b

See more details on using hashes here.

File details

Details for the file aind_data_mcp-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: aind_data_mcp-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 19.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aind_data_mcp-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6540377629479908c592eeb8a471399ba6d4f9fd40053b2876b6c78a3bec4ad4
MD5 7db74cfa6b93e40d8308853985410df2
BLAKE2b-256 6df6fb60e69e9bf2599be444710f581de1362e87063766a18e4ea9778d829e35

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page