champollion-sulcal-mcp
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HF_TOKEN | No | HuggingFace token. Optional: set it only to download models from Hugging Face. Passed through only to the `embeddings` stage; stripped from every other stage's subprocess environment. | |
| BRAINVISA | No | BrainVISA install location. Auto-injected from the pipeline's pixi environment if not already set in the environment. | |
| BRAINVISA_SHARE | No | BrainVISA share dir. Auto-injected from the pipeline's pixi environment if not already set in the environment. | |
| CHAMPOLLION_PIPELINE_DIR | Yes | Absolute path to the `champollion_pipeline` repo. This is required: the path of your `champollion_pipeline` checkout (must contain the stage scripts under `src/` and the `external/champollion_V1` and `external/cortical_tiles` submodules). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": true
} |
| resources | {
"subscribe": false,
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| start_morphologistC | Launch Stage 1: generate sulcal graphs with Morphologist from raw T1 MRI data. |
| start_cortical_tilesC | Launch Stage 2: extract 28 sulcal region crops with cortical_tiles. |
| start_configB | Launch Stage 3: generate Champollion dataset YAML configuration files. The configs root defaults to //derivatives/champollion_V1/configs,
where is the parent of the directory in crop_path; region YAMLs
land at {configs root}/dataset//. |
| start_trainingB | Launch encoder training: train a champollion_V1 self-supervised encoder for one sulcal region. Dataset configs must exist before calling this tool: run start_config first.
When the MCP client declares roots, config_dir defaults to
<roots[0]>/data//derivatives/champollion_V1/configs (roots[0] = the
first declared root; same base as the output_dir default). Otherwise
config_dir defaults to /data//derivatives/champollion_V1/configs
( = the champollion_pipeline root). Pass config_dir when the configs
live elsewhere (use //derivatives/champollion_V1/configs) or when
start_config was given an explicit |
| start_embeddingsC | Launch Stage 4: compute sulcal embeddings across all 56 model folds (28 regions × 2 hemispheres). profiling: run the embeddings script under cProfile. no_cache: re-extract a models archive, ignoring the cache. legacy: read crops from derivatives/deep_folding-2025 (overrides cortical_version). use_last_checkpoint: evaluate with the native Lightning checkpoint in version_0/checkpoints/ instead of best_model_weights.pt, for regions that have one. |
| start_combineC | Launch Stage 5: collect all per-region embedding CSVs into a single output directory. |
| start_snapshotsC | Launch Stage 6: render sulcal graph meshes, cortical tile masks, and UMAP scatter plots. UMAP plots need both |
| start_pipelineB | Launch the full Champollion pipeline (all 6 stages sequentially). Returns a pipeline job_id immediately.
A non-empty |
| purge_subjectA | Remove all cortical_tiles derivatives for a single subject. Deletes per-subject NIfTI files (crops, labels, extremities, distbottom), per-subject subdirectories (skeletons/, foldlabels/, transforms/, distmaps/), and filters the subject's row from aggregated .npy arrays and their subject CSVs. Use dry_run=True to preview what would be deleted without modifying anything. |
| prune_failed_subjectsA | Remove cortical_tiles outputs for all subjects that failed QC. Reads a QC TSV/CSV file with 'participant_id' and 'qc' columns and deletes all files belonging to subjects with qc==0 or absent from the QC file. Equivalent to having run cortical_tiles with --sk_qc_path from the start. Use dry_run=True to preview what would be deleted without modifying anything. |
| get_job_statusC | Get the current status and progress of a running or completed job. |
| list_jobsC | List all jobs for a given output directory, optionally filtered by status. |
| cancel_jobB | Cancel a running job by sending SIGTERM to its process. |
| get_job_logC | Retrieve the last N lines of a job's log output. |
| get_pipeline_infoB | Get metadata about the Champollion pipeline and available MCP tools. |
| preflight_checkB | Check whether the Champollion pipeline is correctly configured and accessible. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| list_data_root | List top-level entries within all client-declared data roots. |
TDQS
Scored across 16 tools
Most tools have clearly distinct roles: stage launches are separated by stage number and resource, and job controls are status/list/cancel/log. Minor overlap exists between start_pipeline and the individual stage launchers, and between purge_subject and prune_failed_subjects, but descriptions make the distinctions clear.
Tool names are mostly consistent snake_case action-object patterns, especially the start_* stage launchers and job management verbs. preflight_check is a minor deviation from the verb_noun pattern but remains readable.
At 16 tools it is slightly heavy, but the count is justified by six pipeline stages, a full-pipeline launcher, configuration/training helpers, job management, cleanup, and informational tools. Each tool has a plausible role in the orchestration workflow.
The surface covers the main pipeline lifecycle well: preflight, all six stages, full pipeline execution, job status/list/cancel/log, cleanup, and pipeline info. Minor gaps remain, such as resume/retry operations and cleanup coverage outside cortical_tiles outputs.