Skip to content

Installation command fails on zsh (macOS default shell) #112

Description

@bluemomo112

Description

The installation command provided in the README fails on zsh (the default shell on macOS) with the following error:

$ claude mcp add --transport http --scope user tavily https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>
zsh: no matches found: https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>

Root Cause

The issue occurs because zsh treats ? as a glob pattern (wildcard) and attempts to match it against files in the current directory. When no matches are found, zsh throws an error before the command can execute.

This behavior differs from bash, where unmatched glob patterns are passed through as literal strings.

Reproduction

Environment:

  • Shell: zsh (default on macOS)
  • Command: Any claude mcp add command with URL parameters containing ?

Steps:

  1. Open a terminal with zsh
  2. Run the installation command from the README:
    claude mcp add --transport http --scope user tavily https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>
  3. Observe the error: zsh: no matches found

Workaround

Users can work around this by quoting the URL:

claude mcp add --transport http --scope user tavily 'https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>'

Suggested Fix

Update the README installation instructions to include quotes around the URL to ensure cross-shell compatibility:

Current:

claude mcp add --transport http --scope user tavily https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>

Suggested:

claude mcp add --transport http --scope user tavily 'https://mcp.tavily.com/mcp/?tavilyApiKey=<your-api-key>'

This change would make the command work correctly on both bash and zsh without requiring users to understand shell-specific glob expansion behavior.

Impact

This affects all macOS users (zsh is the default shell since macOS Catalina) and Linux users who use zsh. The error message is confusing and doesn't clearly indicate that the issue is shell-related.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions