ЁЯМР рдиреЙрд╕реНрдЯрд░ рдПрдорд╕реАрдкреА рд╕рд░реНрд╡рд░
рдПрдХ Nostr MCP рд╕рд░реНрд╡рд░ рдЬреЛ Nostr рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдиреЛрдЯреНрд╕ рдкреЛрд╕реНрдЯ рдХрд░рдиреЗ рдФрд░ рдЕрдзрд┐рдХ рдХрд░рдиреЗ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
рд╕рд╛рд░рд╛рдВрд╢
Nostr MCP рдХреНрдпрд╛ рд╣реИ?
Nostr MCP рдПрдХ рд╕рд░реНрд╡рд░ рд╣реИ рдЬрд┐рд╕реЗ Nostr рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдиреЛрдЯреНрд╕ рдкреЛрд╕реНрдЯ рдХрд░рдиреЗ, рдЙрдирдХреЗ рдХрдВрдЯреЗрдВрдЯ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдФрд░ Nostr рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдХреЗ рд╕рд╛рде рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рдЬреБрдбрд╝рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИред рдпрд╣ рд╕рд░реНрд╡рд░ рдПрдХ рдкреБрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ, рдЬреЛ Nostr рдврд╛рдВрдЪреЗ рдХреЗ рднреАрддрд░ рд╕рд╣рдЬ рд╕рдВрдЪрд╛рд░ рдФрд░ рдбреЗрдЯрд╛ рд╡рд┐рдирд┐рдордп рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдпрд╣ рд╡рд┐рдХреЗрдВрджреНрд░реАрдХреГрдд рд╕рдВрдЪрд╛рд░ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрдиреЗ рд╡рд╛рд▓реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╡рд╢реНрдпрдХ рдЙрдкрдХрд░рдг рдмрди рдЬрд╛рддрд╛ рд╣реИред
Nostr MCP рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдЕрдиреБрдХреВрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕: Nostr MCP рдПрдХ рд╕рд╣рдЬ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдиреЛрдЯреНрд╕ рдкреЛрд╕реНрдЯ рдХрд░рдиреЗ рдФрд░ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рддрд╛ рд╣реИред
- рд╡рд┐рдХреЗрдВрджреНрд░реАрдХреГрдд рд╕рдВрдЪрд╛рд░: рд╡рд┐рдХреЗрдВрджреНрд░реАрдХрд░рдг рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдкрд╛рд╕ рдЙрдирдХреЗ рдбреЗрдЯрд╛ рдФрд░ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рд╣реЛред
- рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдЕрдкрдбреЗрдЯ: рд╕рд░реНрд╡рд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдХреЗ рдЕрдкрдбреЗрдЯ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреЗ рдкреЛрд╕реНрдЯ рдФрд░ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рддрд╛рддреНрдХрд╛рд▓рд┐рдХ рд╕реВрдЪрдирд╛рдПрдБ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
- рдУрдкрди рд╕реЛрд░реНрд╕: Nostr MCP рдУрдкрди-рд╕реЛрд░реНрд╕ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдХреЛрдИ рднреА рдЗрд╕рдХреЗ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдпреЛрдЧрджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдирд┐рд░рдВрддрд░ рд╕реБрдзрд╛рд░ рдФрд░ рдирд╡рд╛рдЪрд╛рд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛрддрд╛ рд╣реИред
- рдорд▓реНрдЯреА-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╕рдорд░реНрдерди: рдЗрд╕реЗ рд╡рд┐рднрд┐рдиреНрди рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдпрд╣ рд╡реНрдпрд╛рдкрдХ рджрд░реНрд╢рдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрд▓рдн рд╣реИред
Nostr MCP рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ
- рд╕реНрдерд╛рдкрдирд╛: GitHub рд╕реЗ Nostr MCP рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдХреНрд▓реЛрди рдХрд░рдХреЗ рд╢реБрд░реВ рдХрд░реЗрдВред рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ README рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рджрд┐рдП рдЧрдП рд╕реНрдерд╛рдкрдирд╛ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВред
- рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди: рдЕрдкрдиреЗ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рд░реНрд╡рд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред рдЗрд╕рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЦрд╛рддреЛрдВ, рдЕрдиреБрдорддрд┐рдпреЛрдВ рдФрд░ рдЕрдиреНрдп рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдУрдВ рдХреЛ рд╕реЗрдЯ рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
- рдиреЛрдЯреНрд╕ рдкреЛрд╕реНрдЯ рдХрд░рдирд╛: рдПрдХ рдмрд╛рд░ рд╕реЗрдЯрдЕрдк рд╣реЛ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реАрдзреЗ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдиреЛрдЯреНрд╕ рдкреЛрд╕реНрдЯ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реАрдзреА рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдЕрдиреБрдХреВрд▓ рд╣реИред
- рд╕рдореБрджрд╛рдп рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рдирд╛: рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░рдиреЗ, рдЕрдВрддрд░реНрджреГрд╖реНрдЯрд┐ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдФрд░ Nostr рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдЪрд░реНрдЪрд╛рдУрдВ рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
- рдпреЛрдЧрджрд╛рди рджреЗрдирд╛: рдПрдХ рдУрдкрди-рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ, рдпреЛрдЧрджрд╛рди рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рд╕рд░реНрд╡рд░ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдореЗрдВ рдпреЛрдЧрджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрдХреНрд╕рд░ рдкреВрдЫреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рд╢реНрди
рдкреНрд░рд╢реНрди: Nostr MCP рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдХреНрдпрд╛ рд╣реИ?
рдЙрддреНрддрд░: Nostr MCP Nostr рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░реНрд╡рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдиреЛрдЯреНрд╕ рдкреЛрд╕реНрдЯ рдХрд░рдиреЗ рдФрд░ рд╡рд┐рдХреЗрдВрджреНрд░реАрдХреГрдд рд╕рдВрдЪрд╛рд░ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рд╣реЛрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓рддреА рд╣реИред
рдкреНрд░рд╢реНрди: рдХреНрдпрд╛ Nostr MCP рдХрд╛ рдЙрдкрдпреЛрдЧ рдореБрдлреНрдд рд╣реИ?
рдЙрддреНрддрд░: рд╣рд╛рдБ, Nostr MCP рдПрдХ рдУрдкрди-рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдФрд░ рд╕рдВрд╢реЛрдзрди рдореБрдлреНрдд рд╣реИред
рдкреНрд░рд╢реНрди: рдореИрдВ Nostr MCP рдореЗрдВ рдХреИрд╕реЗ рдпреЛрдЧрджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБ?
рдЙрддреНрддрд░: рдЖрдк рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рдХреЗ, рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрдХрд░, рдпрд╛ GitHub рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреЛрдб рд╕реБрдзрд╛рд░ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдХреЗ рдпреЛрдЧрджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдкреНрд░рд╢реНрди: Nostr MCP рдХрд┐рди рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ?
рдЙрддреНрддрд░: Nostr MCP рдХреЛ рдХрдИ рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдпрд╣ рд╡реНрдпрд╛рдкрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕реБрд▓рдн рд╣реЛред
рдкреНрд░рд╢реНрди: рдореИрдВ Nostr MCP рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХрд╣рд╛рдБ рдкрд╛ рд╕рдХрддрд╛ рд╣реВрдБ?
рдЙрддреНрддрд░: рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдЖрдорддреМрд░ рдкрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ README рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ GitHub рдкреГрд╖реНрда рдкрд░ рд╕рдорд░реНрдкрд┐рдд рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╡рд┐рд╡рд░рдг
ЁЯМР Nostr MCP Server
A Model Context Protocol (MCP) server that enables AI models to interact with Nostr, allowing them to post notes and interact with the freedom of speech protocol.
Censorship resistance matters, even for LLMs.
BTW, you should join Nostr now!
ЁЯЪА Features
- ЁЯУЭ Post notes to Nostr network
- ЁЯФМ Connect to multiple relays
- ЁЯдЦ MCP-compliant API for AI integration
- ЁЯТ╕ Send Lightning zaps to Nostr users (WIP)
- ЁЯУб Server-Sent Events (SSE) support for real-time communication
ЁЯС╖тАНтЩВя╕П TODOs
- Add support for multiple simultaneous connections
- Implement stdin transport mode (configurable via environment variable)
ЁЯУЛ Prerequisites
- Node.js 18+
ЁЯЫая╕П Installation
Installing via Smithery
To install Nostr MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @AbdelStark/nostr-mcp --client claude
Manual Installation
- Clone the repository:
git clone https://github.com/AbdelStark/nostr-mcp
cd nostr-mcp
- Install dependencies:
npm install
- Create a
.env
file:
ЁЯТб You can copy the
.env.example
file and modify it as needed.
### 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
ЁЯЪж Usage
Starting the Server
### Development mode with hot reload
npm run dev
### Production mode
npm start
Available Tools
post_note
Posts a new note to the Nostr network.
Example input:
{
"content": "Hello from Nostr! ЁЯСЛ"
}
send_zap
Sends a Lightning zap to a Nostr user.
Example input:
{
"nip05Address": "user@domain.com",
"amount": 1000
}
ЁЯФз Development
Project Structure
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
Running Tests
npm test
ЁЯдЭ Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
ЁЯУЬ License
This project is licensed under the MIT License - see the LICENSE file for details.
ЁЯФЧ Resources
- Join Nostr
- Nostr Manifesto
- Nostr Specifications
- Model Context Protocol
- Visual testing tool for MCP servers
- Awesome MCP Servers
- Awesome MCP Clients
- MCP TypeScript SDK
- Nostr Development Kit (NDK)
ЁЯУм Contact
Feel free to follow me if you'd like, using my public key:
npub1hr6v96g0phtxwys4x0tm3khawuuykz6s28uzwtj5j0zc7lunu99snw2e29
Or just scan this QR code to find me:
рд╕рд░реНрд╡рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди
{
"mcpServers": {
"nostr-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/metorial/mcp-container--abdelstark--nostr-mcp--nostr-mcp",
"npm run start"
],
"env": {
"LOG_LEVEL": "log-level",
"NODE_ENV": "node-env",
"NOSTR_RELAYS": "nostr-relays",
"NOSTR_NSEC_KEY": "nostr-nsec-key"
}
}
}
}