n8n community node — resolve EnigmAgent vault secrets at the boundary. LLMs and workflows manipulate {{PLACEHOLDER}} tokens; real API keys are substituted only at the HTTP boundary.
Four tools with clear, security-focused descriptions (10-200 chars each). All have documented input schemas with types and descriptions. However, output schemas are not explicitly documented in the source code, only inferred from operation names. Parameter descriptions are strong (origin constraint, placeholder format), but no error handling guidance, no enums for constrained inputs, and no pagination/result limits documented. Tool names are action-oriented (resolve, list, status, substitute) but lack verb prefixes (get_, list_). Missing output schema documentation and error recovery patterns.
List all placeholder entries (names + origins) without revealing values.
Look up a placeholder in the vault and return its real value (constrained by origin).
Check whether the EnigmAgent REST server is online and the vault is unlocked.
Substitute every {{PLACEHOLDER}} in the input JSON with the real value resolved by EnigmAgent. Place this between an LLM/templating node and the outbound HTTP Request.
Output schemas not documented. Tool descriptions state what is returned (e.g., 'return its real value', 'List all placeholder entries') but no structured schema for response fields. LLMs cannot plan downstream tool calls without knowing response structure.
No error handling guidance. Descriptions do not explain failure modes (e.g., 'placeholder not found', 'origin mismatch', 'vault locked') or recovery steps. Agents cannot self-correct on errors.
Tool names lack action verbs. 'resolve', 'list', 'status', 'substitute' are not prefixed with get_, list_, check_. Baseline shows 90% of A+ tools start with action verbs. Rename to get_secret, list_secrets, check_status, substitute_placeholders.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 63 | 2026-07-28+ | v2 |
No enum constraints for 'operation' parameter in EnigmAgent node. Free-form string invites hallucinated values. Should declare enum: ['resolve', 'list', 'status'].
substitute tool's 'targetFields' parameter lacks format guidance. Description says 'comma-separated list' but no regex pattern or example. LLMs may pass invalid formats like 'field1; field2' or 'field1 | field2'.