Skip to main content
Glama
             _   _ _   _ _____     _______ ____  ____    _    _     
            | | | | \ | |_ _\ \   / / ____|  _ \/ ___|  / \  | |    
            | | | |  \| || | \ \ / /|  _| | |_) \___ \ / _ \ | |    
            | |_| | |\  || |  \ V / | |___|  _ < ___) / ___ \| |___ 
             \___/|_| \_|___|  \_/  |_____|_| \_\____/_/   \_\_____|
                                                          
      __  __  ____ ____    ___ _   _ ____ _____  _    _     _     _____ ____  
     |  \/  |/ ___|  _ \  |_ _| \ | / ___|_   _|/ \  | |   | |   | ____|  _ \ 
     | |\/| | |   | |_) |  | ||  \| \___ \ | | / _ \ | |   | |   |  _| | |_) |
     | |  | | |___|  __/   | || |\  |___) || |/ ___ \| |___| |___| |___|  _ < 
     |_|  |_|\____|_|     |___|_| \_|____/ |_/_/   \_\_____|_____|_____|_| \_\

License: MIT npm version MCP Compatible npm downloads

🚀 НОВИНКА: Universal MCP Installer v1.0.0 — Полная переработка cursor-mcp-installer. Теперь поддерживает 6 ИИ-клиентов (Claude Desktop, Cursor, VS Code, OpenClaw, Claude Code, ChatGPT), кроссплатформенность (macOS, Windows, Linux), настоящую проверку рукопожатия MCP и фирменную веб-панель управления. Обновлено до MCP SDK 1.29.0.

🖥️ Доступна веб-панель управления! Запустите с помощью npx universal-mcp-installer --ui, чтобы управлять всем через визуальный интерфейс. См. Использование панели управления ниже.

Краткое руководство

Шаг 1: Установка MCP-сервера (одной командой)

npx universal-mcp-installer install @modelcontextprotocol/server-memory

Это всё. Установщик определяет, какие ИИ-клиенты у вас установлены, и записывает правильную конфигурацию для каждого из них.

Шаг 2: Или добавьте как MCP-инструмент (позвольте вашему ИИ устанавливать другие MCP-серверы)

Добавьте это в конфигурацию MCP вашего ИИ-клиента:

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "MCP Installer": {
      "command": "npx",
      "type": "stdio",
      "args": ["-y", "universal-mcp-installer"]
    }
  }
}

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "MCP Installer": {
      "command": "npx",
      "args": ["-y", "universal-mcp-installer"]
    }
  }
}

VS Code (.vscode/mcp.json)

{
  "servers": {
    "mcpInstaller": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "universal-mcp-installer"]
    }
  }
}

Шаг 3: Перезапустите ваш ИИ-клиент

Закройте и снова откройте ваш ИИ-клиент, чтобы применить изменения конфигурации.

Шаг 4: Попросите ваш ИИ установить серверы

Install the filesystem MCP server

или

Install the web search MCP server

Установщик предоставляет три инструмента, которые может вызвать ваш ИИ:

Инструмент

Описание

detect_system

Возвращает ОС, архитектуру, доступные среды выполнения и обнаруженные ИИ-клиенты

install_mcp_server

Устанавливает сервер по имени пакета, git-ссылке или локальному пути для выбранных клиентов

validate_mcp_server

Проверяет сервер через рукопожатие MCP и возвращает результат

Related MCP server: hyper-mcp

Использование панели управления

Запустите визуальный интерфейс:

npx universal-mcp-installer --ui

Это откроет веб-интерфейс в вашем браузере по адресу http://localhost:3939:

1. Панель системы — Верхний раздел автоматически определяет вашу ОС и все доступные среды выполнения (Node, npm, uvx, Python, git), чтобы вы могли сразу увидеть, что доступно на вашем компьютере.

2. ИИ-клиенты — Каждый обнаруженный клиент получает карточку с указанием его имени, пути к файлу конфигурации и количества уже настроенных MCP-серверов. Используйте переключатель на каждой карточке, чтобы включить или исключить его из следующей установки. Неустановленные клиенты отображаются серым цветом.

3. Установка — Введите имя пакета (npm-пакет, git-ссылка или локальный путь), выберите метод из выпадающего списка (Auto / npm / uvx / git / local) и нажмите зеленую кнопку Install. Установщик разрешает пакет, записывает конфигурацию в каждый выбранный клиент и проверяет через рукопожатие MCP.

4. Прогресс и результаты — Временная шкала в реальном времени показывает каждый шаг (разрешение, запись конфигурации, проверка) с обновлениями статуса через WebSocket. После завершения сетка отчета о работоспособности показывает результат (пройдено/не пройдено) для каждого клиента с количеством инструментов, задержкой и подсказками по восстановлению в случае сбоев.

Поддерживаемые клиенты

Клиент

Ключ конфигурации

Платформы

Claude Desktop

mcpServers

macOS, Windows, Linux

Cursor

mcpServers

macOS, Windows, Linux

VS Code (Copilot)

servers

Все (на уровне рабочей области)

OpenClaw / NemoClaw

mcp.servers

macOS, Linux

Claude Code

mcpServers

macOS, Windows, Linux

ChatGPT Desktop

HTTP Bridge

Все (через локальный HTTP-прокси)

Где находятся файлы конфигурации?

Клиент

macOS

Windows

Linux

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json

%APPDATA%\Claude\claude_desktop_config.json

~/.config/Claude/claude_desktop_config.json

Cursor

~/.cursor/mcp.json

%USERPROFILE%\.cursor\mcp.json

~/.cursor/mcp.json

VS Code

.vscode/mcp.json (рабочая область)

.vscode/mcp.json (рабочая область)

.vscode/mcp.json (рабочая область)

OpenClaw

~/.openclaw/openclaw.json

-

~/.openclaw/openclaw.json

Claude Code

.mcp.json (корень проекта)

.mcp.json (корень проекта)

.mcp.json (корень проекта)

Функции

  • Автоопределение установленных ИИ-клиентов и путей к их конфигурациям

  • Определение среды выполнения для Node.js, npm, npx, uvx, Python и git

  • Несколько методов установки: npm, uvx, git clone, локальный путь

  • Безопасность конфигурации: создание резервных копий существующих конфигураций, атомарная запись, отсутствие перезаписи несвязанных ключей

  • Настоящая проверка рукопожатия MCP: запуск сервера, отправка initialize/initialized, вызов tools/list

  • Отчеты о работоспособности: структурированные данные (пройдено/не пройдено) для каждого клиента с количеством инструментов, задержкой и подсказками по восстановлению

  • Восстановление после известных проблем: 13+ кодов ошибок с практическими рекомендациями по исправлению

  • Кроссплатформенность: обертка Windows cmd /c npx, пути Linux XDG, поддержка macOS launchd

  • Шаблоны служб: генерация конфигураций для launchd (macOS), systemd (Linux) или планировщика задач (Windows)

  • Веб-панель управления: фирменный React UI с обновлениями прогресса через WebSocket в реальном времени

Предварительные требования

  • Node.js v18 или новее

  • Установлен хотя бы один поддерживаемый ИИ-клиент

Опционально:

  • uv/uvx для Python MCP-серверов

  • git для установки из репозиториев

Справочник CLI

# Detect your system, runtimes, and installed AI clients
npx universal-mcp-installer detect

# Install an MCP server to all detected clients
npx universal-mcp-installer install @modelcontextprotocol/server-memory

# Install to specific clients only
npx universal-mcp-installer install my-server --clients cursor,claude-desktop

# Install with environment variables
npx universal-mcp-installer install my-server --env API_KEY=sk-123

# Install from a git repository
npx universal-mcp-installer install https://github.com/user/mcp-server.git

# Install from a local directory
npx universal-mcp-installer install ./my-local-server --method local

# Validate an MCP server by running the handshake
npx universal-mcp-installer validate npx -y @modelcontextprotocol/server-memory

# Launch the web dashboard
npx universal-mcp-installer --ui

Опции CLI

Опция

Описание

--clients <ids>

Идентификаторы клиентов через запятую: cursor, claude-desktop, vscode, openclaw, claude-code, chatgpt

--method <method>

Метод установки: auto, npm, uvx, git, local

--env KEY=value

Переменная окружения (можно повторять)

--args <arg>

Аргумент сервера (можно повторять)

--no-validate

Пропустить проверку рукопожатия MCP после установки

--port <number>

Порт панели управления (по умолчанию: 3939)

API-эндпоинты (режим панели управления)

При запуске с --ui доступен локальный API:

Эндпоинт

Метод

Описание

/api/system

GET

Системная информация, среды выполнения, обнаруженные клиенты

/api/clients

GET

Детали обнаружения клиентов

/api/install

POST

Запуск установки

/api/validate

POST

Запуск проверки рукопожатия MCP

/ws

WebSocket

События прогресса в реальном времени

Разработка

# Clone and install
git clone https://github.com/matthewdcage/cursor-mcp-installer.git
cd cursor-mcp-installer
npm install

# Build the server
npm run build

# Build the dashboard
cd dashboard && npm install && npm run build && cd ..

# Run tests (real MCP handshake, no mocks)
npm test

# Watch mode
npm run dev

Структура проекта

src/
  index.ts               MCP server entry (stdio)
  cli.ts                 CLI entry (npx)
  detect/                OS, runtime, client detection
  clients/               Config writers per AI client
  install/               Package resolution (npm, uvx, git, local)
  validate/              MCP handshake + health reports
  api/                   HTTP/WebSocket API for dashboard
  utils/                 Config I/O, logging, errors, platform utils
dashboard/               React + Vite + Tailwind web UI
tests/                   Unit, integration, E2E tests
docs/                    Localized official MCP docs

Журнал изменений

v1.0.0 (Универсальная переработка)

  • Полная переработка с cursor-mcp-installer (v0.1.3) на universal-mcp-installer

  • Обновление MCP SDK с ^1.0.1 до ^1.29.0 (28 минорных версий)

  • Добавлена поддержка 6 ИИ-клиентов (ранее только Cursor)

  • Добавлена настоящая проверка рукопожатия MCP (ранее отсутствовала)

  • Добавлена кроссплатформенная поддержка с путями конфигурации для конкретных платформ

  • Добавлен CLI с командами detect, install, validate

  • Добавлена веб-панель управления с React + Tailwind + WebSocket

  • Добавлено 50+ реальных тестов (ранее было echo "No tests specified")

  • Добавлена база данных восстановления после известных ошибок

  • Добавлена генерация шаблонов служб (launchd, systemd, планировщик задач)

  • Заменены rimraf/spawn-rx на встроенные средства Node

  • Исправлено: require.resolve в контексте ESM

  • Исправлено: console.error/console.warn повреждали поток JSON-RPC stdio

  • Полный исходный код на TypeScript (ранее был только скомпилированный JS-артефакт)

Лицензия

MIT

Available Tools

3 tools
add_to_cursor_configC

Add any MCP server to Cursor's configuration

ParametersJSON Schema
NameRequiredDescriptionDefault
argsNoArguments to pass to the command
commandNoCommand to execute (e.g., node, npx, python)
envNoEnvironment variables to set, delimited by =
nameYesDisplay name for the MCP server in Cursor
pathNoPath to the MCP server on disk (optional, used instead of command+args)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states the action ('Add') but doesn't explain what this entails—whether it modifies configuration files, requires specific permissions, has side effects, or what happens on success/failure. For a configuration mutation tool, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence that efficiently conveys the core purpose without unnecessary words. It's front-loaded and wastes no space, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool that mutates configuration (implied by 'Add') with 5 parameters, no annotations, and no output schema, the description is insufficient. It doesn't address behavioral aspects like permissions, side effects, or error handling, nor does it help differentiate from sibling tools, leaving the agent with incomplete context for safe and effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 5 parameters thoroughly. The description adds no additional parameter semantics beyond what's in the schema, such as explaining relationships between parameters (e.g., 'path' vs 'command+args') or usage examples. Baseline 3 is appropriate when schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Add') and resource ('any MCP server to Cursor's configuration'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'install_local_mcp_server' or 'install_repo_mcp_server', which likely handle more specific installation scenarios.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus its siblings ('install_local_mcp_server', 'install_repo_mcp_server'), nor does it mention any prerequisites, alternatives, or exclusion criteria. This leaves the agent without context for tool selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

