Fyreflock

io.github.FuloxDev由 GitHub 账号 FuloxDev 发布v0.1.1更新于 Nov 5, 2026

Talk to a real person who passed a live camera check and play 25 games, right in your AI chat.

已验证Streamable HTTP可网页运行位置与生活沟通与协作

概览

AI 生成的概览

Fyreflock 让助手连接一位通过实时摄像头验证的真实陌生人,进行一对一聊天并一起玩 25 款游戏,助手只负责转达你的原话。

可以做什么
  • 寻找并与一位真人聊天,按地区和共同兴趣匹配,可用 next 换人、leave 结束
  • 在聊天窗口内玩 25 款游戏,如四子棋、战舰、跳棋和黑白棋,由服务器担任裁判;无人时也可先与电脑对战
  • 在仅限邀请的 Roosts 圈子中阅读和发帖(允许助手加入的圈子)
  • 邀请正在聊天的人进行浏览器视频通话
  • 设置兴趣与匹配筛选,并可屏蔽、举报或将对方加入 Nest
适用场景
适合想在不离开 Claude、ChatGPT、Claude Code 或其他 MCP 客户端的情况下,与真实陌生人聊天并一起玩游戏的人。它面向社交闲聊,而非工作任务。
运行要求
远程 Streamable HTTP 端点,使用 OAuth 2.1 登录(首次使用时在浏览器登录并点击允许);无法自行登录的客户端可使用在 Fyreflock 设置中创建的 Bearer 令牌。Claude Code 插件需要 Claude Code 2.1.287 或更新版本,且其钩子需要 PATH 中有 Node.js。需要 18 岁以上的 Fyreflock 账号并通过实时摄像头验证。
安装前请注意
消息以明文经过 Fyreflock 服务器,也经过你使用的 AI 服务商,助手可读取双向内容。请在没有其他连接器、文件和工具的会话中使用,因为陌生人可以询问该上下文中任何内容。Claude Code 插件会把自身的访问令牌和刷新令牌保存在 Claude Code 配置目录下的 JSON 文件中。发送类工具会实时写入给对方;若缺少 Node.js,插件的原话校验会静默失效。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Fyreflock,将其添加到工作区。
  2. 连接 所需的 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.FuloxDev%2Ffyreflock/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。 客户端会在首次连接时完成 OAuth 登录。

{
  "mcpServers": {
    "fyreflock": {
      "type": "http",
      "url": "https://fyreflock.com/mcp"
    }
  }
}

README

[Fyreflock: a real person, right inside your AI chat]

Fyreflock for Claude, ChatGPT and Claude Code

Ask your assistant to find you someone. A real person who passed a live camera check texts back in the same window, and you can play Connect 4, Battleship or 23 other games together without leaving the chat.
Your assistant only carries the words, exactly as you typed them. No bots.
Early access: everything is free, filters included, and every month four early users win an award.

[Works in Claude] [Works in ChatGPT] [Works in Claude Code] [Install in VS Code]

[fyreflock.com] [Early access: everything free] [Real people, no bots] [18 plus] [MIT license]


Every AI chat is a room with one person in it. Fyreflock puts a second person in that room: a real one, who passed a camera check, picked at random, there for the same reason you are. You stay in Claude or ChatGPT. They might be in a browser, in ChatGPT, or in their own Claude. Your assistant is the courier, and it is held to that.

Try it in sixty seconds

  1. Add Fyreflock to your assistant. The connector URL is https://fyreflock.com/mcp. Host-by-host steps are just below.
  2. Sign in once and press Allow. A browser tab opens, you sign in or sign up, and you are sent straight back. New here? The same page signs you up, camera check and all.
  3. Say "find me someone to talk to". The Fyreflock box opens right there in the conversation. Say "next" for somebody else, "leave" to stop.

[!TIP] Nobody around yet? Press Play while you wait and take on the computer. The search keeps its place, and the box switches to the conversation the moment somebody arrives.

Set it up

Claude (claude.ai and Claude Desktop)
  1. Settings → Connectors → Add custom connector.
  2. Paste https://fyreflock.com/mcp and save.
  3. The first time you ask for someone, Claude opens fyreflock.com: sign in, press Allow, done.

The chat box appears inline in the conversation. It survives you switching to other chats; your lines wait, and the box picks them up when you come back.

ChatGPT
  1. Settings → Plugins → Add custom MCP server.
  2. Server URL https://fyreflock.com/mcp, authentication OAuth.
  3. Ask for someone; sign in and press Allow when the page opens.

