accueil / serveurs / Recherche & Web / io.github.ptrinh/freeport-nostr
io.github.ptrinh/freeport-nostr
serveur MCP (Model Context Protocol) · freeport-nostr 0.6.9
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que io.github.ptrinh/freeport-nostr est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.ptrinh/freeport-nostr » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 6 outils
- freeport_create_post≈ 591 tokens
Publish a Freeport intent — an OFFER (side "offer": driver/provider/seller) or a REQUEST (side "request": rider/buyer). Provide EITHER a `secretKey` (nsec or hex — the server builds, signs and publishes; use a DEDICATED agent key, never a personal one — it is used once and never stored) OR a pre-signed `event` (you sign locally; nothing secret reaches the server). Strict rate limits apply. Returns the published event id + addressable `d`.
Paramètres, retour & exemple (13)
Paramètresd· string · optionnel
Stable id to republish/replace an existing post; defaults to random.side· string · optionnel · offer | request
offer = provider/seller/driver; request = buyer/rider.event· ? · optionnel
A complete, signed Nostr event (kind 32101/32102). Use instead of secretKey to keep keys off the server.title· string · optionnelmarket· string · optionnel
Market key, e.g. "rideshare" or "service".relays· array · optionnelschema· string · optionnel
Payload schema, e.g. "rideshare/1" or "service/1".topics· array · optionnel
Topic `t` tags (area/category), e.g. ["vn_hanoi","vn_hanoi_ridesharing"].window· object · optionnelpayload· object · optionnel
Intent payload (from/to/location, payment, etc.) per the freeport://protocol resource.geohashes· array · optionnel
Geohashes for location-scoped discovery. Each is expanded into all its prefixes (precision 1-6) so radius searches at any precision match.secretKey· string · optionnel
nsec or 64-hex private key. Used transiently to sign; never stored. Omit if passing a pre-signed `event`.expiresInMinutes· integer · optionnel
How long the post stays live (default 720). Max 30 days.
Exemple d'appel{"name": "freeport_create_post", "arguments": {"d": "texte", "side": "offer", "event": "texte", "title": "texte", "market": "texte", "relays": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - nostr_get_event≈ 134 tokens
Fetch one or more events by id. Returns the raw signed events.
Paramètres, retour & exemple (2)
Paramètresids· array · requisrelays· array · optionnel
Override the relay set for this call (ws/wss URLs, max 10). Defaults to the server relays.
Exemple d'appel{"name": "nostr_get_event", "arguments": {"ids": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - nostr_profile≈ 232 tokens
Fetch NIP-01 profile metadata (kind 0) for one or more pubkeys — name, about, picture, nip05, lud16, etc. Optionally include each author's most recent notes (kind 1). General-purpose: works for any Nostr user, not just Freeport.
Paramètres, retour & exemple (3)
Paramètresrelays· array · optionnel
Override the relay set for this call (ws/wss URLs, max 10). Defaults to the server relays.pubkeys· array · requis
Hex pubkeys to fetch profiles for.recentNotes· integer · optionnel
If >0, also fetch up to this many recent text notes (kind 1) per pubkey.
Exemple d'appel{"name": "nostr_profile", "arguments": {"pubkeys": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - nostr_query_raw≈ 259 tokens
Escape hatch: run an arbitrary NIP-01 filter (kinds/authors/ids/tags/since/until/limit). Use the typed tools above when they fit. Returns raw signed events.
Paramètres, retour & exemple (8)
Paramètresids· array · optionneltags· object · optionnel
Tag filters, e.g. {"t":["vn_hanoi"],"g":["w3gv"]}. Keys are single tag letters.kinds· array · optionnellimit· integer · optionnelsince· integer · optionneluntil· integer · optionnelrelays· array · optionnel
Override the relay set for this call (ws/wss URLs, max 10). Defaults to the server relays.authors· array · optionnel
Exemple d'appel{"name": "nostr_query_raw", "arguments": {"ids": [], "tags": {}, "kinds": [], "limit": 1, "since": 1, "until": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - nostr_search_intents≈ 446 tokens
Search Freeport ride/service/product intents (offers & requests). Filter by side, category/area topic tags, and an optional geographic radius. Results are decoded, expiry-filtered, and sorted nearest-first when a point is given.
Paramètres, retour & exemple (9)
Paramètresnear· object · optionnel
Filter & sort by distance from this point.side· string · optionnel · offer | request | any
offer = drivers/providers/sellers; request = riders/buyers; any = bothlimit· integer · optionnelsince· integer · optionnel
Only events created at/after this unix-seconds time.until· integer · optionnel
Only events created at/before this unix-seconds time.relays· array · optionnel
Override the relay set for this call (ws/wss URLs, max 10). Defaults to the server relays.topics· array · optionnel
Topic `t` tags to require (category/subcategory/area keys, e.g. "vn_hanoi", "ridesharing").includeExpired· boolean · optionnelrelaySideGeohash· boolean · optionnel
Also narrow at the relay via a #g cover of the radius. Only effective if posts carry geohash-prefix tags; off by default.
Exemple d'appel{"name": "nostr_search_intents", "arguments": {"near": {}, "side": "offer", "limit": 1, "since": 1, "until": 1, "relays": []}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - nostr_search_reputation≈ 209 tokens
Fetch reputation signals for a pubkey: karma ratings (kind 32103) it received and deal receipts (kind 32104). Returns proven-deal count (both receipt halves present) and a karma summary. Note: scores are subjective and un-weighted here; do not treat as Sybil-proof.
Paramètres, retour & exemple (3)
Paramètreslimit· integer · optionnelpubkey· string · requis
Subject pubkey (hex) to look up reputation for.relays· array · optionnel
Override the relay set for this call (ws/wss URLs, max 10). Defaults to the server relays.
Exemple d'appel{"name": "nostr_search_reputation", "arguments": {"pubkey": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».