{"id":"heizaheiza-charles-mcp","name":"Charles-mcp","homepage":null,"repo_url":"https://github.com/heizaheiza/Charles-mcp","category":"devtools","subcategories":[],"tags":["mcp","charles-proxy","traffic-analysis","network-debugging","python","stdio-mcp","live-capture","http","debugging-tools"],"what_it_does":"charles-mcp is an MCP server that connects an AI agent to Charles Proxy’s Web Interface/recording data, enabling live capture reading and structured analysis of HTTP traffic (with a summary-first approach and drill-down to per-entry details). It can also analyze recorded sessions/history and provide control/status tools for the Charles environment.","use_cases":["Real-time debugging of web traffic while a developer/tester watches Charles sessions","AI-assisted triage of “what just happened” by grouping and summarizing live requests","Investigating specific requests/responses by drilling into an entry’s detail when a summary indicates a target","Analyzing historical Charles recordings (.chlsj) with structured summaries and match reasoning","Network condition simulation via Charles throttling controls during agent workflows"],"not_for":["Production-grade secure data processing without access controls (it is designed for local proxy/diagnostics workflows)","Handling sensitive data without an explicit redaction/masking layer (tooling states it returns full raw content by default)","High-assurance compliance use cases where audit requirements and formal contracts are mandatory"],"best_when":"You are running Charles locally with the Web Interface enabled and want an MCP-enabled agent to summarize and explore traffic efficiently without receiving full raw packet bodies by default.","avoid_when":"You cannot secure access to Charles Web Interface credentials or you cannot prevent agents from viewing sensitive headers/bodies contained in captured traffic.","alternatives":["Dedicated Charles Proxy scripting/exports plus custom analysis tooling (non-MCP)","Other network capture/proxy MCP or integrations (if available) that support redaction pipelines","Direct Charles JSON snapshot parsing with a local script (when you do not need MCP agent orchestration)"],"af_score":57.8,"security_score":28.8,"reliability_score":41.2,"package_type":"mcp_server","discovery_source":["github"],"priority":"high","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-03-30T13:44:02.927363+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":null,"has_sdk":false,"sdk_languages":[],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":["Basic authentication to Charles Web Interface using CHARLES_USER/CHARLES_PASS (via MCP process environment)"],"oauth":false,"scopes":false,"notes":"Authentication is delegated to the Charles Web Interface. MCP server auth itself is not described; instead it relies on Charles credentials passed via env vars."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"No pricing information provided; repository/manifest indicates an MIT-licensed Python package intended for self-hosting."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":57.8,"security_score":28.8,"reliability_score":41.2,"mcp_server_quality":78.0,"documentation_accuracy":75.0,"error_message_quality":null,"error_message_notes":"No explicit error code catalog shown. Some guidance exists around stop_live_capture failure states and warnings for large outputs.","auth_complexity":30.0,"rate_limit_clarity":10.0,"tls_enforcement":20.0,"auth_strength":35.0,"scope_granularity":10.0,"dependency_hygiene":60.0,"secret_handling":25.0,"security_notes":"Tooling is aimed at local proxy diagnostics but the provided README states that tools return complete raw original content by default (risk of exposing secrets/tokens from traffic). Charles Web Interface credentials are passed via environment variables and the README includes default credentials (admin/123456), which increases the risk if not changed. No explicit mention of TLS requirements or fine-grained authorization/scope controls for the MCP server.","uptime_documented":0.0,"version_stability":55.0,"breaking_changes_history":45.0,"error_recovery":65.0,"idempotency_support":"false","idempotency_notes":"Some tools are explicitly described as non-consuming for live analysis (query_live_capture_entries does not advance cursor), but full idempotency across all tools is not guaranteed/explicitly stated.","pagination_style":"none","retry_guidance_documented":true,"known_agent_gotchas":["Default tool behavior returns raw captured content (including sensitive headers/bodies) unless downstream masking is applied.","Large detail responses may exceed context; tool warns and supports limiting include_full_body/max_body_chars.","Live stop can return stop_failed; agent should check recoverable/active_capture_preserved to decide next steps.","query_live_capture_entries is designed not to advance cursor; repeated calls should continue to work rather than “consume” data."]}}