🌐 Nostr MCP サーバー
AI モデルが Nostr と対話してメモを投稿したり、言論の自由プロトコルと対話したりできるようにするモデル コンテキスト プロトコル (MCP) サーバー。
検閲耐性は、法学修士課程にとっても重要です。
ところで、今すぐNostrに参加しましょう!
🚀 機能
📝 Nostrネットワークにメモを投稿する
🔌 複数のリレーに接続する
🤖 AI統合のためのMCP準拠API
💸 Nostr ユーザーに Lightning の電撃を送信する (WIP)
📡 リアルタイム通信のためのサーバー送信イベント(SSE)サポート
Related MCP server: Nostr MCP Server
👷♂️ TODO
[ ] 複数同時接続のサポートを追加
[ ] stdinトランスポートモードを実装する(環境変数で設定可能)
📋 前提条件
Node.js 18歳以上
🛠️ インストール
Smithery経由でインストール
Smithery経由で Claude Desktop 用の Nostr MCP Server を自動的にインストールするには:
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, info, warn, error)
LOG_LEVEL=debug
# Node environment (development, production)
NODE_ENV=development
# List of Nostr relays to connect to
NOSTR_RELAYS=wss://relay.damus.io,wss://relay.primal.net,wss://nos.lol
# Your Nostr private key (starts with nsec)
NOSTR_NSEC_KEY=your_nsec_key_here
# Server mode (stdio or sse)
SERVER_MODE=sse
# Port for SSE mode
PORT=9000🚦 使用方法
サーバーの起動
# Development mode with hot reload
npm run dev
# Production mode
npm start利用可能なツール
post_note
Nostr ネットワークに新しいメモを投稿します。
入力例:
{
"content": "Hello from Nostr! 👋"
}send_zap
Nostr ユーザーに Lightning の電撃を送ります。
入力例:
{
"nip05Address": "user@domain.com",
"amount": 1000
}🔧 開発
プロジェクト構造
nostr-mcp/
├── src/
│ ├── index.ts # Main server entry point
│ ├── nostr-client.ts # Nostr client implementation
│ └── types.ts # TypeScript type definitions
├── .env # Environment configuration
└── tsconfig.json # TypeScript configurationテストの実行
npm test🤝 貢献する
リポジトリをフォークする
機能ブランチを作成します(
git checkout -b feature/amazing-feature)変更をコミットします (
git commit -m 'Add some amazing feature')ブランチにプッシュする (
git push origin feature/amazing-feature)プルリクエストを開く
📜 ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細についてはLICENSEファイルを参照してください。
🔗 リソース
📬 お問い合わせ
よろしければ、私の公開鍵を使ってお気軽にフォローしてください。
npub1hr6v96g0phtxwys4x0tm3khawuuykz6s28uzwtj5j0zc7lunu99snw2e29または、この QR コードをスキャンして私を見つけてください:
