Token导航 LogoToken导航TokenDH.com
研究检索敏感数据github未标认证来源可访问许可证需确认审计异常

fiddler-mcp-setupfiddler MCP 设置

Agent Skill

fiddler-mcp-setup 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

256

周安装

11

GitHub Stars

4

下载量

90
CodexClaudeCursorGemini CLI

安装说明

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

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:fiddler-mcp-setup(fiddler MCP 设置)
来源仓库:https://github.com/telerik/fiddler-agent-tools
仓库路径:skills/fiddler-mcp-setup
安装命令:
npx skills add https://github.com/telerik/fiddler-agent-tools --skill fiddler-mcp-setup
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/telerik/fiddler-agent-tools --skill fiddler-mcp-setup

简介

fiddler-mcp-setup 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中快速定位候选结果。

  • 适用于需要根据关键词或任务场景进行信息定位的场景。
  • 通过关键词搜索和来源线索筛选目标信息。
  • 安装命令:npx skills add https://github.com/telerik/fiddler-agent-tools --skill fiddler-mcp-setup。
  • 建议确认权限范围和维护状态后再使用。

SKILL.md

Fiddler MCP Setup

Configure the Fiddler Everywhere MCP server so that agent tools can call Fiddler's traffic inspection, status, and session APIs.

Operating rules

  • Shell-first. MCP is not yet configured, so you cannot use MCP tools.
  • Sequential execution only. Follow steps strictly in order — do not run steps or scripts in parallel. Each step may depend on values produced by the previous one.
  • Execute provided scripts directly - do not modify or substitute the existing scripts.
  • On Windows - Detect opened terminal. Only if it is not powershell - wrap and run the scripts with: powershell.exe -Command 'script'. Use single quotes to wrap the script!
  • curl only for Steps 3 through 5. No other raw HTTP requests.
  • The MCP path is always /mcp. Do not attempt to discover or vary it.
  • Direct path checks only when detecting agent directories (e.g. test -d.vscode). Never use recursive globs (**) or rg/grep without a scoped directory argument.

Step 1 — Verify Fiddler is installed and running

Before any MCP configuration, confirm Fiddler Everywhere is installed and the MCP listener is reachable.

Check installation

macOS:

if [ -d "/Applications/Fiddler Everywhere.app" ]; then echo "INSTALLED"; else echo "NOT_INSTALLED"; fi

Linux:

if command -v fiddler-everywhere &>/dev/null || ls ~/Downloads/FiddlerEverywhere.AppImage &>/dev/null; then echo "INSTALLED"; else echo "NOT_INSTALLED"; fi

Windows (PowerShell):

$installed = Get-ItemProperty `
  "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*",
  "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*",
  "HKLM:\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*" `
  -ErrorAction SilentlyContinue |
  Where-Object { $_.DisplayName -like "*Fiddler Everywhere*" }
if ($installed) { "INSTALLED" } else { "NOT_INSTALLED" }

If NOT_INSTALLED: stop and tell the user:

"Fiddler Everywhere is not installed. Please install it first."

Step 2 — Detect agent and check for existing configuration

2a — Detect the agent

Use a three-tier strategy. Stop at the first tier that yields exactly one match.

Tier 1 — Environment variables (which agent is running this shell right now)

macOS / Linux:

# VS Code / GitHub Copilot
[ -n "$VSCODE_PID" ] || [ "$TERM_PROGRAM" = "vscode" ] && echo "vscode"
# Cursor
[ -n "$CURSOR_TRACE_ID" ] || [ "$TERM_PROGRAM" = "cursor" ] && echo "cursor"
# Claude Code CLI
[ -n "$CLAUDE_CODE_ENTRYPOINT" ] && echo "claude-code"
# GitHub Copilot CLI
[ -n "$GITHUB_COPILOT_CLI" ] && echo "copilot-cli"
# OpenAI Codex CLI
[ -n "$OPENAI_CODEX" ] && echo "codex"

Windows (PowerShell):

if ($env:VSCODE_PID -or $env:TERM_PROGRAM -eq "vscode") { "vscode" }
if ($env:CURSOR_TRACE_ID -or $env:TERM_PROGRAM -eq "cursor") { "cursor" }
if ($env:CLAUDE_CODE_ENTRYPOINT) { "claude-code" }
if ($env:GITHUB_COPILOT_CLI) { "copilot-cli" }
if ($env:OPENAI_CODEX) { "codex" }

If exactly one result is printed, set AGENT to that value and skip to the mapping table. If more than one result is printed, proceed to Tier 2. If no results, proceed to Tier 2.

Claude Desktop does not inject env vars into child shells. If no env var matches, it may still be the active agent — check via Tier 3.

Tier 2 — Parent process name (OS-portable, doesn't rely on documented env vars)

macOS / Linux:

ps -p $PPID -o comm= 2>/dev/null

Windows (PowerShell):

(Get-Process -Id (Get-CimInstance Win32_Process -Filter "ProcessId=$PID").ParentProcessId).Name

Match the output against known process names:

Process name containsAgent
code, code-helpervscode
cursorcursor
claudeclaude-code
copilotcopilot-cli
codexcodex

If matched unambiguously, set AGENT and skip to the mapping table. If still ambiguous or unrecognised, proceed to Tier 3.

Tier 3 — Filesystem markers (fallback only)

test -f ~/.copilot/mcp-config.json && echo "copilot-cli"                                              # GitHub Copilot CLI
test -d .claude && echo "claude-code"                                                                  # Claude Code CLI
test -f "$HOME/Library/Application Support/Claude/claude_desktop_config.json" && echo "claude-desktop" # Claude Desktop (macOS)
test -f "$APPDATA/Claude/claude_desktop_config.json" && echo "claude-desktop"                          # Claude Desktop (Windows)
test -d .vscode && echo "vscode"                                                                        # VS Code / GitHub Copilot
test -d .cursor && echo "cursor"                                                                        # Cursor
test -d ~/.codex && echo "codex"                                                                        # OpenAI Codex CLI
which copilot 2>/dev/null && echo "copilot-cli-in-path"                                                # Copilot CLI fallback
which codex  2>/dev/null && echo "codex-in-path"                                                       # Codex CLI fallback

If multiple markers match, do not guess. Ask the user:

"Multiple agent environments were detected on this machine. Which one are you setting Fiddler MCP up for? (Claude Desktop, Claude Code CLI, GitHub Copilot CLI, VS Code / GitHub Copilot, Cursor, or OpenAI Codex CLI)"

Agent → config mapping

AgentSet AGENT=Set CONFIG_FILE=
vscodevscode~/Library/Application Support/Code/User/mcp.json (macOS/Linux) or %APPDATA%\Code\User\mcp.json (Windows)
cursorcursor~/.cursor/mcp.json
claude-codeclaude-code~/.claude.json
claude-desktopclaude-desktop~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
copilot-cli or copilot-cli-in-pathcopilot-cli~/.copilot/mcp-config.json
codex or codex-in-pathcodex~/.codex/config.toml

If no tier yields a match, ask:

"Which agent are you setting this up for? (Claude Desktop, Claude Code CLI, GitHub Copilot CLI, VS Code / GitHub Copilot, Cursor, or OpenAI Codex CLI)"

Use the user's answer to set AGENT and CONFIG_FILE.

2b — Check for existing Fiddler config

With CONFIG_FILE now known, check whether a Fiddler entry already exists:

grep -l "fiddler" "$CONFIG_FILE" 2>/dev/null
ResultAction
File matchedA Fiddler config already exists. Read the file and show the user the current url and masked key (xxxxxxxx…). Ask: "Fiddler MCP is already configured in $CONFIG_FILE. Do you want to re-run setup to refresh the API key, or is something not working?" Only continue if the user confirms.
No matchNo existing config found. Proceed to Step 3.

Step 3 — Discover the MCP port

Fiddler Everywhere listens on port 8868 by default. Before making any calls, confirm the correct port is reachable and set PORT for all subsequent steps.

macOS / Linux:

curl -s -o /dev/null -w "%{http_code}" -X POST "http://localhost:8868/mcp" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":0,"method":"ping","params":{}}'

Windows (PowerShell):

curl.exe -s -o NUL -w "%{http_code}" -X POST "http://localhost:8868/mcp" `
  -H "Content-Type: application/json" `
  -H "Accept: application/json, text/event-stream" `
  -d '{\"jsonrpc\":\"2.0\",\"id\":0,\"method\":\"ping\",\"params\":{}}'
ResultAction
Any response (even 4xx)Port 8868 is reachable. Set PORT=8868 and proceed to Step 4.
000 (connection refused)Port 8868 is not listening. Run the discovery script below.

Port discovery script:

macOS / Linux:

python3 -c "
import json, glob, os
ports = set()
for f in glob.glob(os.path.expanduser('~/.fiddler/*/Settings/appsettings.json')):
    try:
        p = json.load(open(f)).get('MCPServerSettings', {}).get('Port')
        if p and p != 8868:
            ports.add(p)
    except: pass
print(' '.join(str(p) for p in ports) if ports else 'none')
"

Windows (PowerShell):

$ports = Get-ChildItem "$env:USERPROFILE\.fiddler\*\Settings\appsettings.json" -ErrorAction SilentlyContinue |
  ForEach-Object { (Get-Content $_ | ConvertFrom-Json).MCPServerSettings.Port } |
  Where-Object { $_ -and $_ -ne 8868 } | Select-Object -Unique
Write-Output $(if ($ports) { $ports -join ' ' } else { 'none' })

Try a ping call to each discovered port. Set PORT to the first port that responds. If no port responds, Fiddler is not running. Launch it using the commands below, wait 15 seconds, then retry discovery from the top of Step 3.

Launch Fiddler:

macOS:

open -a "Fiddler Everywhere" && sleep 15

Linux:

(nohup fiddler-everywhere &>/dev/null &); sleep 15

Windows: Important On windows if the current terminal used is bash, use the specific GitBash script.

PowerShell

$candidates = @(
  "$env:LOCALAPPDATA\Programs\Fiddler Everywhere\Fiddler Everywhere.exe",
  "C:\Program Files\Fiddler Everywhere\Fiddler Everywhere.exe",
  "C:\Program Files (x86)\Fiddler Everywhere\Fiddler Everywhere.exe"
)
$fiddlerExe = $candidates | Where-Object { Test-Path $_ } | Select-Object -First 1
if ($fiddlerExe) {
  $cmdLine = '"' + $fiddlerExe + '"'
  Invoke-CimMethod -ClassName Win32_Process -MethodName Create -Arguments @{ CommandLine = $cmdLine } | Out-Null
  Start-Sleep 15
}

Git Bash

FIDDLER_EXE=""
for dir in "$LOCALAPPDATA/Programs/Fiddler Everywhere" \
           "/c/Program Files/Fiddler Everywhere" \
           "/c/Program Files (x86)/Fiddler Everywhere"; do
  if [ -f "$dir/Fiddler Everywhere.exe" ]; then
    FIDDLER_EXE="$dir/Fiddler Everywhere.exe"
    break
  fi
done
if [ -n "$FIDDLER_EXE" ]; then
  "$FIDDLER_EXE" &
  sleep 15
fi

Important: Wait 15 seconds for Fiddler to launch, before continuing with the next steps!

If still unreachable after relaunch:

"Fiddler Everywhere is not reachable. Please verify it is running and try again."

Once PORT is established, use it for all subsequent steps.

PORT is used in all commands from Step 4 onwards.

Step 4 — Verify login and get the API key

4a — Get or generate the API key

Once logged in, call the key-management endpoint on PORT. It returns the existing API key (or generates one automatically if none exists) along with the MCP URL.

curl -s -X POST "http://localhost:$PORT/api/McpManagement/GetOrGenerateApiKey"

Expected success response:

{
  "apiKey": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "port": 8868,
  "url": "http://localhost:8868/mcp"
}

Extract apiKey as KEY and url as MCP_URL.

ResultMeaningAction
JSON with apiKey fieldSuccessExtract apiKey as KEY and url as MCP_URL. Proceed to Step 5.
403 / access-denied bodySubscription plan does not include MCPStop: "Your Fiddler plan does not include MCP access. Please upgrade your subscription."
User is not logged inUser not logged in yet.Step 4b - Initiate Login
Any other failureUnexpected failureNote the response and ask the user to check Fiddler is running correctly.

4b - Initiate Login (if user is not logged in):

The steps are: initialize -> list_tools -> initiate_login Send an MCP initialize request and get the returned session id.

macOS / Linux:

SESSION_ID=$(curl -si -X POST "http://localhost:$PORT/mcp" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"mcp-setup","version":"1.0"}}}' \
  | grep -i "^mcp-session-id:" | awk '{print $2}' | tr -d '\r')
echo "Session ID: $SESSION_ID"

Windows (PowerShell):

$initResp = curl.exe -si -X POST "http://localhost:$PORT/mcp" `
  -H "Content-Type: application/json" `
  -H "Accept: application/json, text/event-stream" `
  -d '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2024-11-05\",\"capabilities\":{},\"clientInfo\":{\"name\":\"mcp-setup\",\"version\":\"1.0\"}}}'
$SESSION_ID = ($initResp | Select-String "(?i)mcp-session-id:\s*(\S+)").Matches.Groups[1].Value.Trim()
Write-Host "Session ID: $SESSION_ID"

If $SESSION_ID is empty, the server did not return a session ID — Fiddler may not be fully started. Wait a few seconds and retry.

Then fetch the tools list using the same session.

macOS / Linux:

curl -s -X POST "http://localhost:$PORT/mcp" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Mcp-Session-Id: $SESSION_ID" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'

Windows (PowerShell):

curl.exe -s -X POST "http://localhost:$PORT/mcp" `
  -H "Content-Type: application/json" `
  -H "Accept: application/json, text/event-stream" `
  -H "Mcp-Session-Id: $SESSION_ID" `
  -d '{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tools/list\",\"params\":{}}'

Confirm initiate_login appears in the response before proceeding.

Now call initiate_login using the same session.

macOS / Linux:

curl -s -X POST "http://localhost:$PORT/mcp" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Mcp-Session-Id: $SESSION_ID" \
  -d '{"jsonrpc":"2.0","id":4,"method":"tools/call","params":{"name":"initiate_login","arguments":{}}}'

Windows (PowerShell):

curl.exe -s -X POST "http://localhost:$PORT/mcp" `
  -H "Content-Type: application/json" `
  -H "Accept: application/json, text/event-stream" `
  -H "Mcp-Session-Id: $SESSION_ID" `
  -d '{\"jsonrpc\":\"2.0\",\"id\":4,\"method\":\"tools/call\",\"params\":{\"name\":\"initiate_login\",\"arguments\":{}}}'

This opens a Chrome window for authentication. Tell the user:

"A login window has been opened. Please complete sign-in, then let me know when done."

When done - retry Step 4a.


Step 5 — Probe the server

Verify the key is valid using the MCP_URL from Step 3.

macOS / Linux:

curl -s -o /dev/null -w "%{http_code}" -X POST "MCP_URL" \
  -H "Authorization: ApiKey KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"mcp-setup","version":"1.0"}}}'

Windows (PowerShell):

curl.exe -s -o NUL -w "%{http_code}" -X POST "MCP_URL" `
  -H "Authorization: ApiKey KEY" `
  -H "Content-Type: application/json" `
  -H "Accept: application/json, text/event-stream" `
  -d '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2024-11-05\",\"capabilities\":{},\"clientInfo\":{\"name\":\"mcp-setup\",\"version\":\"1.0\"}}}'
CodeMeaningAction
200 or any 2xxKey valid (response may be an SSE stream — that is normal)Proceed to Step 6.
000Fiddler stopped between Step 4 and nowRe-run from Step 3.
401Key rejectedRe-run Step 4 to regenerate the key, then retry.
403Subscription plan does not include MCPStop: "Your Fiddler plan does not include MCP access."
Anything elseUnexpected — note the codeProceed to Step 6 anyway.

Do not retry with any path other than /mcp. The Fiddler MCP path is always /mcp.


Step 6 — Write the config file

Use CONFIG_FILE set in Step 2. Use the exact KEY and MCP_URL values from Step 4.

If CONFIG_FILE already exists: read it first, then add only the fiddler server block. Do not remove or overwrite other existing server entries.

If it does not exist: create it using the template for AGENT below.

AGENT=copilot-cli

{
  "mcpServers": {
    "fiddler": {
      "type": "http",
      "url": "MCP_URL",
      "headers": {
        "Authorization": "ApiKey KEY"
      },
      "tools": ["*"]
    }
  }
}
Note: "tools": ["*"] is required by Copilot CLI — omitting it disables all tools.

AGENT=claude-desktop

Claude Desktop does not support the http MCP transport directly. Use npx mcp-remote as a bridge.

{
  "mcpServers": {
    "fiddler": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "MCP_URL",
        "--header",
        "Authorization:ApiKey KEY"
      ]
    }
  }
}
Note: npx must be available on the system PATH. If Node.js is not installed, direct the user to https://nodejs.org.

AGENT=claude-code

{
  "mcpServers": {
    "fiddler": {
      "type": "http",
      "url": "MCP_URL",
      "headers": {
        "Authorization": "ApiKey KEY"
      }
    }
  }
}

AGENT=vscode

{
  "servers": {
    "fiddler": {
      "type": "http",
      "url": "MCP_URL",
      "headers": {
        "Authorization": "ApiKey KEY"
      }
    }
  }
}

AGENT=cursor

{
  "mcpServers": {
    "fiddler": {
      "url": "MCP_URL",
      "headers": {
        "Authorization": "ApiKey KEY"
      }
    }
  }
}

AGENT=codex

Codex CLI uses TOML.

[mcp_servers.fiddler]
enabled = true
url = "MCP_URL"

[mcp_servers.fiddler.http_headers]
Authorization = "ApiKey KEY"

Git safety

All agents use global config files outside any repository. Inform the user:

"Your Fiddler API key is stored in CONFIG_FILE. Keep this file private."

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.19%
按下载量换算31

Claude

29.93%
按下载量换算27

Cursor

18.22%
按下载量换算16

Gemini CLI

8.83%
按下载量换算8

安全审计

Gen Agent Trust Hub

通过

Socket

可疑

Snyk

未通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills