MCP connector that authenticates with Microsoft and forwards auth context to n8n webhooks
Single tool with critical definition gaps. Tool name 'n8n_workflow_*' is a pattern placeholder, not a concrete verb-noun pair, LLMs cannot parse intent from dynamic names alone. Input schema uses generic 'inputs: any' with minimal guidance; no parameter descriptions beyond a single sentence. No output schema documented. Tool description is present but generic, lacking WHEN to use it, prerequisites, or return structure. No error recovery guidance, no pagination support, no field-level documentation.
Execute n8n workflow dynamically discovered from n8n instance. Tool names are generated as n8n_workflow_{slugified_name}_{workflow_id_prefix}. Description includes workflow name, summary from description metadata, execution mode (sync/async), and trigger information.
Tool name is a dynamic pattern placeholder ('n8n_workflow_{slugified_name}_{workflow_id_prefix}'), not a concrete verb-noun action. LLMs cannot infer intent from parameterized names. Each generated tool name should start with a clear action verb (e.g., 'execute_workflow_*' or 'run_workflow_*').
Input schema uses 'inputs: any' with no type constraints, enums, or field-level descriptions. Parameter description is a single generic sentence. LLMs cannot validate input or understand what fields are expected. Schema should enumerate expected input fields with types and descriptions, or provide clear guidance on the n8n inputs object structure.
No output schema documented. Tool returns JSON with 'workflowId', 'workflowName', 'result' (sync) or 'accepted' message (async), but LLMs have no formal schema to parse response structure or plan downstream calls. Document return type with field descriptions.
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 31 | 2025-06-18+ | v2 |
Tool definitions are dynamically generated at runtime from n8n instance discovery. Tool names, descriptions, and schemas are not statically visible in source code, they are inferred. Static tool registration with explicit schemas is required for reliable evaluation.
Error handling returns generic failure messages ('Failed to execute workflow {id}: {error}') without recovery guidance. LLM cannot determine if error is retryable, user-fixable, or fatal. Include error classification and actionable next steps.