0.0 / 30
Public leaderboard
Public assessment
forgemeshlabs/disruption-intelligence-mcp (@forgemeshlabs/disruption-intelligence-mcp)
What changed in the harness
Selection accuracy 100→100, token cost up 3%, unconfirmed writes 0%→0%.
Category breakdown
Where the score comes from.
Earned points across the four signals Gradable measures. Safety and Legibility are scored out of 30; Economics and Discoverability are scored out of 20.
01Safety
02Legibility
27.9 / 30
03Economics
19.9 / 20
04Discoverability
10.8 / 20
Highest-impact fix
Estimated gain +30 pointsAdd explicit identity and permission preflight tools
Expose machine-readable principal/tenant confirmation and a non-mutating permission check so agents can verify both before destructive actions.
Description evidence
Defects and rewrites.
2 defects found across the exposed tool descriptions. Suggested rewrites make purpose, inputs, boundaries, and returns easier for an agent to understand.
| Tool | Defect types | Suggested rewrite |
|---|---|---|
get_api_status |
no_return_description |
Check the hosted Disruption Intelligence API health endpoint and return its current health status. Free. |
get_discovery_metadata |
no_return_description |
Fetch and return free discovery metadata including index.json, llms.txt, openapi.json, and x402 well-known metadata. Free. |
Selection evidence
Confusable tool pairs.
7 pairs where similar names or overlapping descriptions may send an agent toward the wrong tool.
| Tool A | Tool B | Confidence | Why they collide |
|---|---|---|---|
get_event_severity |
get_event_timeline |
medium | Both are thin wrappers over /events/:id that take only an event id. A vague task like 'tell me what we know about event X' or 'summarize this event' could send an agent to either, since only the embedded path segment ('/severity' vs '/timeline') distinguishes them. |
get_gold_signals |
get_gold_brief |
medium | Both are gold-scoped Ripple tools with the same optional 'q' search semantics and both are challenge-first. A task such as 'pull the gold ripple report' or 'give me a summary of gold signals' maps plausibly to either the signal inventory or the Ripple Report. |
get_gold_signals |
get_gold_sector_impacts |
medium | get_gold_signals explicitly returns 'Ripple Path inventory', which overlaps semantically with sector impacts/ripple paths. A task like 'show me the impact paths for gold signals' could pick the signals list instead of the per-signal sector-impacts endpoint, especially if only 'q' (not a signal UUID) is available. |
search_gold_inventory |
get_gold_signals |
medium | Both are described as Ripple Signal search/inventory tools accepting the same 'q' parameter (company/region/industry). A task like 'search for gold signals about X' could land on the free inventory-counts tool when the paid signal-detail tool was intended, since the free one is explicitly labeled a search tool. |
get_gold_brief |
get_gold_sector_impacts |
medium | Both are paid 'compatibility tool for GET /ripple/...' endpoints returning Ripple content, and 'brief' can be read as a summary of sector impacts. A task like 'get me a brief on the sector impacts of the gold disruption' is ambiguous between the overall Ripple Report and the per-signal sector-impacts payload. |
get_event_severity |
get_event_company_intel |
low | Both take only an event id and even share enrichment wording ('enriched paid responses include industry_classification'). A task like 'assess the impact of this event' or 'classify this event' could plausibly pick severity over company intel, though 'companies' in the other name usually disambiguates. |
get_api_status |
get_discovery_metadata |
low | Both are free, take no input, and serve 'information about the API'. A task like 'check the API' or 'get API info' is ambiguous between the health-check endpoint and the discovery/metadata endpoint; without explicit words like 'up' or 'endpoints' an agent may pick the wrong one. |
Compare the field