Skip to content

refactor(read-only): move read-only actions from manage_* to browse_* tools #134

@polaz

Description

@polaz

Problem

In read-only mode, documentation specifies that all manage_* tools are hidden. However, some manage_* tools currently expose read-only actions:

  • manage_context — session-only actions (show, list_presets, set_scope, etc.)
  • manage_webhookread action
  • manage_integrationget action

These read-only actions should live in the corresponding browse_* tools, not in manage_*.

Target State

Move read-only actions into browse_* tools:

  • manage_webhook action readbrowse_webhooks (or list_webhooks) action get
  • manage_integration action getlist_integrations action get (or new browse_integrations)
  • manage_context — evaluate if this belongs in browse_context or stays as-is (session-only, no GitLab writes)

Then in read-only mode, ALL manage_* tools are hidden cleanly — no action-level filtering needed.

Benefits

  • Clean CQRS contract: browse_* = read, manage_* = write
  • Simpler read-only filtering (no per-action runtime checks)
  • Documentation matches code exactly

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions