Skip to main content
Glama

rustpad-mcp

CI npm downloads container node license docs

Сервер Model Context Protocol для Rustpad — эффективного, минималистичного, самостоятельно размещаемого совместного текстового редактора.

Он предоставляет ИИ-ассистенту доступ на чтение и запись к падам экземпляра Rustpad. Чтение выполняется через HTTP API Rustpad; запись использует протокол WebSocket с операционными преобразованиями, поэтому целевые правки (append_to_document, replace_in_document) корректно сливаются с тем, что одновременно вводят люди-соавторы, а не перезаписывают их изменения. Пока сервер редактирует пад, он виден всем в паде как соавтор с именем rustpad-mcp.

📖 Полная документация на rustpad-mcp.ni-c.de

Демонстрация rustpad-mcp через MCP inspector

Требования

  • Доступный экземпляр Rustpad (самостоятельно размещённый; сервер не имеет состояния и не требует учётных данных — в Rustpad нет аутентификации)

  • Node.js >= 22 или Docker

Related MCP server: SSH MCP Server

Конфигурация

Переменная

Обязательная

Описание

RUSTPAD_URL

да

Базовый URL экземпляра, например https://rustpad.example.net

RUSTPAD_READ_ONLY

нет

true регистрирует только инструменты чтения

RUSTPAD_INSECURE_TLS

нет

true принимает самоподписанные сертификаты (только для этого соединения)

Один и тот же URL обслуживает HTTP API, конечную точку WebSocket и ссылки для совместного доступа, возвращаемые инструментами (<RUSTPAD_URL>/#<pad-id>). Логические значения должны быть точно true. Сервер запускается и выводит список своих инструментов без конфигурации; каждый вызов затем завершается с инструкциями по настройке.

Помните, что такое Rustpad: пады эфемерны (теряются при перезапуске сервера и через 24 часа бездействия, если экземпляр не запущен с SQLITE_URI) и любой, кто знает идентификатор пада, может читать и писать в него. Не помещайте секреты в пады.

Установка

Claude Code

claude mcp add rustpad --env RUSTPAD_URL=https://rustpad.example.net -- npx rustpad-mcp

Claude Desktop

{
  "mcpServers": {
    "rustpad": {
      "command": "npx",
      "args": ["rustpad-mcp"],
      "env": {
        "RUSTPAD_URL": "https://rustpad.example.net"
      }
    }
  }
}

Codex

~/.codex/config.toml:

[mcp_servers.rustpad]
command = "npx"
args = ["-y", "rustpad-mcp"]

[mcp_servers.rustpad.env]
RUSTPAD_URL = "https://rustpad.example.net"

Docker

docker run -i --rm -e RUSTPAD_URL=https://rustpad.example.net ghcr.io/ni-c/rustpad-mcp

Инструменты

Инструмент

Описание

get_document

Прочитать содержимое пада в виде обычного текста

get_document_info

Длина содержимого, ревизия, язык и пользователи, редактирующие сейчас

get_stats

Статистика сервера (время работы, количество документов)

create_document

Создать пад (случайный или выбранный идентификатор), опционально с содержимым и языком

set_document

Заменить всё содержимое — для непустых падов требуется токен подтверждения

append_to_document

Добавить текст; параллельные правки в других местах сохраняются

replace_in_document

Точный поиск и замена через OT; требуется уникальное совпадение, если не replace_all

set_language

Установить язык подсветки синтаксиса Monaco

При RUSTPAD_READ_ONLY=true регистрируются только первые три.

Безопасность

  • Содержимое пада доступно для записи всем и поэтому не заслуживает доверия: каждый результат чтения предваряется маркером, сообщающим модели, что это данные, а не инструкции.

  • Замена непустого пада необратима и защищена одноразовым токеном подтверждения, который появляется только в предыдущем результате инструмента.

  • Результаты инструментов ограничены по размеру; тела ошибок от вышестоящих систем очищаются перед передачей модели.

  • RUSTPAD_INSECURE_TLS ослабляет проверку сертификатов только для настроенного соединения, а не для всего процесса.

Разработка

npm install
npm run lint && npm run build && npm test

Набор тестов общается с эмуляцией rustpad-server в памяти (включая OT-преобразование параллельных правок) через реальный протокол MCP; живой экземпляр не требуется. Диаграмма архитектуры и социальная карта генерируются — редактируйте docs/assets/architecture.source.svg и запускайте npm run assets, никогда не отредактированные копии.

Релизы

Релизы управляются тегами. Обновите package.json, переместите заметки [Unreleased] в CHANGELOG.md под новую версию, закоммитьте, затем:

git tag -s vX.Y.Z -m "vX.Y.Z"
git push origin main vX.Y.Z

Рабочий процесс релиза публикует в npm через Trusted Publishing (OIDC, с происхождением), отправляет образ контейнера для нескольких архитектур в GHCR, создаёт релиз на GitHub из раздела CHANGELOG и обновляет запись в официальном реестре MCP.

Лицензия

MIT © Willi Thiel

Install Server
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

  • The team layer for AI coding agents: shared contracts, collision alerts, E2EE sessions.

  • MCP-native collaborative markdown editor with real-time AI document editing

View all MCP Connectors

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/ni-c/rustpad-mcp'

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