UNPKG

@couleetech/n8n-nodes-enlightenedmsp

Version:

n8n node for EnlightenedMSP ticketing and workflow automation

124 lines (94 loc) 2.79 kB
# n8n-nodes-mcp-client 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: ```bash 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: 1. Accept JSON-RPC style messages via stdin 2. Output responses via stdout 3. Support the following methods: - `tools/list`: Lists available tools - `tools/call`: Calls a specific tool with arguments Example MCP message format: ```json // 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: 1. **Command**: The command to execute for the MCP client (e.g., the path to your MCP-compatible tool) 2. **Arguments**: Command-line arguments for the MCP client (comma-separated) ### Node Configuration The node provides two operations: 1. **List Tools** - Lists all available MCP tools from your configured client - No additional parameters required 2. **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: 1. Add the MCP Client node to your workflow 2. Configure the credentials with your MCP client command and arguments 3. Choose an operation: - To list tools: Select "List Tools" operation - To call a tool: Select "Call Tool" operation and provide: ```json { "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: 1. Clone the repository 2. Install dependencies: ```bash npm install ``` 3. Build the package: ```bash npm run build ``` 4. Run tests: ```bash 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.