Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CHARLES_PASS | No | Charles Web Interface password | 123456 |
| CHARLES_USER | No | Charles Web Interface username | admin |
| CHARLES_PROXY_HOST | No | Charles proxy host | 127.0.0.1 |
| CHARLES_PROXY_PORT | No | Charles proxy port | 8888 |
| CHARLES_CONFIG_PATH | No | Charles configuration file path | 自动探测 |
| CHARLES_MAX_STOPTIME | No | Maximum duration for bounded recording in seconds | 3600 |
| CHARLES_REQUEST_TIMEOUT | No | Control plane HTTP timeout in seconds | 10 |
| CHARLES_MANAGE_LIFECYCLE | No | Whether the MCP server manages the Charles lifecycle (start/stop) | false |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| start_live_capture | Start or adopt a live capture session for incremental polling. Returns a capture_id required by all other live tools. Use adopt_existing=true to take over an ongoing Charles session without clearing it. |
| read_live_capture | Read incremental traffic and advance the cursor. Returns compact entry summaries (host/method/path/status only). Use query_live_capture_entries for structured filtering instead of this tool. This tool advances the internal cursor — repeated calls only return new items. |
| peek_live_capture | Preview incremental traffic without advancing the cursor. Returns compact entry summaries (host/method/path/status only). Safe to call repeatedly — does not consume items. Use query_live_capture_entries for structured filtering and analysis. |
| stop_live_capture | Stop an active live capture and optionally persist the filtered snapshot. Only status='stopped' means the capture is fully closed. |
| query_live_capture_entries | Analyze the active live capture with structured summary-first filtering. This is the RECOMMENDED tool for inspecting live traffic. Does NOT advance the cursor — safe to call repeatedly with different filters. Default cursor=0 scans all captured data from the beginning. Use get_traffic_entry_detail to drill down into a specific entry_id. |
| analyze_recorded_traffic | Analyze a saved recording snapshot with compact summaries. Returns structured TrafficSummary items with matched_fields and match_reasons. Use get_traffic_entry_detail to drill down into a specific entry_id afterwards. |
| get_traffic_entry_detail | Load one traffic entry detail view for drill-down inspection. Requires entry_id from a prior summary/query call. For history entries, pass recording_path from the summary. For live entries, pass capture_id from the summary. Keep include_full_body=false unless you specifically need the raw body text. |
| get_capture_analysis_stats | Return coarse traffic class counts for a live capture or saved recording. |
| group_capture_analysis | Group analyzed traffic so the agent can inspect hot spots with lower token cost. |
| query_recorded_traffic | Query the latest saved recording. This tool never reads the live Charles session. |
| list_recordings | List saved recording files using an explicit history-oriented tool name. |
| get_recording_snapshot | Load a saved recording snapshot. This tool never reads the live Charles session. |
| proxy_by_time | Capture traffic for a fixed duration or read the latest saved history package. |
| filter_func | Filter traffic from a fixed capture window or the latest saved history package. |
| throttling | Set a network throttling preset in Charles. |
| reset_environment | Reset the Charles environment and restore the saved configuration. |
| list_sessions | List historical session files via the legacy tool name. |
| charles_status | Check Charles connectivity and active live-capture state. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |