Nostr MCP Server
Сервер MCP (Model Context Protocol), который предоставляет AI-моделям возможность взаимодействовать с децентрализованной социальной сетью Nostr. Позволяет публиковать заметки и отправлять Lightning-запросы (zap).
Возможности
- Публикация заметок в сеть Nostr
- Подключение к нескольким ретрансляторам
- API, совместимое с MCP для интеграции с AI
- Отправка Lightning zaps (в разработке)
- Поддержка SSE для реального времени
Установка
Через Smithery (для Claude Desktop)
npx -y @smithery/cli install @AbdelStark/nostr-mcp --client claude
Вручную
- Клонируйте репозиторий:
git clone https://github.com/AbdelStark/nostr-mcp
cd nostr-mcp
- Установите зависимости:
npm install
- Создайте файл
.env (можно скопировать .env.example):
LOG_LEVEL=debug
NODE_ENV=development
NOSTR_RELAYS=wss://relay.damus.io,wss://relay.primal.net,wss://nos.lol
NOSTR_NSEC_KEY=your_nsec_key_here
SERVER_MODE=sse
PORT=9000
Конфигурация
LOG_LEVEL — уровень логирования (debug, info, warn, error)
NODE_ENV — окружение (development, production)
NOSTR_RELAYS — список ретрансляторов через запятую
NOSTR_NSEC_KEY — ваш приватный ключ Nostr (начинается с nsec)
SERVER_MODE — режим работы: stdio или sse
PORT — порт для режима SSE
Использование
Запуск сервера
# Режим разработки с hot reload
npm run dev
# Продакшн
npm start
Доступные инструменты
post_note
Публикует новую заметку в Nostr.
Пример входных данных:
{
"content": "Привет из Nostr! 👋"
}
send_zap
Отправляет Lightning zap пользователю Nostr (требуется NIP-05).
Пример входных данных:
{
"nip05Address": "user@domain.com",
"amount": 1000
}
Разработка
Структура проекта
nostr-mcp/
├── src/
│ ├── index.ts # Точка входа
│ ├── nostr-client.ts # Реализация клиента Nostr
│ └── types.ts # Определения типов
├── .env
└── tsconfig.json
Запуск тестов
npm test
Лицензия
MIT. Подробнее в файле LICENSE.
Ресурсы
Создано с ❤️ для сообщества Nostr.
Комментарии
Комментариев пока нет. Будьте первым.