Token导航 LogoToken导航TokenDH.com
Fiddler MCP Server logo
AI代理stdio官方级别未说明来源级核验

Fiddler MCP Server

MCP Server

Fiddler MCP Bridge是一个实时网络流量分析工具,通过将Fiddler Classic与大型语言模型(如Gemini)连接,提供自然语言查询和分析功能。

工具数

7

提示词数

0

GitHub Stars

5

资源数

0
安全分析PythonAI代理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

lucas-link-code

提供方

lucas-link-code

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install google-generativeai rich mcp pydantic Flask requests

详细介绍

小提琴MCP电桥

Gemini提供的实时网络流量分析。通过模型上下文协议将Fiddler Classic连接到大型语言模型。

这有什么作用

此网桥将捕获的HTTP/S会话从Fiddler直接流式传输到Gemini(或任何兼容MCP的LLM客户端)。询问有关流量的自然语言问题:

  • “显示最近5分钟的会话”
  • “有任何可疑的下载吗?”
  • “分析会话147中的JavaScript”
  • “查找对api.example.com的所有POST请求”

LLM接收原始会话数据(标头、正文、元数据)并自行执行分析。无黑盒威胁得分;你看模型看到了什么。

建筑

Fiddler Classic          enhanced-bridge.py        5ire-bridge.py         Gemini Client
     |                         |                        |                      |
     |   POST /live-session    |                        |                      |
     |------------------------>|  REST API (8081)       |                      |
     |   (JSON session data)   |----------------------->|   MCP tools          |
     |                         |  /api/sessions/...     |--------------------->|
     |                         |                        |   (stdin/stdout)     |
     |                         |                        |                      |
  1. 提琴手 通过CustomRules.js捕获流量并将JSON POST发送到网桥
  2. 增强桥。py 在内存中缓冲会话并公开REST端点
  3. 5ire-bridge.py 将REST调用转换为LLM的MCP工具
  4. gemini-fiddler-client.py 连接所有内容并提供交互式聊天界面

