An information-flow firewall for MCP tool calls that prevents agents from sending out data they just read
Toolwall is a policy firewall for MCP servers, not a production tool provider. The 5 demo/example tools have minimal descriptions (10-30 chars), no parameter descriptions, and incomplete schemas. read_notes and send_email lack parameter details entirely. Schemas are present but bare JSON with no field-level documentation. No error handling guidance, no output schema documentation, and no security annotations. Tools are intentionally simplistic for demonstration purposes, not production-grade.
Fetch a web page and return its text
Read the user's private notes
Read an employee record
Send a message to a recipient
Send an email
Tool 'send' is generic and ambiguous. Does not follow verb_noun convention. LLMs cannot distinguish it from send_email without reading descriptions.
No parameter descriptions. 'url', 'to', 'body', 'id' parameters lack context. LLMs cannot infer format, constraints, or purpose from names alone.
Tool descriptions are under 30 characters. 'Read the user's private notes' and 'Send an email' lack context on when to use, what data is returned, or prerequisites.
No output schema documentation. Tools return text content but LLMs have no formal schema for response structure, field names, or data types.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 40 | 2026-07-28+ | v2 |
No error handling guidance. Tools return generic errors ('unknown tool') with no recovery hints. LLMs cannot self-correct or retry intelligently.