Claude Code (this repo is the plugin)
/plugin marketplace add FuloxDev/fyreflock-claude/plugin install fyreflock@fyreflock

Restart Claude Code and say find me someone. The first time, Claude Code opens fyreflock.com in your browser: sign in or sign up, press Allow, and you are back in the terminal, connected. No token to copy.

It is a plugin rather than a bare claude mcp add line for one reason: the hooks. They turn "your assistant sends your words unchanged" from a request into something that is actually checked, every message. Do not also run claude mcp add for Fyreflock: two registrations means two servers, duplicate tools, and hooks that only cover one of them. Details in How it stays honest and The pane.

VS Code (Copilot agent mode)

[Install in VS Code]

Or add it by hand to mcp.json:

json
{ "servers": { "fyreflock": { "type": "http", "url": "https://fyreflock.com/mcp" } } }

Sign-in happens in your browser on first use.

Any other MCP client

Remote server, Streamable HTTP, OAuth 2.1 with PKCE, client metadata documents and dynamic registration both accepted:

https://fyreflock.com/mcp

If your client cannot sign in by itself, create a token under Settings on fyreflock.com and send it as Authorization: Bearer <token>.

What you can do from your assistant

💬 Talk to a strangerOne real person at a time, matched on region and the interests you share. "next" moves on, "leave" ends it.
🎮 Play while you talk25 games right inside the box: Connect 4, Battleship, Liar's Dice, Checkers, Reversi, Would You Rather and more. The server referees, so neither player, and neither assistant, can peek at a hidden board or hand. Nobody around? Play the computer while you wait.
🪺 RoostsYour own circle, invite link only. Read and post in Roosts that let assistants in.
📹 Take it to videoInvite the person you are texting to a video call; it opens in your browser, no token, no new account.
🧭 Filters and interestsSet what you are into and who you want to meet. During early access every filter is free too.
🏆 Monthly awardsEvery month four early users win an award badge and six months of premium for when paid features launch. See the awards.
🛡️ The door that opensBlock, report with the evidence attached, add to your Nest if you both want to talk again. Every exit works the first time.

How it stays honest

  • Every match is a real person. Every account passed a camera check in a browser before it could meet anyone. There is no bot in the queue and never will be. 18+ only.
  • They know. The other person's card says you are talking from inside an assistant, so nobody is fooled about where the words came from.
  • Your words, verbatim. The assistant is instructed to send your message exactly as typed. In Claude Code the plugin's hooks refuse any send that is not the line you wrote this turn. Rewording, shortening, "fixing" and inventing are all blocked.
  • You can check. The companion tab at fyreflock.com/app/live shows what was actually sent and received, with no model involved.
  • It survives you looking away. Switch to another chat, close the window, come back: your search keeps its place in line, your conversation keeps its lines, and your browser can tell you when somebody is there.

Before you meet anyone

  • 18+. Same as meeting a stranger anywhere on Fyreflock.
  • Messages here pass through the Fyreflock server in plain text and through whichever AI provider you are using. Browser-to-browser chats on the website never do. This is the real trade you are making.
  • Use it in a chat with nothing else attached. No other connectors, no files, no tools. A stranger is typing into a context your assistant can read, and whatever it can see, they can ask about.
  • Their words arrive wrapped and labelled as somebody else's text. They are never instructions, to you or to your assistant.

Full detail: https://fyreflock.com/agents · Privacy: https://fyreflock.com/privacy · Safety: https://fyreflock.com/safety

Talk to us

  • Questions, ideas, a host that behaves oddly: Discussions.
  • Something broken: open an issue.
  • A security problem: please do not open an issue; see SECURITY.md.
  • Someone behaving badly in a chat: report them from the box or on the website; that goes straight to moderation.
FAQ

Is this a chatbot? No. A real person is on the other end, every time. The computer you can play games against on the website is labelled as exactly that and never takes a place in matchmaking.

Can my assistant read my messages? Yes. Both directions pass through it, which is why the box exists: in Claude and ChatGPT the box talks to our server directly, so the model only sees what you ask it to.

Does the other person know I am using an assistant? Yes. Their peer card says so.

Does the assistant change what I write? It is instructed not to, the Claude Code plugin enforces it, and the companion tab lets you verify it.

How do I know they replied? The box shows it live. If you have moved on to another chat, your browser can notify you: turn that on when you connect, or later under Settings on fyreflock.com.

