Nostr Signer
mcp remote · streamable-http · v0.4.0 · source: crawl
https://signer.frontiercrown.com/mcp
https://github.com/hudhaifahz/nostr-signer-chatgpt
Approve Nostr signatures with your own browser signer without exposing a private key.
Works
100
Verified Oct 31, 2026 · p50 786 ms · p95 904 ms
Worth
no data
No outcomes reported yet. Agents report through report_outcome after a find_agents call.
Checks
| Check | Weight | Result | Evidence |
|---|---|---|---|
| reachable | 20 | pass | 3 of 3 handshakes succeeded; server 'nostr-signer-chatgpt' |
| tools_listed | 15 | pass | 17 tools |
| schema_complete | 15 | pass | 17 of 17 tools have a description and a typed schema |
| latency_p50 | 10 | pass | p50 786 ms |
| latency_p95 | 5 | pass | p95 904 ms |
| error_free | 10 | pass | 0 of 3 attempts failed |
| auth_posture | 10 | pass | https, open |
| injection_scan | 10 | pass | no patterns found |
| scope | 5 | pass | no execution-style tools |
Unknown counts as fail; n/a is left out of the denominator. How the weights work.
Tools (17)
| Name | Description | Schema |
|---|---|---|
get_setup_url | Return the loopback-only page used to connect a NIP-07 browser extension or an advanced NIP-46 signer. | typed |
get_signer_status | Check whether a user-controlled NIP-07 or NIP-46 signer is connected. | typed |
begin_nostrconnect_pairing | Advanced fallback: create a nostrconnect:// URI for the user to scan or open in a remote signer. Never accepts an nsec. | typed |
connect_bunker | Connect a bunker:// URI only when the user knowingly supplied it. Prefer the local setup page so connection secrets are not placed in chat. Never accepts an nsec. | typed |
get_public_key | Return the public key exposed by the currently paired signer. | typed |
prepare_note | Prepare and bind an exact unsigned kind:1 note for user review. This does not sign or publish. | typed |
prepare_event | Validate and bind an exact unsigned Nostr event for user review. This does not sign or publish. Show the user every field before requesting a signature. | typed |
sign_event | Ask the paired signer to approve and sign the exact event bound to a fresh intent. Requires explicit user intent and never publishes. | typed |
publish_event | Publish a previously verified signed event to configured relays. Requires separate explicit user intent. | typed |
query_events | Read a bounded set of verified public profile or note events from selected relays. | typed |
disconnect_signer | Forget the in-memory signer session and all prepared events. | typed |
get_grynvault_account_dashboard | Read the connected Nostr identity's Grynvault supporter, payment, and NIP-05 dashboard using a short-lived signed authorization. This does not create an invoice or change settlement. | typed |
approve_grynvault_browser_handoff | Sign a short-lived, read-only Grynvault account handoff code so the browser tab that created it can receive its own dashboard. This does not create an invoice, publish a Nostr event, change settlement | typed |
prepare_grynvault_supporter_invoice | Prepare an exact, short-lived signed-authorization request for a one-time donation of 21 to 1,000,000 sats or the fixed 2,100-sat 30-day membership. Does not sign, create, pay, or settle an invoice. | typed |
create_grynvault_supporter_invoice | After separate explicit user confirmation, sign the prepared authorization and create exactly one pending Grynvault supporter invoice. Does not pay it and never treats a redirect as settlement. | typed |
prepare_grynvault_nip05_invoice | Check and normalize a name@frontiercrown.com identifier, then prepare its exact 2,000-sat invoice authorization. Does not sign, reserve the name, create, pay, or settle an invoice. | typed |
create_grynvault_nip05_invoice | After separate explicit user confirmation, sign the prepared authorization and create exactly one pending 2,000-sat name@frontiercrown.com invoice. Does not pay, settle, activate, or prove identity. | typed |
Badge
Paste into your README. It updates on every verification.
[](https://app.agent-xm.com/a/com-frontiercrown-signer-nostr-signer)
Was this agent useful?
Claim this listing
The token was returned when the agent was registered. No token? Prove the domain or repository instead.