n8n MCP Server
Enables workflow automation management through n8n's REST API, providing tools for creating, executing, and monitoring workflows, managing tags and credentials, handling webhook configuration, and accessing execution history.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@n8n MCP Serverlist my active workflows"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
n8n MCP Server
MCP (Model Context Protocol) server for n8n workflow automation. This server enables AI assistants like Claude to interact with n8n instances via the REST API.
Features
π Workflow Management: List, create, update, and delete workflows
βΆοΈ Execution Control: Execute workflows and monitor executions
π·οΈ Tag Management: Organize workflows with tags
π Execution History: Access workflow execution history and results
π Credential Management: List available credentials (read-only)
π Webhook Management: Create and manage webhooks
π Search: Search workflows by name or tags
Related MCP server: n8n MCP Server
Prerequisites
Node.js 18 or higher
n8n instance with API access enabled
n8n API key
Installation
From npm (when published)
npm install -g n8n-mcp-serverFrom source
git clone https://github.com/nikolausm/n8n-mcp-server.git
cd n8n-mcp-server
npm install
npm run buildConfiguration
Getting your n8n API Key
Log in to your n8n instance
Go to Settings β API
Generate an API key
Configure Claude Desktop
Add the following to your Claude Desktop configuration (claude_desktop_config.json):
{
"mcpServers": {
"n8n": {
"command": "node",
"args": ["/path/to/n8n-mcp-server/dist/index.js"],
"env": {
"N8N_URL": "https://your-n8n-instance.com",
"N8N_API_KEY": "your-api-key-here"
}
}
}
}For n8n cloud instances, use:
N8N_URL:https://your-subdomain.app.n8n.cloud
Available Tools
Workflow Management
list_workflows- List all workflows with optional filteringget_workflow- Get detailed information about a specific workflowcreate_workflow- Create a new workflow from JSONupdate_workflow- Update an existing workflowdelete_workflow- Delete a workflowactivate_workflow- Activate a workflowdeactivate_workflow- Deactivate a workflow
Execution
execute_workflow- Execute a workflow with optional input dataget_executions- Get execution history with filtering optionsget_execution- Get details of a specific executiondelete_execution- Delete an executionretry_execution- Retry a failed execution
Tags
get_tags- List all available tagscreate_tag- Create a new tagupdate_tag- Update a tagdelete_tag- Delete a tag
Other
get_credentials- List available credentials (names only)search_workflows- Search workflows by name or tagsget_workflow_webhooks- Get webhook URLs for a workflow
Usage Examples
List all active workflows
Assistant: I'll list all your active n8n workflows.
[Uses list_workflows tool with active=true]Execute a workflow
Assistant: I'll execute the workflow with the data you provided.
[Uses execute_workflow tool with workflowId and data]Create a new workflow
Assistant: I'll create a new workflow for you.
[Uses create_workflow tool with workflow JSON]Development
Setup
npm installBuild
npm run buildTest locally
N8N_URL=https://your-instance.com N8N_API_KEY=your-key npm startRun tests
npm testSecurity Notes
Never commit your API keys
Use environment variables for sensitive data
The MCP server has the same permissions as your API key
Consider using a restricted API key if possible
Contributing
Contributions are welcome! Please:
Fork the repository
Create a feature branch
Make your changes
Add tests if applicable
Submit a pull request
License
MIT - see LICENSE file
Support
π Report bugs
π‘ Request features
π€ MCP Documentation
Author
Michael Nikolaus - GitHub
Available Tools
19 toolsactivate_workflowC
Activate a workflow
| Name | Required | Description | Default |
|---|---|---|---|
| workflowId | Yes | The ID of the workflow to activate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only says 'Activate a workflow' without any details on what activation entails (e.g., changing state, side effects, permissions). No annotations are provided to fill this gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise (one sentence) but lacks structure or front-loading of key information. It is not verbose, but it is under-specified.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one parameter, no output schema), the description should at least explain what 'activate' means in terms of workflow state. It is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers the parameter well (100% description coverage), so the description does not need to add much. The baseline is 3, and the description provides no extra meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Activate a workflow' clearly states the verb and resource, but it is essentially a restatement of the tool name and does not distinguish from sibling tools like deactivate_workflow or execute_workflow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, nor are there any prerequisites or context about workflow states.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_tagB
Create a new tag
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name of the tag |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose behavior beyond creation (e.g., duplicate handling, required permissions, side effects, response).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise (one sentence). Efficient for a simple tool, but could benefit from additional context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, no annotations, and the description lacks completeness. Important aspects like idempotency, uniqueness constraints, or response format are not mentioned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% with the parameter 'name' described. The description adds no additional semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The tool name and description clearly indicate it creates a tag. It is distinct from siblings like list_tags and add_tags_to_workflow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use vs alternatives (e.g., when to use create_tag vs add_tags_to_workflow). No mention of prerequisites or constraints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_workflowB
Create a new n8n workflow from JSON definition
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name of the workflow | |
| nodes | Yes | Array of workflow nodes | |
| connections | Yes | Node connections object | |
| active | No | Whether to activate the workflow | |
| settings | No | Workflow settings | |
| tags | No | Tags for the workflow |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description alone must disclose behaviors. It merely states 'create' (mutation) but does not mention authentication, validation of JSON, default values (e.g., active=false), or error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no unnecessary words. While concise, it effectively conveys the primary action and input format.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, no annotations, and the description lacks details on return values, side effects, or error conditions. For a creation tool with 6 parameters, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter having a description. The description adds no additional meaning beyond the schema, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'create', the resource 'n8n workflow', and the input format 'from JSON definition'. It effectively distinguishes this tool from siblings like activate_workflow or update_workflow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., update_workflow for modifications), nor any prerequisites or context about when the tool should not be used.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
deactivate_workflowB
Deactivate a workflow
| Name | Required | Description | Default |
|---|---|---|---|
| workflowId | Yes | The ID of the workflow to deactivate |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states 'deactivate' without explaining what that entails (e.g., irreversible? affects running executions?). It fails to describe side effects or permissions needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that is extremely concise. However, it omits important context that could be added in a second sentence without sacrificing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description is incomplete. It does not explain the effect of deactivation, reversibility, or what happens to related executions. For a mutation tool, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds no additional meaning beyond the schema parameter description. Baseline 3 is appropriate as the schema already documents the parameter sufficiently.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Deactivate a workflow' is a specific verb+resource combination that clearly communicates the action and target. It distinguishes itself from sibling tools like 'activate_workflow' and 'delete_workflow'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives is provided. It does not mention the implications of deactivating a workflow (e.g., stopping triggers, impact on running executions) or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_executionC
Delete an execution
| Name | Required | Description | Default |
|---|---|---|---|
| executionId | Yes | The ID of the execution to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, so description carries full burden. 'Delete' implies destruction, but no details on irreversibility, effects on related data, or failure conditions. Minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise with only three words, but at the expense of completeness. It is front-loaded but lacks structure and detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with 1 parameter and no output schema, the description is too minimal. It omits return behavior, error states, and side effects, leaving the agent without full context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter 'executionId' is well-described in the schema. The description adds no additional meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the verb 'Delete' and resource 'execution', making the primary action unambiguous. However, it does not specify what type of execution (e.g., workflow execution), though sibling tools provide context.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'retry_execution' or 'get_execution'. No prerequisites or context provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_tagD
Delete a tag
| Name | Required | Description | Default |
|---|---|---|---|
| tagId | Yes | The ID of the tag to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description must fully disclose behavioral traits. It only states 'Delete a tag' without explaining irreversibility, required permissions, or impact on associated entities like workflows.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely brief but lacks substance. While concise, it does not earn its place because it adds no value over the tool name and fails to provide necessary context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool and lack of output schema, the description is incomplete. It does not address deletion consequences, which is critical for an agent to correctly assess impact.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the parameter 'tagId' already well-documented in the schema. The description adds no extra semantic meaning beyond what the schema provides, meeting the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description 'Delete a tag' is a tautology that merely restates the tool name 'delete_tag'. It fails to provide any additional context about the specific resource or distinguish it from sibling tools like 'update_tag' or 'create_tag'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided about when to use this tool versus alternatives (e.g., 'update_tag' for modifying, or 'get_tags' for listing). There is no mention of prerequisites, side effects, or recommended context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_workflowC
Delete a workflow
| Name | Required | Description | Default |
|---|---|---|---|
| workflowId | Yes | The ID of the workflow to delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only says 'Delete a workflow' without mentioning irreversibility, side effects (e.g., cascading deletes), or required permissions. This is severely lacking.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only four words, which is extremely concise. However, it sacrifices necessary detail for brevity, making it under-specified. It could be slightly expanded to include key context without being verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a deletion action (irreversible, potential dependencies), the description is far from complete. No annotations, output schema, or additional context are provided, leaving the agent ill-informed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter, and the description does not add any meaning beyond the schema's own 'The ID of the workflow to delete'. Baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete) and resource (workflow), making the primary purpose obvious. However, it does not distinguish 'delete' from sibling 'deactivate_workflow', which could cause confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use delete versus deactivate or other alternatives. The agent has no context to decide between these similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
execute_workflowB
Execute a workflow with optional input data
| Name | Required | Description | Default |
|---|---|---|---|
| workflowId | Yes | The ID of the workflow to execute | |
| data | No | Input data for the workflow execution |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It only states 'Execute' but does not reveal side effects, required permissions, or what happens if the workflow is inactive or already running.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence with the verb and resource front-loaded. It is concise but could be more informative without losing brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description should provide more context about return values, errors, and usage constraints. It is insufficient for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already describes both parameters. The description adds minimal extra value by reiterating that input data is optional, which is implied by the schema (data not required).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('execute') and the resource ('workflow'), and notes that input data is optional. It distinguishes from sibling tools like 'activate_workflow' and 'create_workflow'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as retry_execution or activate_workflow. No prerequisites or context are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_credentialsA
List available credentials (names only, no sensitive data)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the key safety trait that no sensitive data is returned, which is valuable. However, it omits other behavioral aspects like authentication requirements, read-only nature, or behavior with no credentials.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that contains all essential information. There is no waste, and it is appropriately front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with no parameters and no output schema, the description adequately states the purpose and a key constraint. However, it lacks hints about return format (e.g., list of strings) or potential pagination, leaving some context missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so schema coverage is 100%. The description adds no parameter-specific information, which is acceptable as there are none. Baseline 4 for zero parameters is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool lists available credentials and explicitly states it returns only names without sensitive data. It is specific about the verb and resource, and effectively distinguishes itself from sibling tools by focusing on credentials.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a list of credential names is needed without sensitive data, but it does not provide explicit when-to-use or when-not-to-use guidance. Given no sibling credential tools, the lack of alternatives is less critical, but explicit context would improve clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_executionC
Get details of a specific execution
| Name | Required | Description | Default |
|---|---|---|---|
| executionId | Yes | The ID of the execution |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description only states 'get details', implying a read operation but omits any behavioral traits like permissions, response structure, or potential side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise but undermines completeness. It could benefit from additional context without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite a simple signature, the description lacks details on what 'details' entails and does not mention return values or typical usage, leaving gaps for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with 'executionId' described. Description adds no extra meaning beyond the schema, so baseline score applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get details of a specific execution' clearly states the action (get) and resource (execution details). It distinguishes from sibling 'get_executions' which retrieves multiple executions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'get_executions' or 'retry_execution'. The description lacks context for usage decisions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_executionsB
Get workflow execution history with filtering options
| Name | Required | Description | Default |
|---|---|---|---|
| workflowId | No | Filter by workflow ID | |
| finished | No | Filter by execution status | |
| limit | No | Maximum number of executions to return | |
| cursor | No | Cursor for pagination |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description does not disclose behavioral traits like read-only nature, authentication requirements, or side effects. 'Get' implies read-only but is not explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise with no wasted words. However, it could be slightly more structured to mention pagination or ordering.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Missing information about pagination (cursor, limit defaults), ordering, and the distinction from 'get_execution' (singular). Given no output schema, the description should cover return format but does not.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters. The description adds the phrase 'filtering options' but does not provide additional meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get workflow execution history with filtering options', specifying a clear verb and resource. It distinguishes from singular 'get_execution' and other siblings like 'delete_execution'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as 'get_execution' (singular) or 'retry_execution'. The description lacks explicit when-to-use or when-not-to-use context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tagsB
List all available tags
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose behavioral traits such as return format (e.g., array of tag objects), pagination, or scope (user-specific vs. system-wide). The agent has no information about what data is returned.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with no superfluous information. It is front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (no parameters, no output schema), the description is minimally adequate. However, it lacks details about the return structure, which would be helpful for an agent to interpret results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so the baseline score is 4. The description accurately conveys that no input is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (list) and resource (tags). It is specific and unambiguous. However, it does not differentiate from sibling tools like create_tag or delete_tag, but those are different actions, so it's acceptable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. The description lacks context such as when to retrieve tags or how it complements other tag-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_workflowC
Get detailed information about a specific workflow
| Name | Required | Description | Default |
|---|---|---|---|
| workflowId | Yes | The ID of the workflow |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations; description only says 'Get detailed information' without explaining read-only nature, auth needs, or what 'detailed' includes. Lacks behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single concise sentence. No wasted words, but lacks structure like sections or bullet points. Appropriate for a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema; description should clarify return value contents. It doesn't specify what 'detailed information' includes (e.g., status, triggers, steps). Incomplete for agent decision-making.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
100% schema coverage; description adds no extra meaning beyond parameter name 'workflowId' already in schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool retrieves detailed workflow info. Distinguishes from siblings like list_workflows by specifying 'specific workflow', but does not explicitly contrast with search_workflows or get_execution.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use vs alternatives. Does not mention prerequisites or context for retrieving workflow details.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_workflow_webhooksB
Get webhook URLs for a workflow
| Name | Required | Description | Default |
|---|---|---|---|
| workflowId | Yes | The ID of the workflow |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose behavioral traits such as whether the operation is read-only, error conditions (e.g., workflow not found), or any side effects. Since the description carries the full burden without annotations, it is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It directly communicates the tool's purpose efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one parameter, no output schema), the description is minimally adequate but lacks context about the return format (e.g., array of URLs) or behavior (e.g., fails on invalid workflow ID). It is borderline complete for a trivial tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%βthe only parameter 'workflowId' has a clear description ('The ID of the workflow'). The tool description adds no extra meaning beyond the schema, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('webhook URLs') for a specific workflow. It effectively distinguishes from sibling tools like 'get_workflow' (which retrieves workflow details) and 'list_workflows' (lists workflows).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. For instance, it doesn't mention that this tool is specifically for retrieving webhook URLs, nor does it point to sibling tools for other workflow-related tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_workflowsC
List all n8n workflows with optional filtering
| Name | Required | Description | Default |
|---|---|---|---|
| active | No | Filter by active status | |
| limit | No | Maximum number of workflows to return | |
| cursor | No | Cursor for pagination | |
| tags | No | Filter by tags |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description bears full responsibility for behavioral disclosure. It only states 'list' without clarifying whether the operation is read-only, requires authentication, or has rate limits. No information about return format or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, efficient and to the point. However, it could be slightly expanded to include basic context without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and four parameters, the description does not explain the response format, pagination behavior (despite a cursor parameter), or what 'all' means in terms of scope. This is insufficient for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and each parameter has a description in the schema. The description adds no additional meaning beyond the schema, which is adequate but does not enhance understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list' and resource 'n8n workflows' with optional filtering, making the purpose obvious. However, it does not differentiate from the sibling tool 'search_workflows', which may have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'search_workflows', 'get_workflow', or 'get_executions'. The description lacks context such as expected use cases or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
retry_executionB
Retry a failed execution
| Name | Required | Description | Default |
|---|---|---|---|
| executionId | Yes | The ID of the execution to retry |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, and the description does not disclose what 'retry' entailsβe.g., whether it creates a new execution, requires specific permissions, or if it has side effects. Behavioral details are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence with no wasted words, but it could be slightly expanded to include behavioral context without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no output schema and simple parameters, the description does not explain what the tool returns or any side effects, leaving the agent underinformed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single parameter 'executionId', and the description adds no meaning beyond it. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Retry') and the resource ('failed execution'), making it distinct from siblings like execute_workflow (new) and delete_execution (remove).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool vs. alternatives, such as when an execution failed or what prerequisites are needed. The usage context is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_workflowsA
Search workflows by name or tags
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; the description only states basic search function. Lacks details on pagination, case sensitivity, partial matching, or behavior when no results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One concise, front-loaded sentence with no extraneous information. Efficiently conveys purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple search with one parameter, but missing details on output format, sorting, or matching behavior. Sufficient but with gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds meaning beyond the schema by specifying that the query can search by name or tags, enriching the single parameter's context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches workflows, specifying criteria as name or tags. It distinguishes from siblings like list_workflows and get_workflow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use versus alternatives like list_workflows or get_workflow. Usage is implied but not clarified.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_tagC
Update a tag
| Name | Required | Description | Default |
|---|---|---|---|
| tagId | Yes | The ID of the tag to update | |
| name | Yes | New name for the tag |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations and a bare description, the tool lacks disclosure of behavioral traits like idempotency, error handling (e.g., what happens if tagId is invalid), or side effects. The agent cannot infer key runtime behavior from the description alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at three words, which is efficient but overly minimal. It front-loads the core action but omits necessary detail, making it borderline under-specified rather than optimally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of output schema and annotations, the description should cover more contextual information, such as update semantics, constraints, prerequisites, or return values. The current text is insufficient for the agent to fully understand the tool's behavior and results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides descriptions for both parameters (tagId and name) with 100% coverage, so the schema already explains their meaning. The description adds no additional semantics beyond the schema, earning the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update a tag' clearly states the verb (update) and resource (tag), making the basic action unambiguous. However, it does not differentiate from sibling tools like 'create_tag' or 'delete_tag', which also target tags, limiting its usefulness for distinguishing among similar operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'create_tag' or 'delete_tag'. There is no mention of prerequisites, context, or exclusions, leaving the agent without direction on appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_workflowB
Update an existing workflow
| Name | Required | Description | Default |
|---|---|---|---|
| workflowId | Yes | The ID of the workflow to update | |
| name | No | New name for the workflow | |
| nodes | No | Updated nodes array | |
| connections | No | Updated connections object | |
| active | No | Activation status | |
| settings | No | Updated workflow settings | |
| tags | No | Updated tags |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description only says 'update' without explaining whether it merges or overwrites, permissions needed, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely brief (4 words), which is concise but under-specifies; could add more value without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 7 parameters, complex nested objects, and no output schema, the description is insufficient; lacks return value, error conditions, and update semantics.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers all 7 parameters with descriptions, so the schema does the heavy lifting; the description adds no extra meaning beyond the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'update' and the resource 'an existing workflow', distinguishing it from sibling tools like create_workflow and activate_workflow.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives like create_workflow or deactivate_workflow; lacks prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
19 tool updates
v1.0.0- First observed
activate_workflow - First observed
create_tag - First observed
create_workflow - First observed
deactivate_workflow - First observed
delete_execution - First observed
delete_tag - First observed
delete_workflow - First observed
execute_workflow - First observed
get_credentials - First observed
get_execution - First observed
get_executions - First observed
get_tags - First observed
get_workflow - First observed
get_workflow_webhooks - First observed
list_workflows - First observed
retry_execution - First observed
search_workflows - First observed
update_tag - First observed
update_workflow
TDQS
Scored across 19 tools
Every tool has a clearly distinct purpose: workflow CRUD, activation, execution, and history; tag CRUD; credential listing; and webhook retrieval. No two tools overlap significantly.
All tool names follow a consistent 'verb_noun' pattern in snake_case, such as 'create_workflow', 'get_executions', and 'update_tag'. No mixed conventions or vague verbs.
With 19 tools, the set covers multiple domains (workflows, executions, tags, credentials, webhooks) and each tool seems necessary. Slightly on the higher end but still well-scoped for the server's purpose.
Workflows, executions, and tags have full CRUD/lifecycle coverage. Credentials are limited to listing names, which is a minor gap but likely intentional for security. No obvious dead ends for typical workflows.
Maintenance
Related MCP Connectors
- mcp-serverOAuthcom.make
Give your AI agents the tools to build, manage, and run automation workflows.
Know when your n8n workflows, URLs, and AI apps break, before your customers do.
Discover, preview, estimate, run, and retrieve reusable AI workflows.
Create, test, publish, and manage Dreamlit notification workflows from AI clients.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables management of n8n workflow automations through natural language, supporting creation, execution, updates, and deletion of workflows, along with node discovery and execution status monitoring.MIT
- FlicenseNot gradedqualityCmaintenanceEnables ChatGPT to manage n8n workflows through the official REST API. Supports creating, updating, deleting, and running workflows with execution status monitoring.-
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage n8n automation workflows through natural language commands, including creating, executing, monitoring, and organizing workflows with full CRUD operations and execution management.1282MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI models to manage n8n workflow automation through a standardized interface. Supports creating, reading, updating, and deleting workflows with comprehensive access to workflow nodes, connections, and configurations.9MIT