Skip to content

feat: add read-only MCP observability - #33

Merged
ostapondo merged 3 commits into
mainfrom
feature/mcp-observability
Aug 28, 2026
Merged

ostapondo merged 3 commits into
mainfrom
feature/mcp-observability

Conversation

@ostapondo

Copy link
Copy Markdown
Owner

Summary

  • expose get_agent_health, list_event_sources, get_incident_timeline, and get_local_metrics_summary through additive typed schemas
  • add bounded read-only incident, ledger, health, and SQLite inspection paths
  • extend Unix and Windows MCP Inspector validation and document the security boundary

MCP compatibility and safety

  • preserves list_incidents and get_incident without renaming or removing fields
  • all six tools declare read-only, non-destructive, closed-world annotations
  • no repair, replay, rollback, approval, apply, arbitrary file, path, or shell tools
  • observability outputs exclude raw artifacts, evidence, launch arguments, working directories, secrets, and model payloads
  • health inspection never creates, rebuilds, quarantines, or writes the disposable index
  • malformed fields, unknown arguments, non-UUID IDs, and traversal-shaped IDs are rejected

Validation

  • cargo fmt --check
  • cargo test --workspace
  • cargo clippy --workspace --all-targets -- -D warnings
  • scripts/validate-mcp.sh with zero schema warnings
  • privacy, exact-tool-allowlist, schema, malformed-input, traversal, bounded-read, and no-mutation tests

Windows MCP Inspector validation is wired into CI through scripts/validate-mcp.ps1.

@ostapondo
ostapondo merged commit c0ae348 into main Aug 28, 2026
2 checks passed
@ostapondo
ostapondo deleted the feature/mcp-observability branch August 28, 2026 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant