A permission and audit layer in front of MCP tools with grant-based access control, scope checking, expiry enforcement, purpose validation, deputy checks, and cryptographically chained audit logging
This server has critical definition quality gaps. All 6 tools have minimal descriptions (10-30 chars, well below the 50-200 char baseline for LLM-optimized tools). Input schemas are present but sparse: most parameters lack descriptions entirely. No output schemas are documented. The tool names use domain prefixes (fs.*, secrets.*, db.*, http.*) rather than action verbs (read_file, write_file, get_secret), making intent less clear to LLMs. No error handling guidance, no parameter constraints (enums, ranges), and no security annotations despite tools like fs.write and http.post being destructive. The server appears designed as a permission-gating demonstration rather than a production-grade agent tool suite.
Execute a database query
Read file contents from the filesystem
Write content to a file on the filesystem
Send an HTTP POST request
Render a template file with includes
Retrieve a secret by name
All tool descriptions are under 30 characters and lack context for LLM selection.
Input parameter descriptions are missing entirely. The 'path' parameter in fs.read and fs.write has no description; 'sql' in db.query has no description; 'body' in http.post has no description.
No output schemas documented. LLMs cannot plan downstream calls or extract data without knowing what fields to expect. fs.read returns a string; fs.write returns 'ok'; db.query returns 'rows', none of these are formally specified.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 36 | <=2025-11-25 | v2 |
Tool names use domain prefixes (fs.*, secrets.*, db.*, http.*) instead of action verbs. Rename to get_file, write_file, get_secret, execute_query, send_http_post.
No error handling guidance. Tools like db.query and http.post can fail (SQL errors, network timeouts, 4xx/5xx responses) but provide no recovery hints.