AppImage: где solidcraft-cli для MCP?

Проверено на Debian Linux с SolidCraft v0.22.0 (solidcraft-0.22.0-linux-x86_64.AppImage и соответствующими .tar.gz / .deb из GitHub Releases). Лаунчер первого запуска и имена команд Snap/Flatpak из официальной документации MCP.

Коротко: после одного запуска AppImage записывает небольшой лаунчер solidcraft-cli в ~/.local/bin (MCP-клиенты могут вызвать его по имени, если эта папка в вашем PATH). Точка входа AppImage по-прежнему GUI (solidcraft) и не принимает mcp как полезный CLI-режим. Извлечение solidcraft-cli из squashfs остаётся допустимой альтернативой; .tar.gz / .deb кладут оба бинарника прямо на диск.

Лаунчер после первого запуска в ~/.local/bin

Официальная документация MCP: при первом запуске AppImage пишет небольшой лаунчер solidcraft-cli в ~/.local/bin. Убедитесь, что ~/.local/bin в PATH оболочки, перезапустите MCP-клиент и используйте solidcraft-cli mcp как с любым другим пакетом. Deb, rpm и FreeBSD уже ставят CLI в /usr/bin; установщик Windows и Homebrew cask тоже добавляют его в PATH; приложение macOS линкует в /opt/homebrew/bin или /usr/local/bin при старте.

Что мы увидели (реальный вывод терминала)

Запуск AppImage напрямую:

$ ./solidcraft-0.22.0-linux-x86_64.AppImage --version
solidcraft 0.22.0

$ ./solidcraft-0.22.0-linux-x86_64.AppImage --help
usage: solidcraft [--control PORT] [--sample] [--crash-log] [--safe-mode] [design.solidcraft | part.step]

То есть argv0 — десктопное приложение, не CLI. После --appimage-extract:

$ ./solidcraft-0.22.0-linux-x86_64.AppImage --appimage-extract
$ ls squashfs-root/usr/bin/
solidcraft
solidcraft-cli
solvecraft-cli

$ ./squashfs-root/usr/bin/solidcraft-cli --version
solidcraft-cli 0.22.0

$ ./squashfs-root/usr/bin/solidcraft-cli mcp
solidcraft mcp: files limited to …/recovery, /tmp/solidcraft-mcp-… and the open design's folder …
# (stdio MCP server started; Ctrl-C / close stdin to stop)

Переименование/symlink AppImage в solidcraft-cli по-прежнему сообщал solidcraft 0.22.0 (GUI-бинарник) — трюк с argv0 не превращает AppImage в CLI. Предпочитайте лаунчер после первого запуска в ~/.local/bin или путь извлечения ниже.

Извлечение AppImage (альтернатива) для MCP

  1. Скачайте solidcraft-0.22.0-linux-x86_64.AppImage с Releases.
  2. chmod +x для AppImage (необязательно, если только извлекаете).
  3. Извлеките один раз: ./solidcraft-…AppImage --appimage-extract
  4. Укажите MCP-клиентам абсолютный путь …/squashfs-root/usr/bin/solidcraft-cli.
chmod +x solidcraft-0.22.0-linux-x86_64.AppImage
./solidcraft-0.22.0-linux-x86_64.AppImage --appimage-extract
./squashfs-root/usr/bin/solidcraft-cli mcp

Лучше tar.gz или deb? Оба содержат CLI

Раскладка Linux .tar.gz — bin/solidcraft + bin/solidcraft-cli (проверено). .deb ставит ту же пару в /usr/bin/ (dpkg-deb -c показывает оба). Для машин только под MCP проще всего tarball:

tar -xzf solidcraft-0.22.0-linux-x86_64.tar.gz
./solidcraft-0.22.0-linux-x86_64/bin/solidcraft-cli --version
./solidcraft-0.22.0-linux-x86_64/bin/solidcraft-cli mcp

Snap

Официальная документация: после sudo snap install solidcraft CLI намеренно остаётся вне PATH как solidcraft.cli (не solidcraft-cli). Пример: solidcraft.cli --version / solidcraft.cli mcp. Используйте solidcraft.cli как command MCP-клиента с аргументом mcp.

Flatpak

Flatpak тоже намеренно держит CLI вне PATH. Официальная команда:

flatpak run --command=solidcraft-cli ai.storyteller.solidcraft mcp

В конфиге MCP-клиента задайте command как flatpak и args как ["run", "--command=solidcraft-cli", "ai.storyteller.solidcraft", "mcp"] (плюс опциональные флаги вроде --allow-path).

Claude Code, Claude Desktop, Cursor

Предпочитайте solidcraft-cli по имени, когда он в PATH (лаунчер AppImage, deb, tarball). Иначе — абсолютный путь к извлечённому или tarball CLI.

Claude Code

claude mcp add solidcraft -- /ABS/PATH/squashfs-root/usr/bin/solidcraft-cli mcp

Или .mcp.json:

{
  "mcpServers": {
    "solidcraft": {
      "command": "/ABS/PATH/squashfs-root/usr/bin/solidcraft-cli",
      "args": ["mcp"]
    }
  }
}

Claude Desktop (headless)

{
  "mcpServers": {
    "solidcraft": {
      "command": "/ABS/PATH/squashfs-root/usr/bin/solidcraft-cli",
      "args": ["mcp"]
    }
  }
}

Cursor

{
  "mcpServers": {
    "solidcraft": {
      "type": "stdio",
      "command": "/ABS/PATH/squashfs-root/usr/bin/solidcraft-cli",
      "args": ["mcp", "--allow-path", "/absolute/path/to/your/designs"]
    }
  }
}

Для tarball-установок используйте …/solidcraft-0.22.0-linux-x86_64/bin/solidcraft-cli. Для Snap — имя команды solidcraft.cli. Для Flatpak — flatpak с run --command=solidcraft-cli ai.storyteller.solidcraft mcp.

Назад к уроку MCP · руководству по установке.