Wasm sandbox runtime for AI agent code execution — deterministic traps, fuel-bounded, MCP-native
Five tools with clear, concise descriptions (50-90 chars each) and well-formed JSON Schema inputs. All tools are READ_ONLY and sandbox-focused, reducing security complexity. However, parameter descriptions are minimal (10-20 chars), output schemas are not documented, and error handling guidance is absent. Tool names follow verb_noun pattern but lack specificity about what each evaluator returns. No pagination, no structured output documentation, and no recovery guidance for common failure modes (e.g., regex timeout, invalid JSON).
Query JSON with JMESPath expressions in a sandboxed environment.
Execute JavaScript code in an uncrashable WebAssembly sandbox.
Run regex patterns safely in a ReDoS-protected sandbox.
Parse and extract data from HTML documents safely in a sandboxed environment.
Execute SQL queries on structured data in a sandboxed SQLite environment.
Output schemas not documented. LLMs cannot infer what fields each tool returns (e.g., does js_evaluator return {result, error, execution_time}?). This forces agents to guess and wastes tokens on trial-and-error.
Parameter descriptions are too brief (10-20 chars). 'The JavaScript code to execute' and 'The regex pattern' lack context on format, constraints, or size limits. LLMs cannot determine if a 10KB code string is acceptable or if regex must be PCRE-compatible.
No error handling guidance. If regex hits ReDoS protection or JS execution times out, what does the agent see? No recovery hints like 'Try a simpler pattern' or 'Reduce code complexity'. Agents will retry blindly.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
Tool names lack specificity. 'trytet_js_evaluator' does not indicate whether it returns execution result, console output, or both. Compare to 'execute_javascript_and_return_result' or 'evaluate_javascript_expression'. Current names force LLMs to read descriptions.
No input validation constraints documented. 'data' parameter in trytet_structured_data accepts 'array' but no size limit, schema, or format guidance. LLMs may pass 100K-row arrays, causing memory exhaustion or timeouts.