[mcp-analysis] MCP Structural Analysis - 2026-08-06 #50864
Closed
Replies: 1 comment
|
This discussion was automatically closed because it expired on 2026-08-07T12:41:43.672Z.
|
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Warning
Threat Detection Engine Failure — The analysis engine could not complete. This is a tooling failure, not a security finding.
What happened
The threat detection engine failed to produce results.
Review the workflow run logs for details.
Overview
Baseline day for the 30-day MCP structural trend (this is the first data point — no prior history in cache-memory). Analyzed 10 tool responses across 9 toolsets plus the injected workflow-context block. Average usefulness: 3.3/5. Best:
github_context(5/5, zero MCP overhead). Worst:get_teams(1/5 — blocked by a permission gate this run, returned no data).Key metrics
github_context: 5/5get_teams: 1/5 (permission-blocked)Notable findings
get_teamswas blocked by permission, not by data absence — the tool required a grant this session didn't have, so thecontexttoolset returned zero usable data. Worth checking whether the read-only design-scope docs match actual runtime gating.list_issuesreturned an empty array because the one candidate issue was filtered out by content-integrity policy ("lower integrity than agent requires"), not because no issues existed. Agents relying onlist_issuescounts could undercount silently.get_file_contentson README.md was 60%+ padding: a ~7,000-character flat list of community-contributor links diluted a ~9,500-character response. No section/range read was available for this call.list_labelhas noperPagesupport in the built-in tool and returned ~100 of 843 labels in one uncontrolled shot — a repo with a large label taxonomy (like this one) risks oversized responses.mcpscriptslist_workflowswrapper correctly honoredperPage, unlike the built-in GitHub MCPlist_workflows, which silently ignores camelCaseperPage.list_code_scanning_alertscarried actionable file/line locations, but each alert embedded a longrule.helpmarkdown block (examples, CWE references) that roughly tripled the payload size versus a summary-only response.Full Structural Analysis Report
Usefulness Ratings for Agentic Work
github_context(injected)list_pull_requestsfieldsfilter worked welllist_workflows(mcpscripts)list_discussionssearch_codetotal_countuseful for existence checksget_file_contentslist_code_scanning_alertsget_labellist_issuesget_teamsSchema Analysis
github_contextget_teamsget_file_contentslist_issueslist_pull_requestslist_workflowslist_code_scanning_alertslist_discussionsget_labelsearch_codeResponse Size Analysis
Tool-by-Tool Analysis
github_contextlist_pull_requestsfieldsfilter worked welllist_workflowslist_discussionssearch_codefieldsfilter effectiveget_file_contentslist_code_scanning_alertsget_labellist_issuesget_teams30-Day Trend Summary
Recommendations
github_context(injected),list_pull_requests,list_workflows(mcpscripts wrapper),list_discussions,search_code— prefer these for cheap, decisive reads.get_teams(permission gating blocks reads that docs suggest should be prompt-free),list_label(no perPage — should default to a bounded page size at 843 labels in this repo),list_code_scanning_alerts(striprule.helpboilerplate from default responses, or offer a summary mode).list_pull_requests,search_code,list_discussions— all under 130 tokens withfields/pagination support.get_file_contents(README) andlist_code_scanning_alerts/get_label(~1,500 tokens each) — each has a specific, addressable bloat source (link list, rule.help text, unbounded label page).Visualizations
Response Size by Toolset
Usefulness Ratings
Daily Token Trend
Size vs Usefulness
All reactions