MCP server for Dioxide Web3 blockchain operations
The 'faucet' tool has a minimal schema with only one parameter (address: string) but critically lacks a description entirely. The parameter itself has null description. No output schema is documented. The tool performs a WRITE operation (transfers funds) but provides no guidance on error handling, recovery, or side effects. This violates core patterns: tool-description (every tool needs a description), tool-parameter-description (every param needs a description), and command-tool (write operations must declare their irreversible nature). The implementation exposes a hardcoded secret key in source code, violating secret-injection pattern.
Tool 'faucet' has NO description. LLMs cannot determine when or why to select this tool.
Parameter 'address' has null description. LLMs cannot infer what format or type of address is expected (blockchain address? email? username?).
Hardcoded secret key (base64-encoded private key) embedded in source code. Violates secret-injection pattern, credentials must never appear in tool code or parameters.
Tool performs irreversible WRITE operation (transfers funds) but provides no error handling, recovery guidance, or confirmation step. No dry-run or confirmation-request pattern implemented.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 27 | 2026-07-28+ | v2 |
Output schema not documented. Response structure is hardcoded as {content: [{type: 'text', text: txnHash}]} but LLMs have no schema to understand what fields to expect or how to chain downstream calls.