pd — CLI и MCP-сервер для Pixeldrain
go-pixeldrain
Команда pd загружает файлы в Pixeldrain, собирает альбомы и скачивает ссылки, а встроенный MCP-сервер делает то же для агента
- 74 ★ репозитория
- Последний коммит
Расширенный доступ
Почему такой уровень
- Агент отправляет локальные файлы на внешний сервис и получает публичную ссылку
- Ключ API Pixeldrain привязывает загрузки и скачивания к аккаунту
Установка
- Работает в
Ручная установка
brew tap jkawamoto/pixeldrain && brew install pixeldrainДля macOS и Linux.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Агент отправляет локальные файлы на внешний сервис и получает публичную ссылку
- Ключ API Pixeldrain привязывает загрузки и скачивания к аккаунту
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
pd — утилита командной строки, MCP-сервер и Go-библиотека для файлообменника Pixeldrain. `pd upload artwork.png` загружает файл и печатает ссылку вида pixeldrain.com/u/xxxxxx, а `--album "Имя"` склеивает несколько файлов в один альбом. `pd download` скачивает файл или весь альбом с флагом `--all`. Данные можно подавать с stdin и сразу заливать каталоги: `git diff | pd upload -- -:patch.diff` и `tar zcf - ~/Projects/my-app | pd upload -- -:my-app.tar.gz` обходятся без временных файлов. Перед загрузкой файл шифруется на стороне клиента ключами age или публичными ключами SSH. Команда `pd mcp` запускает MCP-сервер с инструментами `upload_files`, `upload_text`, `download_file` и `list_recipients`. Агент загружает картинки, архивы и текст и получает ссылку. Без ключа API файлы остаются анонимными, с `PIXELDRAIN_API_KEY` они попадают в аккаунт.
Для кого. Тем, кто часто делится логами, диффами и картинками, сгенерированными агентом, и хочет получать короткую ссылку прямо из терминала или чата.
Подходит, если
- Агент сгенерировал набор картинок, и их надо отдать заказчику одним альбомом по ссылке
- Длинный лог сборки не влезает в чат: `cat build.log | pd upload -- -:build.log`
- Каталог проекта нужно отправить коллеге архивом без временных файлов на диске
- Файлы идут через сервис, которому не доверяете, и их шифруют ключом age до загрузки
Не подходит, если
- Нужно закрытое хранилище команды: Pixeldrain отдает файлы по публичной ссылке
- Нужна синхронизация папок в обе стороны, как в облачных дисках
- Не хочется передавать файлы внешнему сервису без шифрования
Пример запроса к агенту
Загрузи эти три картинки в Pixeldrain одним альбомом «Neon Dreams» и дай ссылку.MCP
- Транспорт
- stdio
- Авторизация
- ключ необязателен
Переменные окружения
PIXELDRAIN_API_KEYсекрет- Ключ API Pixeldrain для привязки загрузок к аккаунту
Ограничения
Файлы хранятся на сервисе Pixeldrain, а ссылка открывается у любого, кто ее получил, поэтому конфиденциальное шифруют ключом age или SSH до загрузки. Без `PIXELDRAIN_API_KEY` загрузки анонимны и не привязаны к аккаунту.
Для расшифровки скачанных `.age` в MCP запускают `pd mcp --identity-file /path/to/key`; пароль к SSH-ключу MCP не спрашивает, нужен незащищенный ключ. Каталоги с публичными ключами получателей задают флагами `--age-recipients-dir` и `--ssh-recipients-dir`. Проект независимый и не связан с Pixeldrain.
Как отключить. Удалите сервер `pixeldrain` из конфигурации клиента, а саму утилиту снимите через `brew uninstall pixeldrain`. Загруженные файлы удаляются на стороне Pixeldrain.
Частые вопросы
Как поставить pd на macOS?
Через Homebrew: `brew tap jkawamoto/pixeldrain`, затем `brew install pixeldrain`. Другой путь — `go install github.com/jkawamoto/go-pixeldrain/cmd/pd@latest`.
Как подключить pd к Claude Desktop или Cursor?
В `claude_desktop_config.json` добавьте сервер `pixeldrain` с командой `pd` и аргументом `mcp`, ключ `PIXELDRAIN_API_KEY` в env необязателен.
Нужен ли аккаунт Pixeldrain?
Нет, загрузки работают анонимно. Ключ API из настроек Pixeldrain привязывает файлы к вашему аккаунту.
Как зашифровать файл перед загрузкой?
Ключами age или публичными ключами SSH: инструмент шифрует файл на клиенте, а расшифровка скачанных `.age` идет через `--identity-file`.
Что делает `list_recipients`?
Показывает идентификаторы публичных ключей из каталогов `--age-recipients-dir` и `--ssh-recipients-dir`, чтобы выбрать получателей для зашифрованной загрузки.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
MCP-серверыТрекер задач Paca на вашем сервере, где ИИ-агенты работают участниками Scrum-команды наравне с людьми
Самостоятельно размещаемый MCP-сервер и веб-приложение хранят проект графом задач, который делят люди и агенты.
Свой трекер задач и вики на Cloudflare с MCP: 126 инструментов, аренда задач и блокировка файлов для нескольких агентов
Личный дневник по почте с удаленным MCP-сервером: Claude ищет записи, анализирует их и создает новые после входа через OAuth
Консольный клиент личного OneDrive с командами ls, cp, grep и mcp. Режим mcp дает агенту читать файлы диска без права записи.
Redmine MCP Server — задачи и время
Redmine MCP Server
MCP-сервер для Redmine: задачи, вики, учет времени и файлы, режим только чтения и вход через OAuth2 для каждого пользователя
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| pd — CLI и MCP-сервер для Pixeldrain (эта карточка) | нет | ключ необязателен | 74 | |
| Timeweb Cloud S3 MCP и CLI: объем бэкапов и архивы | нет | API-ключ | 0 | работает с S3-хранилищем Timeweb; pd отправляет файлы в Pixeldrain по ссылке |
| BearDrive | нет | 62 | файловое хранилище для агентов; pd обменивается файлами через публичные ссылки Pixeldrain |
Коротко о README
README ведет от быстрого старта (загрузка, альбомы, скачивание) к настройке MCP для Claude Desktop и Cursor, работе со stdin и шифрованию age. В конце есть установка через Homebrew, Go и готовые бинарники и пример использования Go-библиотеки.