Skip to content

Run live MCP integration test against pixecog preprocessing pipeline

Goal

Verify that all pipeio MCP tools work correctly against a real project (pixecog) with its preprocessing pipeline. Test the new tools (mod_context, nb_update) and the fixed tools (config_patch). Document any issues found.

Context

pixecog is at /storage2/arash/projects/pixecog/. It has multiple pipelines under code/pipelines/ including preprocess/ecephys and preprocess/ieeg. The project uses snakebids bids() for path resolution and has YAML configs with anchors and flow-style mappings.

The MCP server for pixecog can be accessed via the sirocampus MCP tools (or by setting PROJIO_ROOT to pixecog).

Prompt

Run a comprehensive MCP tool integration test against pixecog's preprocessing pipeline. This is a test/verification task — document results but do NOT modify pixecog files.

Test each tool category against preprocess/ecephys or preprocess/ieeg (whichever has richer config). Use the sirocampus MCP tools if available, otherwise use pipeio directly.

1. Discovery tools

pipeio_flow_list(pipe="preprocess")
pipeio_flow_status(pipe="preprocess", flow="ecephys")
pipeio_mod_list(pipe="preprocess", flow="ecephys")
Record: number of flows, mods, rules found.

2. Config tools

pipeio_config_read(pipe="preprocess", flow="ecephys")
Record: has_anchors, number of pybids_inputs, registry groups, member_sets.

3. Config patch (dry run — apply=False)

pipeio_config_patch(
    pipe="preprocess", flow="ecephys",
    registry_entry={"test_group": {"base_input": "<first_pybids_input>", "members": {"test": {"suffix": "test", "extension": ".npy"}}}},
    apply=False
)
Verify: diff is clean (no anchor mangling, no comment stripping, no flow-style expansion). Check that the diff shows ONLY the new registry group addition.

4. Rule tools

pipeio_rule_list(pipe="preprocess", flow="ecephys")
pipeio_dag(pipe="preprocess", flow="ecephys")
Record: number of rules, edge count, any parsing errors.

5. New tools

pipeio_mod_context(pipe="preprocess", flow="ecephys", mod="<first_mod>")
Verify: returns rules, scripts (with content), doc (if exists), config_params, bids_signatures.

pipeio_nb_status()
Verify: if pixecog has notebooks, check that kind/description/status fields appear (may be empty for pre-existing notebooks).

6. Cross-flow tools

pipeio_cross_flow(pipe="preprocess")
pipeio_contracts_validate()
pipeio_completion(pipe="preprocess", flow="ecephys")
Record: any warnings or errors.

7. Document results

For each tool, record in the Result section: - ✅ Works correctly - ⚠️ Works but with warnings (describe) - ❌ Fails (describe error)

If any tool fails, file an issue note with worklog_note(text, project_id="projio", kind="issue").

Acceptance Criteria

  • [ ] All discovery tools return valid data
  • [ ] config_read parses pixecog config correctly
  • [ ] config_patch dry-run diff is clean (no formatting damage)
  • [ ] rule_list parses all rules without errors
  • [ ] mod_context returns bundled data for at least one mod
  • [ ] All issues documented

Result

(Filled in after execution)