MCP servers that fail: no dynamic code execution
177 of the 14,987 Model Context Protocol servers where this control could be evaluated fail it — that is 1% of the evaluated corpus on the Canopii Trust Index.
- Servers failing
- 177
- Failure rate
- 1%
- Average score when failing
- 15/100
Why this matters
eval()/exec()/Function() on tool-derived strings allows arbitrary code execution.
How to pass it
Remove eval/exec; parse and dispatch explicitly.
Control id code.no_code_eval — a guard control, so a confirmed failure caps the server's score at the critical ceiling no matter what else passes.
Affected servers
We publish this count, not a list of targets. A confirmed critical-severity failure of this control is a directly exploitable weakness. Each affected server's own page carries its result and evidence, so nothing is hidden from someone evaluating a specific server — but we will not publish a ranked list of exploitable systems, which is a different artifact serving a different reader.
Running one of these? The directory and the open-source scanner will tell you where you stand.
This control is one of 29 in the published rubric — see how scoring works or how the ecosystem fails every other control.