
Vibedate
io.github.pooriaarabPublished by GitHub account pooriaarabv0.8.8Updated Oct 24, 2026
Dating by tokens, matched by usage league across agentic CLIs. Local-first.
The publisher's own server: AI Benchmark Index
Overview
Vibedate is a local-first dating MCP server that buckets your coding-CLI token usage into a league and matches you with peers in the same or adjacent tier.
- What you can do
- Read your local harness token usage and compute a league bucket (1M through 1B+)
- Show your profile and league to the assistant
- List candidate matches in your league or an adjacent tier, including live peers found over a peer-to-peer DHT when discovery is enabled
- Matching runs on a local engine shared with the package's CLI and local web app; the MCP server itself exposes only profile and matches
- When to use it
- For people who want to try a novelty dating or social-matching tool built around how much they use agentic coding CLIs, and who prefer to keep usage data on their own machine. Not a general-purpose utility for everyday coding work.
- Requirements
- Runs as a local stdio process, typically via npx from the npm package vibedate (Node.js required). No accounts, API keys or environment variables are declared. It reads local harness logs under your home directory and stores state in a local data directory. Live peer discovery needs network access and is opt-in.
Installation
In SourceWeft
- Open Vibedate in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
vibedating
[npm version] [npm downloads per month] [license]
npm package · Install · Quick start · Privacy · Alternatives
Dating by tokens — connect your Claude Code / Codex usage, get sorted into a league (1M / 5M / 10M / 100M / 1B+), and match with people who burn tokens the way you do. The premise: heavy users of these tools share something worth matching on.
Part of the Vibe Suite — companion tools for agentic coding CLIs. Ships as
CLI + npm package + MCP server, plus a local web app. Built on
@pooriaarab/vibe-core.
Demo
▶ Watch the launch video — she matched with the man of her dreams. He was coding in a basement.
https://github.com/pooriaarab/vibedating/raw/main/branding/launch-video.mp4
Local-first. Raw token usage is read and stored on your own machine and never leaves it. Only the coarse league bucket is ever shared — never the raw number, never per-project breakdowns. Live matching is peer-to-peer over a DHT (no central server) and opt-in only; without it the pool is a local seeded demo.
Status
v0 — works locally, privacy-first. Usage is verified from your harness's
real local logs via vibe-core's readHarnessUsage (source real →
verified: true); when no logs are readable you can self-report
(VIBEDATING_TOKENS, unverified) or fall back to a demo value (unverified).
Handles are bound to a persistent ed25519 identity (~/.vibedating/identity.json,
mode 0600): every hello is signed, and a forged signature gets the peer dropped.
Install
…or run it ad-hoc:
Quick start
Self-report a token count (otherwise a demo value is used):
All commands
Live P2P discovery (opt-in)
vibedating discover --live joins the public hyperswarm
DHT on your league topic — sha256('vibedate:' + leagueBucket) — so same-league
peers find each other with no central server. On each encrypted connection
the two sides exchange a one-line hello with only
{ handle, league, harness, verified, pubkey, nonce, sig } — the proof fields
sign the hello with your persistent ed25519 identity so a handle can't be
impersonated; raw usage is never put on the wire. Discovered
peers are stored in ~/.vibedating/peers.json and shown by vibedating matches.
Live discovery is off by default. The --live flag is the explicit opt-in
(persisted as the share:live consent scope); every live run prints what it
shares before joining. Ctrl+C leaves the swarm cleanly.
Three faces, one local engine
The same local engine drives all three, so you can use it wherever you work:
- Web —
vibedating openserves the dating UI (profile, match stack, league ladder) athttp://localhost:PORT. The page reads your league + matches from a tiny local JSON endpoint. - CLI —
vibedating connect/matches. - MCP —
vibedating mcpexposesprofile(your league) andmatchesto any MCP host (Claude Code, Codex, Cursor, …).
As a library
Privacy
- Raw usage stays local.
totalTokensis read into memory, stored at~/.vibedating/state.json, and shown in the web app only behind an opt-in toggle. It is never transmitted. - Only the league bucket is shared — with the local demo pool, and (only if
you opt in with
--live) as{ handle, league, harness, verified, pubkey, nonce, sig }with same-league peers over the hyperswarm DHT. The handshake parser whitelists those fields, so a peer can't even be sent anything else into your process; theverifiedflag and identity pubkey are the only additions, never a token count. - Consent for sharing the league is modeled with
@pooriaarab/vibe-core's consent ledger (scopeshare:league), granted onconnectand revocable on reset. Live P2P discovery has its own scope (share:live), default off.
Leagues & matching
Bucketed by lifetime tokens; you match within your league or an adjacent tier (so the tiny 1B+ pool still has people to match with):
Prototype
An interactive, self-contained UX prototype (no build, no network):
docs/prototype.html. The shipped local web app
(vibedating open) is an adapted, data-driven version of this prototype.
Alternatives
- Mainstream dating apps (Hinge, Bumble, Tinder) match on photos and prompts; vibedating matches on a signal that is hard to fake: how much compute you actually burn.
- Speed-networking and community tools (Discord servers, hackathons) find other builders; this finds builders whose usage league sits near yours.
License
MIT
Source: README.md at commit 1cd65d0
Tools
0Version history
1- v0.8.8LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Other Aibenchmarkindex integrations

AI Benchmark Index
com.aibenchmarkindexOfficial publisher
Remote MCP endpoint for the AI Benchmark Index that lets an assistant search published AI benchmarks by text, place and category, and read their sources.

Surrogacyagencies
Published by GitHub account pooriaarab
Surrogacyagencies's hosted MCP server; no sign-in required; Streamable HTTP; 6 tools.

Quantumcompanies
Published by GitHub account pooriaarab
Quantumcompanies's hosted MCP server; no sign-in required; Streamable HTTP; 9 tools.

Liquidcooling
Published by GitHub account pooriaarab
Liquidcooling's hosted MCP server; no sign-in required; Streamable HTTP; 6 tools.

Goldenvisas
Published by GitHub account pooriaarab
Goldenvisas's hosted MCP server; no sign-in required; Streamable HTTP; 6 tools.