Skip to main content

Production-grade MCP server for CERN ROOT file analysis

Project description

MCP Server for CERN ROOT Files

CI PyPI License Language

A Model Context Protocol (MCP) server that provides AI models with safe, high-level access to CERN ROOT files and their contents (TFile, TDirectory, TTree, TBranch, histograms). Enables declarative, tool-based interaction with ROOT data without requiring users to write low-level C++ or PyROOT code.

Quick Start

Install

pip install root-mcp

Optional XRootD support:

pip install "root-mcp[xrootd]"

Generate sample ROOT files

python examples/create_sample_data.py

Configure

Create a config (example):

resources:
  - name: "local_data"
    uri: "file:///absolute/path/to/data/root_files"
    description: "Sample ROOT files"
    allowed_patterns: ["*.root"]

security:
  allowed_roots:
    - "/absolute/path/to/data/root_files"
    - "/tmp/root_mcp_output"
  allowed_protocols: ["file"]

You can start from the repository example config at config.yaml.

Run

ROOT_MCP_CONFIG=/path/to/config.yaml root-mcp

Documentation

  • docs/README.md: complete documentation (tools reference, configuration, Claude Desktop)
  • docs/ARCHITECTURE.md: architecture and design notes
  • docs/CONTRIBUTING.md: contributing guidelines

Citation

If you use ROOT-MCP in your research, please cite:

@software{root_mcp,
  title = {ROOT-MCP: Production-Grade MCP Server for CERN ROOT Files},
  author = {Mohamed Elashri},
  year = {2025},
  url = {https://github.com/MohamedElashri/root-mcp}
}

References

License

MIT License - see LICENSE for details.

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

root_mcp-0.1.1.tar.gz (36.0 kB view details)

Uploaded Source

Built Distribution

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

root_mcp-0.1.1-py3-none-any.whl (41.0 kB view details)

Uploaded Python 3

File details

Details for the file root_mcp-0.1.1.tar.gz.

File metadata

  • Download URL: root_mcp-0.1.1.tar.gz
  • Upload date:
  • Size: 36.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for root_mcp-0.1.1.tar.gz
Algorithm Hash digest
SHA256 0202ca6f870070cdc70ecd18e87a887fd8288be7767d02b97befb6f7eeff61b8
MD5 57b89cae29c9649472120dfd339d6c71
BLAKE2b-256 485c3024ead420266eb22008ee1ffb9d30e942adfba442ecfef3edff1c945562

See more details on using hashes here.

Provenance

The following attestation bundles were made for root_mcp-0.1.1.tar.gz:

Publisher: release.yml on MohamedElashri/root-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file root_mcp-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: root_mcp-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 41.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for root_mcp-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5187d140bf183581b3b0940d51a29ad2e2c5d3744ed83eca38d55194c3a22067
MD5 4571515e4b2718517346b7583bc17dbd
BLAKE2b-256 488c75eb2be7838ce08b9f04d1164879c37b66fe588acf298d7c3ebaf59cb0aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for root_mcp-0.1.1-py3-none-any.whl:

Publisher: release.yml on MohamedElashri/root-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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