pd — CLI и MCP-сервер для Pixeldrain

go-pixeldrain

Команда pd загружает файлы в Pixeldrain, собирает альбомы и скачивает ссылки, а встроенный MCP-сервер делает то же для агента

  • 74 ★ репозитория
  • Последний коммит
MCP-сервер

Расширенный доступ

Почему такой уровень

  • Агент отправляет локальные файлы на внешний сервис и получает публичную ссылку
  • Ключ API Pixeldrain привязывает загрузки и скачивания к аккаунту
Все причины и проверки

jkawamoto/go-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-серверШирокий доступ2,1 тыс.Звезды репозитория

Самостоятельно размещаемый MCP-сервер и веб-приложение хранят проект графом задач, который делят люди и агенты.

MCP-серверШирокий доступ200Звезды репозитория

Свой трекер задач и вики на Cloudflare с MCP: 126 инструментов, аренда задач и блокировка файлов для нескольких агентов

MCP-серверШирокий доступ66Звезды репозитория

Личный дневник по почте с удаленным MCP-сервером: Claude ищет записи, анализирует их и создает новые после входа через OAuth

MCP-серверШирокий доступ81Звезды репозитория

Консольный клиент личного OneDrive с командами ls, cp, grep и mcp. Режим mcp дает агенту читать файлы диска без права записи.

MCP-серверРасширенный доступ179Звезды репозитория

MCP-сервер для Redmine: задачи, вики, учет времени и файлы, режим только чтения и вход через OAuth2 для каждого пользователя

MCP-серверШирокий доступ92Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
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-библиотеки.

Бейдж для README

Сообщить о проблеме