n8n workflow automation API as Python library, LangChain tools, and MCP server
Server has 25 tools with consistent naming (verb_noun pattern) and complete input schemas using Pydantic BaseModel. Descriptions are present but generic, most are 40-80 chars, below the 194-char baseline for A+ tools. Parameter descriptions are minimal (e.g., 'The ID of the workflow to retrieve'). Output schemas are not documented; tools return JSON strings without specifying field structure. Error handling is absent, no recovery guidance, categorization, or actionable messages. Security: credentials are not exposed as parameters (good), but no audit logging, permission gates, or scope declarations visible. Composition is sound: tools are single-responsibility and chainable (e.g., list_workflows → get_workflow → execute_workflow). No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels (READ_ONLY, WRITE, DESTRUCTIVE).
Activate a workflow to enable its triggers.
Create a new credential.
Create a new tag.
Create a new workflow.
Deactivate a workflow to disable its triggers.
Delete a credential.
Delete an execution.
Output schemas not documented. Tools return JSON strings without specifying field structure, forcing LLMs to parse unstructured output and guess at available fields for downstream tool chaining.
Descriptions are generic and under 100 chars (baseline 194 chars for A+ tools). E.g., 'Delete a workflow' lacks context on consequences, prerequisites, or when to use vs similar tools.
No error handling guidance. Tools return raw JSON without recovery hints, error categorization, or actionable messages. E.g., a 404 should suggest 'Try list_workflows() to find valid IDs.'
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 57 | 2026-07-28+ | v2 |
Delete a tag.
Delete a workflow.
Execute a workflow manually with optional input data.
Get activation error for a specific workflow.
Get the schema for a credential type.
Get detailed information about a specific execution.
Get detailed information about a specific workflow.
List all currently active workflow IDs.
List all credentials (without sensitive data).
List workflow executions with optional filtering.
List all tags.
List all users (admin only).
List all workflows with optional filtering.
Retry a failed execution.
Check n8n connection status and API availability.
Stop a running execution.
Trigger a webhook endpoint.
Update an existing workflow.
No tool annotations despite clear risk levels. Destructive tools (delete_workflow, delete_execution, delete_credential) lack destructiveHint=true. Read-only tools lack readOnlyHint=true. This prevents agents from reasoning about safety.
No audit logging or permission gates visible. Destructive operations (delete_*) and sensitive operations (create_credential) lack permission checks or audit trails for compliance.