Back to MCP directory
publicPublicdnsLocal runtime

phone-a-friend-mcp

一个实现Claude Code实例间实时通信的MCP服务器,通过TCP中心枢纽协调不同实例间的问答对话。

article

README

🚀 电话求助MCP(Phone - a - Friend MCP)

电话求助MCP是一个MCP服务器,它能够让Claude Code实例进行实时通信。一个实例进入“监听模式”,而另一个实例则带着特定意图发起联系。

🚀 快速开始

本项目可让Claude Code实例实现实时通信,按照以下步骤操作即可使用。

🏗️ 架构

┌─────────────────────────────────────────┐
│      paf - hub (TCP服务器)               │
│      本地地址:7777                     │
└─────────────────────────────────────────┘
         ▲                    ▲
         │ TCP                │ TCP
         │                    │
   Claude标签1          Claude标签2
   (监听方)            (呼叫方)

📦 安装指南

在终端中执行以下命令进行安装:

cd ~/.claude/mcps/phone - a - friend
pip install -e .

💻 使用示例

基础用法

按照以下步骤使用本服务:

步骤1:启动中心服务

paf - hub

步骤2:配置Claude Code

~/.claude/settings.json文件中添加以下内容:

{
  "mcpServers": {
    "phone - a - friend": {
      "command": "python",
      "args": ["-m", "phone_a_friend.server"],
      "cwd": "/Users/YOUR_USERNAME/.claude/mcps/phone - a - friend/src"
    }
  }
}

步骤3:开始使用

标签1(监听方)

"监听问题。你是认证专家。"

paf(action="listen", session_name="auth - expert", description="认证专家") → 进入阻塞等待状态...

标签2(呼叫方)

"向认证专家询问令牌刷新的问题。"

paf(action="list_sessions") → 看到 "auth - expert" → paf(action="connect", target_session="auth - expert", intent="令牌刷新", my_name="feature - dev")paf(action="send", target_session="auth - expert", message="如何处理过期令牌?", my_name="feature - dev")paf(action="wait_response", my_name="feature - dev") → 进入阻塞等待回复状态

标签1收到消息并回复: → 监听方接收到问题后解除阻塞 → paf(action="respond", session_name="auth - expert", message="使用滑动窗口...")paf(action="listen", ...) → 回到等待状态

高级用法

本项目提供了完整的对话流程,以下是详细的交互过程:

监听方                              呼叫方
────────                              ──────
listen() [进入阻塞状态]
                                      connect(intent)
                                      send(问题)
[接收到问题]
respond(答案)
                                      wait_response() → 答案
listen() [进入阻塞状态]                     send(后续问题)
[接收到后续问题]
...

📚 详细文档

工具参考

单工具paf支持以下操作:

| 操作 | 参数 | 描述 | |--------|------------|-------------| | listen | session_name, description | 进入阻塞状态等待消息 | | list_sessions | (无) | 列出活跃的监听方 | | connect | target_session, intent, my_name | 带着特定意图进行连接 | | send | target_session, message, my_name | 发送消息 | | wait_response | my_name | 进入阻塞状态等待回复 | | respond | session_name, message | 回复呼叫方 | | end_session | session_name | 关闭会话 |

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client