biomcp_configure
Inspect, set, or reset project config file parameters for database and analysis features, validate changes with dry runs, and detect conflicts or pending restarts before applying them.
Instructions
Inspect and configure biomcp — unified observability and restricted controllability for every parameter.
What it covers: three optional feature groups (database, analysis_r, analysis_biowasm) whose knobs live in the .biomcp.json project config file (written by this tool, loaded at server startup — a restart applies changes), plus every environment-only parameter (API keys, proxy, security boundaries), which is query-only.
Actions:
status (default; call with {}): per-feature running state (with each feature's settable_keys), config file health, conflicts (e.g. an env var vetoing the file), pending-restart flags, dependency prerequisites, and parameter counts. The full parameter catalog is NOT inlined — use filter for detailed rows: 'file', 'env', a feature id ('analysis_r'), or a dotted-id prefix ('features.database').
set: create/modify file parameters in one atomic batch. Enable/disable is just features..enabled. null removes a key (restores default). Sensitive keys (connection targets, mirrors) require confirm_sensitive=true. Nothing is written when any key is invalid (dry_run=true validates and diffs without writing).
reset: remove a feature section (target: feature id) or specific keys (target: [dotted ids]).
Hard rules: environment parameters are never settable here (the response tells you how to set them in your client's env block); env var values are never displayed (masked: presence + fingerprint only); the file write is refused when the server's working directory is not a project root — the response then carries a paste-ready env block instead.
Examples: {"action":"status"} · {"action":"status","filter":"features.analysis_r"} · {"action":"set","values":{"features.analysis_biowasm.enabled":true}} · {"action":"set","values":{"features.database.enabled":true,"features.database.type":"sqlite","features.database.sqlite_path":["data/geo.db"]}} · {"action":"set","values":{"features.analysis_r.mirror_url":null}} · {"action":"reset","target":"analysis_r"}
Changes apply at server startup: finish dependency prerequisites first (see prerequisites in the response), then restart the client/session once, then re-call this tool with {} to verify running_now.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | No | status = inspect (default, works with no other arguments); set = create/modify file parameters; reset = remove. | status |
| filter | No | For status: "file" | "env" | feature id | dotted-id prefix — returns detailed rows (effects, how-to-set). | |
| target | No | For reset: a feature id ("database" | "analysis_r" | "analysis_biowasm") removes the whole section, or a list of dotted file-param ids removes those keys. | |
| values | No | For set: {"<dotted file-param id>": <value|null>} — e.g. {"features.analysis_r.enabled": true}. null removes the key. Valid ids are listed by status. | |
| dry_run | No | Validate and diff without writing (set/reset). | |
| confirm_sensitive | No | Required true when set/reset touches sensitive keys (connection targets, mirrors, credentials). |