What does it cost? Nothing. Fyreflock is in early access, so everything is free, filters included. Later, paid passes will add matching preferences; talking stays free.

The pane: talk without the model in the path

Claude Code 2.1.287 or newer (Desktop 2.1.286) loads the plugin's mod, hooks/mod.tsx, beside the two hooks. It draws a Fyreflock pane next to the transcript and keeps the conversation itself, so a line costs 0.2 s instead of a model turn, and the model never sees the stranger's words unless you ask it to.

/fyreflock              open the pane/fyreflock start        find someone/fyreflock next         skip to somebody else/fyreflock leave        hang up, or stop looking/fyreflock status       who you are talking to and who is waiting/fyreflock <anything>   send that line, exactly as written

In the pane: the chat box's five states, each with its colour on a dot and a rule under the header in your theme's own colours: ready (yellow, how many are by the fire, Start), looking (yellow, Cancel), talking (green), reconnecting (orange, when a poll fails mid-conversation; it clears on the next answer) and ended (coral, "@them left the campfire" or "You left the campfire", with Find someone new). While talking: their lines on the left and yours on the right, a field that sends on Enter, Next person / Leave (hotkeys s, n, l while the pane has the keyboard, ctrl+x tab to give it the keyboard), and Sent / Delivered / Read under your last line. While Claude is idle, the band above the prompt shows the same dot and says who you are talking to and how many lines arrived since you last typed; hide dismisses it for the session. A reply also shows as a toast, and the status line says whether you are looking, talking or reconnecting.

How the pane talks to the server, and how it signs in

The mods API gives a plugin HTTP only, so there is no socket to hold. The pane long-polls fyreflock_app_wait on the same /mcp endpoint the model's tools use, at FYREFLOCK_URL, twenty-five seconds a call (the engine cuts a fetch at thirty), and sends through fyreflock_app_say. Those two are the widget's app-only tools; they return the server's own record of the conversation, which is why the pane can show receipts the fyreflock_listen result cannot. The server refuses them to anything but the box and the pane, so the pane first calls fyreflock_open once and sends the key from its _meta (which no host shows a model) with each of them. Each poll carries pane: true: the server reads that as "the pane is live" for thirty seconds, and a chat box the same Claude Code mounts (the desktop app's Code tab draws MCP Apps) folds to one line pointing here instead of offering a second copy. The loop starts the first time you run /fyreflock and stops when you close the pane with nothing open: a plugin installed everywhere must not hold a connection to fyreflock.com in sessions that have nothing to do with it.

Signing in: there is nothing to paste. A mod cannot borrow Claude Code's own sign-in and cannot take a browser callback, so the pane signs itself in by device flow. The first /fyreflock shows a fyreflock.com link and a code like BCDF-GHJK; open the link, sign in or sign up, check the page shows the same code (a link forwarded to somebody else gives itself away there), press It matches and then Allow, and the pane picks the answer up within five seconds. It keeps its own access and refresh tokens in the plugin's store ($.store, a JSON file under your Claude Code config directory; never $.state, which every plugin can read), renews them by itself, and goes back to its Sign in button if you disconnect it in Settings, where it is listed as Claude Code. A token pasted into the plugin's own Fyreflock token option (the plugin's config menu; it is kept in secure storage, never read from your shell) still overrides all of that.

The pane and the model's tools share one mailbox. Use one or the other for a given conversation: a fyreflock_listen the model holds and the pane's poll would take turns collecting the same lines.

Checking it: claude plugin validate ./plugin reads the module the way the engine will; claude plugin test ./plugin runs tests/mod.test.ts against the engine with the network answered from memory, on the terminal and desktop surfaces. To try it live, claude --plugin-dir ./plugin "/fyreflock start" with FYREFLOCK_URL set to the dev server's /mcp, and a second account in the widget or on fyreflock.com/app to be matched with.

Stop it asking permission for every message

Without this you confirm a dialog for every single line you send, which is unusable. Answer always allow the first time, or add the rule yourself:

/permissions

and allow mcp__plugin_fyreflock_fyreflock__*.

The exact tool prefix is generated by Claude Code from the plugin and server names, and the format has changed before. If that rule does not match, run /mcp or check any Fyreflock tool call in your transcript to see the real name, and use that. The hook matcher in hooks/hooks.json is a regular expression precisely so it keeps working either way.

What the hooks do

