@couleetech/n8n-nodes-mcp-client
v0.5.22
Published
n8n node to provide MCP tools to AI nodes
Downloads
1,757
Readme
n8n-nodes-mcp-client
Please note, This package is not working yet, I will set the version to 1.0.0 when it is working. ( 90% chance I will forget to update this readme when I do )
This package provides an n8n node for interacting with Model Context Protocol (MCP) tools. It allows you to integrate MCP-compatible AI tools into your n8n workflows.
Installation
To install this package in your n8n instance:
npm install @coulee-tech/n8n-nodes-mcp-client
Features
- List available MCP tools
- Call specific MCP tools with custom arguments
- Full integration with n8n workflows
- Support for standard MCP protocol communication
MCP Protocol Requirements
Your MCP client must:
- Accept JSON-RPC style messages via stdin
- Output responses via stdout
- Support the following methods:
tools/list
: Lists available toolstools/call
: Calls a specific tool with arguments
Example MCP message format:
// Request
{
"method": "tools/call",
"params": {
"name": "tool-name",
"arguments": {
// tool-specific arguments
}
}
}
// Response
{
"result": {
// tool-specific response
}
}
Configuration
Credentials
To use the MCP Client node, you need to configure the following credentials:
- Command: The command to execute for the MCP client (e.g., the path to your MCP-compatible tool)
- Arguments: Command-line arguments for the MCP client (comma-separated)
Node Configuration
The node provides two operations:
List Tools
- Lists all available MCP tools from your configured client
- No additional parameters required
Call Tool
- Calls a specific MCP tool with custom arguments
- Required parameters:
- Tool Name: The name of the tool to call
- Tool Arguments: JSON object containing the arguments for the tool
Usage Example
Here's an example of how to use the MCP Client node in your workflow:
- Add the MCP Client node to your workflow
- Configure the credentials with your MCP client command and arguments
- Choose an operation:
- To list tools: Select "List Tools" operation
- To call a tool: Select "Call Tool" operation and provide:
{ "toolName": "your-tool-name", "toolArguments": { "param1": "value1", "param2": "value2" } }
Error Handling
The node includes comprehensive error handling:
- Invalid command or arguments
- Tool execution failures
- MCP protocol communication errors
- JSON parsing errors
Development
To contribute to this package:
- Clone the repository
- Install dependencies:
npm install
- Build the package:
npm run build
- Run tests:
npm test
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
For issues and feature requests, please use the GitHub issue tracker.