先决条件

  • Windows 10/11
  • Python 3.10或更高版本 (推荐3.11或3.12)
  • Fiddler Classic(必须安装并运行至少一次)
  • Gemini API密钥(免费层可在https://makersuite.google.com/app/apikey)

重要提示: MCP(模型上下文协议)包需要Python 3.10+。像Python 3.9这样的旧版本将无法运行。

快速开始

运行一键部署脚本:

deploy-mcp.bat

脚本处理一切:

  1. 检查Python安装
  2. 查找您的Fiddler脚本目录
  3. 安装Python依赖项
  4. 提示您的Gemini API密钥
  5. 将CustomRules.js部署到Fiddler
  6. 在单独的窗口中启动网桥和客户端

部署后:

  1. 在Fiddler中,重新加载脚本:规则>重新加载脚本(Ctrl+R)
  2. 浏览网页以产生流量
  3. 在Gemini Fiddler客户端窗口中提问

MCP工具

LLM暴露了七种工具:

工具目的
fiddler_mcp__live_sessions列出最近的会话及其元数据和风险指标
fiddler_mcp__sessions_search按主机、URL、状态、方法、大小、MIME类型筛选
fiddler_mcp__session_headers获取会话的请求/响应标头
fiddler_mcp__session_body获取请求/响应正文(内容)
fiddler_mcp__live_stats缓冲深度、捕获率、正常运行时间
fiddler_mcp__sessions_timeline按时间、主机、状态或内容类型聚合
fiddler_mcp__sessions_clear导出证据后清除缓冲区

工具返回原始数据。LLM根据返回的标头、正文和元数据执行推理。

示例会话

You: Show me JavaScript files from the last 10 minutes

[Tool: fiddler_mcp__sessions_search]
Found 3 sessions matching content_type=javascript, since_minutes=10

You: Analyze session 175

[Tool: fiddler_mcp__session_body]
Session 175: 7.2KB JavaScript from cdn.example.com
Contains: obfuscated variable names, eval() call, base64 encoded string

The code appears to be a loader script. The eval() on line 47 executes
decoded content from the base64 payload. This pattern is common in
dropper scripts...

文件结构

fiddler-mcp/
├── deploy-mcp.bat                   # One-click setup (run this first)
├── install-dependencies-manual.bat  # Manual dependency installer (if deploy fails)
├── diagnose-environment.bat         # Diagnostic tool for troubleshooting
├── enhanced-bridge.py               # HTTP server, session buffer (port 8081)
├── 5ire-bridge.py                   # MCP server (FastMCP over stdin/stdout)
├── gemini-fiddler-client.py         # Interactive Gemini chat client
├── CustomRules.js                   # Fiddler script (auto-deployed)
├── requirements-gemini.txt          # Gemini client dependencies
├── requirements-mcp.txt             # MCP bridge dependencies
├── gemini-fiddler-config.json       # Generated config (API key, model)
├── TROUBLESHOOTING.txt              # Detailed troubleshooting guide
├── MCP_Data_Flow.md                 # Data flow walkthrough
├── MCP_Server_Guide.md              # Architecture overview
└── MCP_TOOL_CONTRACT.md             # Tool schemas and responses

手动设置

如果单击脚本失败,请手动安装:

:: Install dependencies
pip install google-generativeai rich mcp pydantic Flask requests

:: Copy CustomRules.js to Fiddler
copy CustomRules.js "%USERPROFILE%\Documents\Fiddler2\Scripts\"

:: Start the bridge (terminal 1)
python enhanced-bridge.py

:: Start the client (terminal 2)
python gemini-fiddler-client.py

客户端在第一次运行时提示您输入API密钥。

配置

gemini-fiddler-config.json (由deploy mcp.bat创建):

{
  "api_key": "your-api-key",
  "model": "gemini-2.5-flash",
  "auto_save_full_bodies": false,
  "mcp_server_command": ["python", "5ire-bridge.py"],
  "bridge_url": "http://127.0.0.1:8081"
}

可用型号:

  • gemini-2.5-flash (推荐,快速)
  • gemini-2.5-pro (更有能力)
  • gemini-2.0-flash
  • gemini-1.5-pro
  • gemini-1.5-flash

故障排除

依赖项安装失败

快速修复:运行手动安装程序

install-dependencies-manual.bat

这将单独安装每个软件包。完成后,再次运行deploy-mcp.bat。

要进行诊断,请运行:

diagnose-environment.bat

这测试Python安装、pip可用性、与PyPI的网络连接、包安装权限和防病毒干扰。

有关详细解决方案,请参阅TROUBLESHOOTING.txt。

端口8081已在使用中

netstat -ano | findstr :8081
taskkill /F /PID 

CustomRules.js未部署

  • 在运行deploy-mcp.bat之前关闭Fiddler
  • 如果权限被拒绝,则以管理员身份运行
  • 手动复制到 %USERPROFILE%\Documents\Fiddler2\Scripts\

没有出现会话

  • 验证Fiddler是否正在捕获流量(检查Fiddler中的会话列表)
  • 在Fiddler中重新加载脚本:规则>重新加载脚本
  • 检查网桥控制台是否有POST/实时会话消息

桥没有响应

curl http://127.0.0.1:8081/health
curl http://127.0.0.1:8081/api/stats

启用调试模式

SET DEPLOY_DEBUG=1
deploy-mcp.bat

运作原理

系统对每个捕获的会话都遵循此数据路径:

  1. Fiddler拦截请求/响应对
  2. CustomRules.js将会话序列化为JSON,将POST序列化为 http://127.0.0.1:8081/live-session
  3. enhanced-bridge.py将会话存储在环形缓冲区中(最多2000个会话)
  4. 当LLM调用以下工具时 session_headers,5ire-bridge.py从REST API获取
  5. JSON响应被注入到Gemini提示符中
  6. Gemini分析数据并用自然语言回应

MCP_Data_Flow.md 有关代码片段的详细演练。

用例

  • 恶意软件流量分析(FakeUpdates、SocGholish、漏洞利用工具包)
  • API调试与检验
  • 会话取证和时间线重建
  • JavaScript去病毒辅助
  • 标头和cookie分析
  • 重定向链调查

致谢

  • EKFiddle为规则格式提供灵感
  • 模型上下文协议规范
  • 小提琴手社区

目录标签

目录标签

安全分析PythonAI代理Web流量分析本地部署LLM集成API调试会话取证

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

api-key

工具数量(toolCount,工具数)

7

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdioapi-key部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP