一种氛围代码MCP Interactsh桥接(或“MCP与Interactsh的桥接氛围代码”)
特点/功能
- 会话配置 – 生成RSA密钥对,注册到公共交互舰队,并返回可直接使用的回调域名。
- 投票与解密 – 获取加密的交互数据,并使用会话的私钥在本地进行解密。
- 生命周期管理 – 列出缓存的会话并在完成后将其注销。
- 演示脚本 –
npm run demo启动一个会话,发出一个真实的HTTP探测请求,并打印捕获的DNS/HTTP事件。
要求
- Node.js 18 或更高版本(已在 Node 20.19 上测试)
- 网络访问interactsh集群(默认为
https://oast.pro)
安装(本地)
git clone https://github.com/tachote/mcp-interactsh
cd mcp-interactsh
npm install通过 npx 运行
npx -y mcp-interactsh你也可以直接传递环境变量:
INTERACTSH_BASE_URL=https://oast.pro \
INTERACTSH_DOMAIN_SUFFIX=oast.pro \
npx -y mcp-interactsh使用方法
运行MCP服务器
MCP服务器通过标准输入输出(stdio)进行通信。请将您的MCP兼容客户端(例如:Claude Code、VS Code MCP、Cursor)配置为启动:
node src/server.js可选的环境变量:
| 变量 | 默认值 | 描述 |
|---|---|---|
INTERACTSH_BASE_URL | https://oast.pro | 要交互的目标 interactsh 服务器的基础 URL。 |
INTERACTSH_DOMAIN_SUFFIX | 来源于宿主的 INTERACTSH_BASE_URL 用于构建回调主机的域名后缀。在使用自定义的 interactsh 部署时可进行覆盖。 | |
INTERACTSH_TOKEN | _(未设置)_ | 如果您的Interact.sh服务器强制要求认证,请提供授权令牌。 |
可用的MCP工具
create_interactsh_session– 注册一个新会话,并返回关联ID、密钥、PEM私钥、回调域、服务器URL,以及明确的探测指令。
- 探测规则: - 构建主机为 .。 - correlation_id 正好是20个小写十六进制字符;请勿修改或截断。 - nonce13 正好是13个小写字母数字字符 [a-z0-9]。 - 第一个点之前的标签总长度必须为33个字符(20 + 13)。 - 请求至 . (无随机数)被 interactsh 忽略。 - 对于探测,建议使用普通的HTTP。等待2-3秒,然后轮询事件。
list_interactsh_sessions– 列出当前MCP进程在内存中缓存的所有会话。poll_interactsh_session– 投票交互器用于新的交互,返回解密后的事件。可选参数允许您按以下条件进行过滤:method,path_contains,query_contains,protocol,或者text_contains专注于特定的回调函数。deregister_interactsh_session– 注销会话并从本地状态中移除。
在Claude代码中配置(JSON)
Claude Code 支持通过 stdio 协议连接 MCP 服务器。如果您希望通过 JSON 进行配置,请在 Claude Code 的设置中添加如下条目(设置 → MCP 服务器 或相应的配置文件):
{
"mcpServers": {
"interactsh": {
"transport": "stdio",
"command": "npx",
"args": ["-y", "mcp-interactsh"],
"env": {
"INTERACTSH_BASE_URL": "https://oast.pro",
"INTERACTSH_DOMAIN_SUFFIX": "oast.pro"
// "INTERACTSH_TOKEN": "your_server_token_if_required"
}
}
}
}如果你更倾向于使用本地路径(不使用 npx),请使用:
{
"mcpServers": {
"interactsh": {
"transport": "stdio",
"command": "node",
"args": ["/absolute/path/to/src/server.js"],
"env": {
"INTERACTSH_BASE_URL": "https://oast.pro",
"INTERACTSH_DOMAIN_SUFFIX": "oast.pro"
}
}
}
}或者你可以通过以下方式添加它:
claude mcp add --transport stdio interactsh \
-e INTERACTSH_BASE_URL=https://oast.pro \
-e INTERACTSH_DOMAIN_SUFFIX=oast.pro \
-- npx -y mcp-interactsh在Codex中进行配置(TOML格式)
Codex 从(某处)读取 MCP 服务器配置 ~/.codex/config.toml添加如下条目:
[mcp_servers.interactsh]
command = "npx"
args = ["-y", "mcp-interactsh"]
env = { INTERACTSH_BASE_URL = "https://oast.pro", INTERACTSH_DOMAIN_SUFFIX = "oast.pro" }如果你更倾向于引用本地克隆的副本而不是使用 npx:
[mcp_servers.interactsh]
command = "node"
args = ["/absolute/path/to/src/server.js"]
env = { INTERACTSH_BASE_URL = "https://oast.pro", INTERACTSH_DOMAIN_SUFFIX = "oast.pro" }或者你可以通过以下方式添加它:
codex mcp add --env INTERACTSH_BASE_URL=https://oast.pro --env INTERACTSH_DOMAIN_SUFFIX=oast.pro interactsh -- npx -y mcp-interactsh你可以通过以下方式验证配置:
codex mcp list
codex mcp get interactsh --json许可证
根据MIT许可协议发布。详见 LICENSE 详情如下。
致谢/鸣谢
这座桥梁(或这个项目)是在ProjectDiscovery出色工作的基础上建立起来的。请参阅原始的interactsh项目:
- Interactsh 仓库地址:https://github.com/projectdiscovery/interactsh
