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.1.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.1-py3-none-any.whl (19.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for aind_data_mcp-0.3.1.tar.gz
Algorithm Hash digest
SHA256 f9987787648a8777c93029856cec139f43a0f5c468319aa295da9c8ac5ec99e3
MD5 689e17addb86c660f4e1936501a0afea
BLAKE2b-256 c6d418fe312591a50102951bc6e9964b381805480d5ef5365b82825b4d1a3d53

See more details on using hashes here.

File details

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

File metadata

  • Download URL: aind_data_mcp-0.3.1-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.12

File hashes

Hashes for aind_data_mcp-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a5f41a9b4c0fb33c5ddb75060010c55c34f2a28333e8454263be7daad0f916c9
MD5 ea82e04abde4c0ec2f4aa7a394b61e43
BLAKE2b-256 090c9b1df51cdea8f8179d4e9ae2ba8b781f067fa4d93d5e4eb6de2644ed759a

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