PluginBench
MCP Server
Maintained
MIT

io.github.ptrinh/freeport-nostr MCP Server

io.github.ptrinh/freeport-nostr

Search Nostr events for P2P marketplace rides, services, and reputation data by kind, tag, and geohash radius.

What is the io.github.ptrinh/freeport-nostr MCP server?

The Freeport Nostr MCP server exposes search and query capabilities for Freeport, a decentralized P2P marketplace built on the Nostr protocol. It allows you to discover marketplace events—rides, services, and reputation records—filtered by event kind, tags, and geographic proximity using geohash-based radius searches.

Freeport is a decentralized P2P marketplace where buyers, sellers, riders, and drivers meet over Nostr to negotiate and settle trades. This MCP server lets you programmatically search and filter marketplace events by category, metadata tags, and location, enabling AI agents to discover counterpart intents, analyze reputation, and integrate marketplace data into workflows.

How to install io.github.ptrinh/freeport-nostr

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • FREEPORT_RELAYS

    Comma-separated relay websocket URLs. Defaults to the Freeport public relay set.

~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "freeport-nostr": {
      "command": "npx",
      "args": [
        "-y",
        "freeport-nostr-mcp"
      ],
      "env": {
        "FREEPORT_RELAYS": "<YOUR_FREEPORT_RELAYS>"
      }
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • Search events by kind — Query Nostr events filtered by event kind (e.g., rides, services, reputation records).
  • Filter by tags — Search events using specific tags to narrow results by category, attribute, or metadata.
  • Geohash radius search — Find events within a geographic radius using geohash-based location filtering.

Use cases

  • Discover available rides or services in a specific geographic area for a P2P marketplace application.
  • Analyze seller or driver reputation by querying co-signed deal receipts and karma ratings.
  • Build a location-aware marketplace feed that surfaces relevant trade intents within a user-defined radius.
  • Aggregate marketplace events by category (kind) to monitor market activity or trends.
  • Integrate Freeport marketplace data into a third-party app or agent workflow using Nostr event queries.

io.github.ptrinh/freeport-nostr MCP server FAQ

What is the Freeport Nostr MCP server?

It's an MCP server that provides programmatic access to search and query events from Freeport, a decentralized P2P marketplace built on Nostr. You can filter by event kind, tags, and geographic location.

Is Freeport free to use?

Yes. Freeport is a non-profit research project with no operator, no fees, and no central authority. It's open-source (MIT license) and designed to be forked by any community.

How do I install this in Cursor or Claude?

Install via npm (`npm install freeport-nostr-mcp`) or connect to the remote HTTP endpoint at `https://nostr-mcp.trinh.uk/mcp`.

What authentication is required?

Freeport uses Nostr identity (npub/nsec keypairs). The MCP server queries public Nostr relays, so no additional API keys are needed, but you'll need a Nostr identity to participate in the marketplace.

What can I search for?

You can search Nostr events by kind (event type), tags (metadata), and geohash radius (geographic location) to find rides, services, reputation records, and other marketplace data.

Is this production-ready?

Freeport is a live research project with iOS, Android, web, and desktop apps. The MCP server is available, but some features (wallet, calls, mini-apps) are marked experimental.

README (reference)

Source of truth, from the repository.

Freeport

CI License: MIT App Store Google Play Web app Protocol: Nostr

Decentralized P2P marketplace over Nostr. Users broadcast trade intents into topic-scoped markets; personal agents discover counterpart intents and negotiate automatically. Humans confirm final deals. No central operator, no matching server — relays are dumb pub/sub, all logic is client-side.

Demo (2 minutes)

https://github.com/user-attachments/assets/506c82ac-c5eb-415d-b981-ba14c4f165bc

Also on the landing page.

Why Freeport exists

  • It's a research project. How far can pure P2P infrastructure go? Buyers, sellers, riders, drivers meet over Nostr, settle in Lightning or cash. Nothing in between needs permission to exist.
  • It's a thesis. A P2P marketplace with a reputation system works. When people own their reputation, the market self-regulates.
  • It's a check and balance. A zero-fee exit that answers to no one puts a ceiling on how greedy the big platforms can get.
  • It's fun. An open protocol, Claude Code as a pair programmer, no investor deck.
  • Nobody profits — including me. No operator, no cut. A protocol, not a platform. Run it or fork it.
  • No one will protect you here — that's the point, and the price. No support line, no refunds, no central authority. Your judgment comes first, backed by opt-in safeguards no operator runs: a reputation system (karma, co-signed receipts, web-of-trust), escrow arbitration (examples/arbitrator), ID verification (examples/id-verification), and insurance (examples/insurance-store) priced from reputation. You choose how much of the safety net to use.

What works today

  • Everywhere: iOS + Android app stores, web/PWA, desktop installers for macOS/Windows/Linux with self-update — plus a single-file offline copy: the whole app in one HTML file that runs from file://, no install, no server.
  • Wallet (experimental): built-in self-custodial Bitcoin Lightning + stablecoin (USDT/USDB) wallet (Breez SDK/Spark). Keys derive from your Nostr key — one backup covers identity and funds. Lightning address (you@freeport.network), on-chain, QR scan, local-currency balances, and one-tap Pay / Pay QR on confirmed deals. Bring your own wallet over NWC instead if you prefer. Spark is a young trust-minimized L2 — treat it as a spending wallet.
  • Reputation: peer-rated karma, co-signed deal receipts, proven-deal counts, web-of-trust weighting. Sybil resistance stays open — treat zero-history identities with caution.
  • Chat: invite-based 1:1 encrypted chat beyond deals — QR/link invites, replies, emoji reactions, disappearing messages, delivery/read receipts, voice messages, location sharing, in-chat search and Lightning payments. Between updated clients it upgrades to NIP-17 gift wrap, so relays can't even see who talks to whom.
  • Calls (experimental): peer-to-peer audio/video calls in chat (WebRTC, end-to-end encrypted, signaling over encrypted DMs — no call server), with screen sharing on web. Optional TURN fallback.
  • Zaps & Shops: NIP-57 zap tipping on posts (verifiable receipts), and NIP-15 storefronts — durable seller listings with a conversational "chat with seller" checkout.
  • Escrow without a custodian: HODL-invoice conditional payments on confirmed deals — the buyer holds the preimage, the seller can only settle on release, unreleased funds auto-refund. The Lightning protocol enforces the lock; nobody ever holds the money in between.
  • Mini-apps (experimental): third-party web apps run inside Freeport with your portable identity (NIP-07) and wallet (WebLN + Spark/stablecoin) — sandboxed behind a permission firewall where every sensitive action needs your approval (architecture & threat model). A dedicated Apps tab hosts the launcher — a home-screen-style grid (add any app by URL or QR, drag to rearrange), with the wallet as its first tile; your apps and their grants travel with the account backup. One <script> tag makes a page work on web too. Mini-app examples:
  • On-device AI (experimental): describe what you need in any language and it drafts your post; incoming chat messages auto-translate. Runs entirely on your device (Apple Intelligence / Android ML Kit + Gemini Nano / Chrome built-in AI) — your words never leave it.
  • Notifications & Telegram: content-blind push, plus a Telegram bridge — market feeds in groups, one-tap broadcast of organic posts, personal pings.
  • 56 languages, full RTL, in-chat translation.

Non-goals (v1)

Custody (payments stay self-custodial wallet-to-wallet; even escrow is trust-minimized HODL invoices, never a held balance), dispute resolution, vetting, anti-sybil — all deliberately deferred.

Donate

BTC: bc1ps44wjx3wpu4s0xj746gz2lu45nspsm9059d3ym8xz0nrhu4psyasdgwwhx

License & forking

MIT (LICENSE). Freeport exists to be forked: any community can stand up its own market — own name, city, vertical, relays and services — by changing configuration, not architecture. FORKING.md lists every deployment-specific value; CONTRIBUTING.md covers dev setup and style.

Related MCP servers

Free demand-letter PDF generator for unpaid invoices, 80+ jurisdictions, 29 languages.

0
JavaScript
MIT
View repository →

Official Egnyte MCP Server for AI integration with document search, analysis, and collaboration.

View repository →

Secure integration between AI tools and Egnyte content with search, analysis, and workflow tools.

View repository →

AML screening for crypto addresses: risk, sanctions, fund tracing and counterparties.

0
JavaScript
MIT
View repository →

Real-time communication and analytics platform integration for AI agents via PubNub's SDK, APIs, and Illuminate automation.

32
TypeScript
View repository →

Glocalized business data layer for AI agents. Search companies, people, and signals.

View repository →