MCP HubMCP Hub
smithery-ai

cli

by: smithery-ai

Smithery CLI MCP server installer

222created 22/12/2024
Visit
CLI
installer

📌Overview

Purpose: To provide a client-agnostic registry installer and manager for Model Context Protocol (MCP) servers, facilitating seamless package management.

Overview: Smithery CLI is a command-line interface designed to streamline the installation, uninstallation, and management of MCP server packages. Built for compatibility with various AI clients, it offers a versatile tool for developers and users managing their server environments.

Key Features:

  • Install and Uninstall Packages: Easily install or uninstall MCP server packages with client specifications and configurable options to streamline setup processes.

  • Interactive Server Inspection: Use the inspect command for an interactive inspection of servers, enabling testing and detailed analysis directly from the CLI.

  • Server Management Commands: Execute various commands such as run, list clients, and verbose logging for debugging, ensuring comprehensive control over server management and configuration.


Smithery CLI

The Smithery registry installer and manager for Model Context Protocol (MCP) servers, designed to be client-agnostic.

Requirements

  • NodeJS version 18 or above

Usage

npx @smithery/cli <command>

Available Commands

  • install <package> - Install a package
    • --client <name> - Specify the AI client
    • --config <json> - Provide configuration data as JSON (skips prompts)
  • uninstall <package> - Uninstall a package
    • --client <name> - Specify the AI client
  • inspect <server-id> - Inspect a server interactively
  • run <server-id> - Run a server
    • --config <json> - Provide configuration for the server
  • list clients - List available clients
  • list servers --client <name> - List installed servers for specific AI client
  • --help - Show help message
  • --verbose - Show detailed logs for debugging

Examples

# Install a server (requires --client flag)
npx @smithery/cli install mcp-obsidian --client claude

# Install a server with pre-configured data (skips prompts)
npx @smithery/cli install mcp-obsidian --client claude --config '{"vaultPath":"path/to/vault"}'

# Remove a server
npx @smithery/cli uninstall mcp-obsidian --client claude

# List available clients
npx @smithery/cli list clients

# List installed servers for claude
npx @smithery/cli list servers --client claude

# Inspect a specific server from smithery's registry
npx @smithery/cli inspect mcp-obsidian

# Run a server with configuration
npx @smithery/cli run mcp-obsidian --config '"{\\"key\\":\\"value\\"}"'

# Show help menu
npx @smithery/cli --help

# Install with verbose logging for debugging
npx @smithery/cli install mcp-obsidian --client claude --verbose

Important Notes

  • Remember to restart your AI client after installing or uninstalling servers
  • Use the inspect command for interactive server testing
  • Run without arguments to see the help menu
  • Use --verbose flag for detailed logs when troubleshooting

Development

This guide will help you get started with developing for @smithery/cli.

Getting Started

  1. Clone the repository:
    git clone https://github.com/smithery-ai/cli
    cd cli
    
  2. Install dependencies:
    npm install
    
  3. Build the project:
    npm run build
    

Development Commands

# List all servers
npx . <command>

# Inspect a specific server
npx . inspect <server-id>

# Install a server
npx . install <server-name> --client <client-name>

# Run with verbose logging
npx . <command> --verbose

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.