install_local_mcp_serverC

Install an MCP server whose code is cloned locally on your computer

ParametersJSON Schema
NameRequiredDescriptionDefault
argsNoThe arguments to pass along
envNoThe environment variables to set, delimited by =
pathYesThe path to the MCP server code cloned on your computer

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the action is 'Install', implying a write operation, but doesn't cover permissions needed, side effects (e.g., system changes), error handling, or output format. This leaves significant gaps for a tool that likely modifies the local environment.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is front-loaded and appropriately sized, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of an installation tool with no annotations and no output schema, the description is insufficient. It lacks details on behavioral traits (e.g., what 'Install' entails operationally), prerequisites, or expected outcomes, leaving the agent with incomplete context for safe and effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all three parameters (path, args, env) with clear descriptions. The description adds no additional parameter semantics beyond what's in the schema, such as examples or constraints, resulting in the baseline score for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Install') and the resource ('an MCP server whose code is cloned locally on your computer'), making the purpose understandable. However, it doesn't explicitly differentiate from sibling tools like 'install_repo_mcp_server' beyond the 'cloned locally' detail, which is implied but not contrasted.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'install_repo_mcp_server' or 'add_to_cursor_config'. It mentions the resource is 'cloned locally', which hints at a prerequisite, but lacks explicit when/when-not instructions or named alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

install_repo_mcp_serverC

Install an MCP server via npx or uvx

ParametersJSON Schema
NameRequiredDescriptionDefault
argsNoThe arguments to pass along
envNoThe environment variables to set, delimited by =
nameYesThe package name of the MCP server

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but lacks behavioral details. It states the installation action but doesn't disclose critical traits like required permissions, side effects (e.g., system changes), error handling, or output format. This leaves significant gaps for an agent to understand the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero waste. It's front-loaded with the core action and methods, making it easy to parse quickly without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of installing software (a mutation operation with potential side effects), no annotations, and no output schema, the description is incomplete. It lacks details on prerequisites, success/failure outcomes, and behavioral context, making it insufficient for safe and effective tool invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all parameters (name, args, env). The description adds no additional meaning beyond what the schema provides, such as examples or usage context for parameters. Baseline 3 is appropriate as the schema handles parameter documentation adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Install') and resource ('MCP server'), specifying the installation methods ('via npx or uvx'). However, it doesn't differentiate from sibling tools like 'install_local_mcp_server', which likely handles local installations versus this tool's package-based approach.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives is provided. The description mentions installation methods but doesn't clarify scenarios where 'install_repo_mcp_server' is preferred over 'install_local_mcp_server' or other siblings, leaving usage context ambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.5/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: adding servers to config, installing from local code, and installing from remote repositories. There is no overlap or ambiguity between these three installation-related operations.

Naming Consistency4/5

The tools follow a consistent verb_object pattern (add_to..., install_..., install_...), though 'add_to_cursor_config' uses a prepositional phrase while the others use adjective-noun modifiers. This minor deviation doesn't significantly impact readability.

Tool Count5/5

Three tools is perfectly appropriate for an MCP installer server. Each tool covers a distinct installation scenario (config addition, local install, remote install), and there are no missing or redundant tools for this focused purpose.

Completeness5/5

The toolset provides complete coverage for MCP server installation workflows: adding to configuration, installing from local sources, and installing from remote repositories. There are no obvious gaps in the installation lifecycle for this domain.

Maintenance

ActivityInactive
ResponsivenessUnresponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that provides detailed information about your development environment to the Cursor code editor, enabling more context-aware assistance.
    7
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    A configurable MCP server wrapper for Cursor that eliminates tool count limits when using the Model Context Protocol.
    21
    10
    GPL 3.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    A production-ready development scaffold for MCP servers, optimized for Cursor IDE with built-in tools, resources, and prompts that enables quick development of Model Context Protocol servers with 5-minute startup and 10-minute development capabilities.
    26
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/matthewdcage/cursor-mcp-installer'

If you have feedback or need assistance with the MCP directory API, please join our Discord server