MCP Hub
Back to servers

raycast-mcp-server-manager

A Raycast extension for managing MCP (Model Context Protocol) servers across editors like Cursor, VS Code, and Windsurf

Stars
6
Forks
2
Updated
Jun 10, 2025
Validated
Jan 9, 2026

MCP Server Manager

A Raycast extension for managing MCP (Model Context Protocol) servers across editors.

Demo

The code is functional but not particularly elegant. Fork, fix, open a PR and let's make it better.

Table of Contents

What it does

  • CRUD operations for MCP server configs across editors
  • Search and filter servers
  • Connection testing with timeout handling
  • Basic protection against deleting critical servers (UI only - raw config editing bypasses this)
  • Transport support: stdio, SSE, HTTP

Supported editors

  • Cursor: stdio, SSE
  • VS Code: stdio, SSE, HTTP (*includes input management for secrets)
  • Windsurf: stdio, SSE (uses /sse as transport type)

Installation

Raycast Store:

  1. Navigate to the Raycast Store.
  2. Search for MCP Server Manager
  3. Click Install

Manual:

git clone https://github.com/rmncldyo/raycast-mcp-server-manager.git
cd raycast-mcp-server-manager
npm install
npm run build
npm run dev

Development Requirements

  • Raycast ≥ 1.50.0
  • Node.js ≥ 18.0.0
  • At least one supported editor

Usage

Type MCP in Raycast:

  • List MCP Servers - View all servers
  • Add MCP Server - Create new server config
  • Search MCP Servers - Find servers across editors
  • Remove MCP Server - Delete servers (with protection)
  • View Raw Configs - Direct file editing

Editor Support

Cursor

  • Transports: stdio, SSE

  • Config:

    • Global: ~/.cursor/mcp.json
    • Workspace: .cursor/mcp.json
  • Configuration Example:

    {
      "mcpServers": {
        "server-name": {
          "command": "npx",
          "args": ["-y", "mcp-server"],
          "env": {
            "API_KEY": "your-api-key-here"
          }
        }
      }
    }
    
  • Features:

    • Automatic process management for stdio servers
    • Environment variable support for authentication
    • Tool approval system with optional auto-run
    • Image injection support via base64-encoded responses
  • Limitations:

    • Maximum of 40 tools across all MCP servers
    • May not work properly over SSH or remote development environments
    • No support for disabled state
    • Only supports tools (not resources)
  • Notes:

    • SSE servers must be accessible via URL (e.g., http://localhost:8000/sse)
    • Tool usage requires approval by default (can be set to auto-run)

VS Code

  • Transports: stdio, SSE, HTTP

  • Config:

    • User: ~/Library/Application Support/Code/User/settings.json
    • Workspace: .vscode/mcp.json or .vscode/settings.json
  • Configuration Example:

    {
      "inputs": [
        {
          "type": "promptString",
          "id": "api-key",
          "description": "API Key",
          "password": true
        }
      ],
      "servers": {
        "example-server": {
          "type": "stdio",
          "command": "npx",
          "args": ["-y", "mcp-server-example"],
          "env": {
            "API_KEY": "${input:api-key}"
          }
        }
      }
    }
    
  • Features:

    • Secure input management for secrets and API keys
    • Support for environment files via envFile
    • Automatic tool discovery and integration with GitHub Copilot's agent mode
    • Command palette integration for server management
    • Support for both local (stdio) and remote (SSE/HTTP) servers
  • Limitations:

    • MCP support requires VS Code 1.99 or later
    • Currently in preview status
    • Only supports tools (not resources)
  • Notes:

    • Use .vscode/mcp.json for workspace-specific configurations
    • Servers can be managed via Command Palette (MCP: List Servers)
    • Tools can be toggled on/off in the chat interface
    • Supports automatic discovery of MCP servers from other tools
    • Includes built-in troubleshooting and logging

Windsurf

  • Transports: stdio, /sse

  • Config:

    • Global: ~/.codeium/windsurf/mcp_config.json
    • Workspace: .windsurf/mcp.json
  • Configuration Example:

    {
      "mcpServers": {
        "github": {
          "command": "npx",
          "args": ["-y", "@modelcontextprotocol/server-github"],
          "env": {
            "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
          }
        }
      }
    }
    
  • Features:

    • Plugin Store integration for easy server management
    • Support for both stdio and SSE transport types
    • Environment variable support for authentication
    • Native MCP integration with Cascade
  • Limitations:

    • Maximum of 100 tools across all MCP servers
    • Only supports tools (not prompts)
    • Custom /sse transport type (not standard sse)
  • Notes:

    • For /sse servers, URL must end with /sse (e.g., https://server-url/sse)
    • Tools can be enabled/disabled individually via the UI
    • Refresh required after adding new plugins
    • Official plugins are verified with a blue checkmark
    • No liability assumed for MCP tool call failures

Transport Types

stdio

Local process execution. Command + args + environment variables.

{
  "name": "local-server",
  "transport": "stdio",
  "command": "python",
  "args": ["-m", "my_mcp_server"],
  "env": {"API_KEY": "your-key"}
}

SSE (Server-Sent Events)

Remote HTTP connection with event streaming.

{
  "name": "remote-service",
  "transport": "sse",
  "url": "https://api.example.com/mcp"
}

SSE (Windsurf) (/sse)

Windsurf's custom SSE implementation with these key differences:

  • Uses /sse as the transport type (instead of sse)
  • Requires serverUrl parameter (not url)
  • URL must end with /sse
{
  "name": "windsurf-service",
  "transport": "/sse",
  "serverUrl": "https://api.example.com/sse"
}

HTTP

Standard HTTP request/response.

{
  "name": "api-service",
  "transport": "http",
  "url": "http://localhost:8000/mcp"
}

Note: When adding a server through the MCP Server Manager, these differences are handled automatically based on the selected editor.

Server Protection

Prevents accidental deletion of critical servers through the UI only.

Protected by default: mcp-server-time and other system servers Protection scope: List/Search/Remove commands only Not protected: Raw config editor, manual file editing, external tools

Don't rely on this if you're editing configs directly. You break it, you own it.

Configuration Files

EditorGlobalWorkspace
Cursor~/.cursor/mcp.json.cursor/mcp.json
VS Code~/Library/Application Support/Code/User/settings.json.vscode/settings.json
Windsurf~/.codeium/windsurf/mcp_config.json.windsurf/mcp.json

Troubleshooting

  • Extension not loading: Check Raycast version ≥1.50.0, restart Raycast
  • Servers missing: Verify config files exist, check JSON syntax, verify permissions
  • Connection failures: Test server accessibility, verify commands work, check environment variables

Issues | Discussions

Contributing

Code works but could be much cleaner. PRs welcome.

Needs work:

  • Refactoring (it's messy)
  • Bug fixes
  • New editor support
  • Error handling
  • Tests

Fork, fix, PR.

License

MIT License - see LICENSE


Reviews

No reviews yet

Sign in to write a review