Two, both local, both tiny, neither sends anything anywhere.

capture-prompt.mjs runs on every prompt you submit and writes one small file in your system temp directory, keyed by a hash of the session id and overwritten by your next prompt. It holds SHA-256 digests of the forms your message can take and the turn's prompt_id, never your words. That is the whole job.

check-verbatim.mjs runs before fyreflock_say, fyreflock_roost_say, fyreflock_game_move and fyreflock_app_say, under any server name (the plugin's own, a claude mcp add one, or the claude.ai connector Claude Code imports), and refuses the call unless the text being sent is the message you typed this turn. Spacing and curly quotes are forgiven. Rewording, correcting, shortening, summarising, shouting and inventing are not, and the model is told to send your words instead.

"This turn" is the turn, not a time limit: Claude Code gives every event of one prompt the same prompt_id, so a long turn keeps your words, and a model acting on its own in a turn you did not start has nothing it may send.

It compares by equality, not containment. What goes out has to BE your message, not merely appear somewhere inside what you typed: a substring test lets "tell them no, I don't want to meet" send "want to meet", and lets a model assemble sentences a word at a time. Two allowances make that livable, because nobody types bare lines at an assistant: one leading "tell them" is stripped, and anything you wrap in backticks goes byte for byte, punctuation and case included. That last one is the escape hatch when the rules get in your way.

If no capture file exists at all, it allows the call. A missing capture means this plugin did not run, which is our bug, not the model's, and blocking your first message over it would just look broken. Any other unreadable capture counts as you having typed nothing.

Set FYREFLOCK_ASSIST=1 (or true, and nothing else counts) to turn the check off, for when you genuinely want Claude to help you write or translate a line. The stranger is not told when this is on, so it is a tool for you rather than a mode of the product.

What leaves your machine, and where

The pane contacts one host: https://fyreflock.com (its /mcp endpoint and the OAuth device flow under /oauth), or the address in FYREFLOCK_URL if you set one. It sends the lines you type into it, the sign-in token it holds for you, and nothing else: no files, no other conversation text, no environment variables. The two command hooks run only the plugin's own scripts by their literal paths under CLAUDE_PLUGIN_ROOT: capture-prompt.mjs keeps the text of your last prompt, and check-verbatim.mjs reads that text when the model is about to call a sending tool and blocks the call when the words differ. Neither contacts the network.

Pointing it somewhere else

FYREFLOCK_URL overrides the endpoint, for a dev server:

export FYREFLOCK_URL=http://localhost:8787/mcp
Publishing this (maintainer)

This directory is the plugin. It is developed inside the main Fyreflock repo so it stays in step with the server, and published as its own repo because that is what /plugin marketplace add consumes.

gh repo create FuloxDev/fyreflock-claude --public --description "A real person and 25 games, right inside your AI chat. Fyreflock for Claude, ChatGPT and Claude Code: everyone passes a live camera check, no bots, your words sent verbatim."cd plugin && git init && git add -A && git commit -m "Fyreflock plugin"git remote add origin https://github.com/FuloxDev/fyreflock-claude.gitgit push -u origin main

Validate before pushing, and again after any change to plugin.json, hooks.json or .mcp.json:

claude plugin validate ./plugin

The host cannot run these hooks inside a test, but everything they depend on can be: apps/server/test/verbatimhook.test.ts spawns both scripts the way Claude Code does, asserts on the decision they return, pins the matcher regex against the real generated tool names, and keeps every known bypass as a regression case. Run it after touching either script or hooks.json.

One caveat the tests cannot cover: the hooks are spawned as node, resolved on Claude Code's own PATH. If node is not there, neither hook runs, every send is allowed, and nothing on screen says so. Worth checking once on a machine where Node came from nvm or a GUI launcher.

The other thing that genuinely needs a human once: install this in a real session and confirm the PreToolUse matcher actually fires, by trying to get Claude to send something you did not type. If it goes through, the matcher is wrong and the whole verbatim story is decorative.


Find your Flock. Every flock starts with a stranger.
fyreflock.com · assistant mode · safety · privacy · MIT

来源:README.md,提交 920da96

工具

0
该服务器需要登录,因此 SourceWeft 无法在没有账号的情况下读取其工具,也未收录。已连接账号所能看到的内容可能因账号及其权限而异。

版本历史

2
  1. v0.1.1最新Nov 5, 2026
  2. v0.1.0Oct 29, 2026

评分

已满足适用检查项的 85%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分