issue: Using disabled_tools always fails #121

Open
opened 2026-02-15 21:15:00 -05:00 by yindo · 4 comments
Owner

Originally created by @dionny on GitHub (Oct 20, 2025).

Check Existing Issues

  • I have searched the existing issues and discussions.
  • I am using the latest version of mcpo.

mcpo Version

0.0.19

Open WebUI Version (if applicable)

No response

Operating System

macOS

Browser (if applicable)

No response

Confirmation

  • I have read and followed all instructions in README.md.
  • I am using the latest version of both MCPO and Open WebUI.
  • I have included the browser console logs.
  • I have included the Docker container logs.
  • I have listed steps to reproduce the bug in detail.

Expected Behavior

It works

Actual Behavior

It doesn't work

Steps to Reproduce

Use disabled_tools

Logs & Screenshots

ValueError: Server 'mcp-atlassian' must have either 'command' for stdio or 'type' and 'url' for remote servers

Additional Information

No response

Originally created by @dionny on GitHub (Oct 20, 2025). ### Check Existing Issues - [x] I have searched the existing issues and discussions. - [x] I am using the latest version of mcpo. ### mcpo Version 0.0.19 ### Open WebUI Version (if applicable) _No response_ ### Operating System macOS ### Browser (if applicable) _No response_ ### Confirmation - [x] I have read and followed all instructions in `README.md`. - [x] I am using the latest version of **both** MCPO and Open WebUI. - [x] I have included the browser console logs. - [x] I have included the Docker container logs. - [x] I have listed steps to reproduce the bug in detail. ### Expected Behavior It works ### Actual Behavior It doesn't work ### Steps to Reproduce Use disabled_tools ### Logs & Screenshots ValueError: Server 'mcp-atlassian' must have either 'command' for stdio or 'type' and 'url' for remote servers ### Additional Information _No response_
yindo added the bug label 2026-02-15 21:15:00 -05:00
Author
Owner

@dionny commented on GitHub (Oct 20, 2025):

The issue is pretty clear here, I can open a PR but I'm not sure what the intention was here.

 # Validate disabledTools
    disabled_tools = server_cfg.get("disabled_tools")
    if disabled_tools is not None:
        if not isinstance(disabled_tools, list):
            raise ValueError(f"Server '{server_name}' 'disabledTools' must be a list")
        for tool_name in disabled_tools:
            if not isinstance(tool_name, str):
                raise ValueError(f"Server '{server_name}' 'disabledTools' must contain only strings")
        raise ValueError(
            f"Server '{server_name}' must have either 'command' for stdio or 'type' and 'url' for remote servers"
        )

The code always raises a ValueError at the end.

@dionny commented on GitHub (Oct 20, 2025): The issue is pretty clear here, I can open a PR but I'm not sure what the intention was here. ``` # Validate disabledTools disabled_tools = server_cfg.get("disabled_tools") if disabled_tools is not None: if not isinstance(disabled_tools, list): raise ValueError(f"Server '{server_name}' 'disabledTools' must be a list") for tool_name in disabled_tools: if not isinstance(tool_name, str): raise ValueError(f"Server '{server_name}' 'disabledTools' must contain only strings") raise ValueError( f"Server '{server_name}' must have either 'command' for stdio or 'type' and 'url' for remote servers" ) ``` The code always raises a ValueError at the end.
Author
Owner

@jwhandy3 commented on GitHub (Nov 11, 2025):

Yes, I'm encountering this as well... it will ALWAYS raise the error at the end.

@jwhandy3 commented on GitHub (Nov 11, 2025): Yes, I'm encountering this as well... it will ALWAYS raise the error at the end.
Author
Owner

@Baronco commented on GitHub (Dec 17, 2025):

I have the same problem

@Baronco commented on GitHub (Dec 17, 2025): I have the same problem
Author
Owner

@nougad commented on GitHub (Dec 26, 2025):

Slightly related: The documentation for disabled_tools is confusing because the README.md mentions disabledTools: https://github.com/search?q=repo%3Aopen-webui%2Fmcpo%20disabledTools&type=code but it's actually disabled_tools: https://github.com/search?q=repo%3Aopen-webui%2Fmcpo+disabled_tools&type=code

@nougad commented on GitHub (Dec 26, 2025): Slightly related: The documentation for `disabled_tools` is confusing because the README.md mentions `disabledTools`: https://github.com/search?q=repo%3Aopen-webui%2Fmcpo%20disabledTools&type=code but it's actually `disabled_tools`: https://github.com/search?q=repo%3Aopen-webui%2Fmcpo+disabled_tools&type=code
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: open-webui/mcpo#121