three.ws Solana Memo Media — MCP-сервер для Claude Code: картинки
Достаёт изображения, вшитые в Solana SPL Memo, и отдаёт их ассистенту прямо в ответе. Пригодится, когда есть подпись транзакции, а не готовый файл.
claude mcp add --env SOLANA_RPC_URLS=<SOLANA_RPC_URLS> --env SOLANA_RPC_URL=<SOLANA_RPC_URL> --transport stdio solana-memo-media-mcp -- npx -y @three-ws/solana-memo-media-mcpЧто делает three.ws Solana Memo Media
Сервер читает memo-инструкции в транзакциях Solana и вытаскивает из них data URI с картинками. Работает по stdio, без ключей и только на чтение: ничего не подписывает, не отправляет и не кэширует. Вместо того чтобы вручную тащить base64-строку в конвертер, вы называете подпись транзакции и получаете проверенное изображение.
Внутри пять инструментов. extract_solana_memo_media разбирает одну транзакцию — legacy, v0 или v1 — и возвращает все поддерживаемые картинки из верхнеуровневых и вложенных memo, вместе с подписантом, слотом и версией. find_solana_memo_media просматривает недавние подписи адреса и подтягивает только те, где в сводке memo есть data URI. Ещё есть локальное декодирование уже скопированной строки, сборка многочастной надписи по одной из подписей и вывод текущей политики без обращения к сети.
Безопасность тут не для галочки. Принимаются только PNG, JPEG, WebP и GIF, причём заявленный MIME должен совпасть с сигнатурой файла. SVG и всё исполняемое отбрасывается, декодированное содержимое ограничено 262 144 байтами. Для каждого ассета возвращается SHA-256 — по нему можно сослаться на конкретный файл. Подпись memo — это произвольный текст, поэтому знак подписанта и контекст транзакции проверяйте сами. Ключ для обычной работы не нужен: сервер идёт по SOLANA_RPC_URLS, затем по SOLANA_RPC_URL, затем по публичным эндпоинтам mainnet.
Какие задачи решает
- вытащить картинку из memo по подписи транзакции
- проверить, что заявленный MIME совпадает с содержимым файла
- собрать многочастную надпись из отдельных транзакций
- найти свежие memo с изображениями по адресу
- декодировать data URI локально, без похода в сеть
Примеры запросов агенту
- Покажи картинку из Solana-транзакции
<signature>. - Найди memo с изображениями у адреса
<address>. - Собери надпись
first/1по подписи<signature>.
Как установить three.ws Solana Memo Media
Командой платформы
claude mcp add --env SOLANA_RPC_URLS=<SOLANA_RPC_URLS> --env SOLANA_RPC_URL=<SOLANA_RPC_URL> --transport stdio solana-memo-media-mcp -- npx -y @three-ws/solana-memo-media-mcpВместо <…> подставьте свои значения
Командой платформы
codex mcp add solana-memo-media-mcp --env SOLANA_RPC_URLS=<SOLANA_RPC_URLS> --env SOLANA_RPC_URL=<SOLANA_RPC_URL> -- npx -y @three-ws/solana-memo-media-mcpВместо <…> подставьте свои значения
Файл настроек
{
"mcpServers": {
"solana-memo-media-mcp": {
"command": "npx",
"args": [
"-y",
"@three-ws/solana-memo-media-mcp"
],
"env": {
"SOLANA_RPC_URLS": "<SOLANA_RPC_URLS>",
"SOLANA_RPC_URL": "<SOLANA_RPC_URL>"
}
}
}
}Вместо <…> подставьте свои значения
Файл настроек
{
"servers": {
"solana-memo-media-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@three-ws/solana-memo-media-mcp"
],
"env": {
"SOLANA_RPC_URLS": "<SOLANA_RPC_URLS>",
"SOLANA_RPC_URL": "<SOLANA_RPC_URL>"
}
}
}
}Вместо <…> подставьте свои значения
Командой платформы
gemini mcp add -e SOLANA_RPC_URLS=<SOLANA_RPC_URLS> -e SOLANA_RPC_URL=<SOLANA_RPC_URL> solana-memo-media-mcp npx -y @three-ws/solana-memo-media-mcpВместо <…> подставьте свои значения
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о three.ws Solana Memo Media
Как установить three.ws Solana Memo Media в Claude Code?
Одной командой: claude mcp add solana-memo-media-mcp -- npx -y @three-ws/solana-memo-media-mcp. Если нужны свои RPC-эндпоинты, добавьте их через --env в той же команде.
Что делает three.ws Solana Memo Media?
Читает Solana SPL Memo и возвращает изображения из data URI прямо в ответе MCP-клиенту. Пять инструментов закрывают разбор одной транзакции, поиск по адресу, локальное декодирование, сборку надписи и вывод статуса.
Какие форматы изображений принимаются?
Только PNG, JPEG, WebP и GIF, и заявленный MIME обязан совпасть с сигнатурой файла. SVG и исполняемые форматы отклоняются, размер после декодирования ограничен 262 144 байтами.