Skip to content

enh: add disable tool flag and config - #990

Open
taylorwilsdon wants to merge 1 commit into
mainfrom
WORKSPACE_MCP_DISABLED_TOOLS
Open

enh: add disable tool flag and config#990
taylorwilsdon wants to merge 1 commit into
mainfrom
WORKSPACE_MCP_DISABLED_TOOLS

Conversation

@taylorwilsdon

@taylorwilsdon taylorwilsdon commented Jul 31, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

  • New Features

    • Added support for disabling specific tools through CLI options or environment configuration.
    • Disabled tools are removed from available services, with blocked tools taking precedence over other selections.
    • Added startup visibility and warnings for unknown or unavailable tool names.
  • Documentation

    • Documented disabled-tool configuration, precedence, accepted formats, and OAuth scope behavior.

@taylorwilsdon taylorwilsdon self-assigned this Jul 31, 2026
@taylorwilsdon taylorwilsdon added the enhancement New feature or request label Jul 31, 2026
@coderabbitai

coderabbitai Bot commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 97b03ee5-0544-431b-b545-a472d719f610

📥 Commits

Reviewing files that changed from the base of the PR and between 1bf4cb4 and 02ddcf5.

📒 Files selected for processing (6)
  • README.md
  • core/tool_registry.py
  • fastmcp_server.py
  • main.py
  • skills/managing-google-workspace/references/server-options.md
  • tests/core/test_tool_registry.py

📝 Walkthrough

Walkthrough

The change adds per-tool blocking through --disabled-tools and WORKSPACE_MCP_DISABLED_TOOLS. Names are normalized, applied during server startup, shown in mode configuration, documented, and covered by tool-registry tests.

Changes

Disabled tool filtering

Layer / File(s) Summary
Disabled tool configuration
core/tool_registry.py, main.py, fastmcp_server.py, README.md, skills/managing-google-workspace/references/server-options.md
The server resolves disabled tool names from CLI or environment settings, registers them, displays them at startup, and documents precedence and filtering behavior.
Registered tool filtering and validation
core/tool_registry.py, tests/core/test_tool_registry.py
Tool filtering removes blocked registered tools after existing filters, warns for unmatched names, and tests normalization, precedence, warnings, and no-configuration behavior.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (2 warnings)

Check name Status Explanation Resolution
Description check ⚠️ Warning The author provided no description, so all required sections and supporting details are missing. Add the required Description, Type of Change, Testing, Checklist, and Additional Notes sections, including test results and relevant implementation context.
Docstring Coverage ⚠️ Warning Docstring coverage is 8.33% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main change by identifying the new disabled-tool flag and configuration.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 2
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🛠️ Fix failing CI checks 💡
  • Fix failing CI checks
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch WORKSPACE_MCP_DISABLED_TOOLS

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant