n8n-mcp-server
Version:
Model Context Protocol (MCP) server for n8n workflow automation
108 lines (107 loc) • 2.81 kB
TypeScript
/**
* n8n API Client Interface
*
* This module defines interfaces and types for the n8n API client.
*/
import { EnvConfig } from '../config/environment.js';
import { Workflow, Execution } from '../types/index.js';
/**
* n8n API service - provides functions for interacting with n8n API
*/
export declare class N8nApiService {
private client;
/**
* Create a new n8n API service
*
* @param config Environment configuration
*/
constructor(config: EnvConfig);
/**
* Check connectivity to the n8n API
*/
checkConnectivity(): Promise<void>;
/**
* Get all workflows from n8n
*
* @returns Array of workflow objects
*/
getWorkflows(): Promise<Workflow[]>;
/**
* Get a specific workflow by ID
*
* @param id Workflow ID
* @returns Workflow object
*/
getWorkflow(id: string): Promise<Workflow>;
/**
* Execute a workflow by ID
*
* @param id Workflow ID
* @param data Optional data to pass to the workflow
* @returns Execution result
*/
executeWorkflow(id: string, data?: Record<string, any>): Promise<any>;
/**
* Create a new workflow
*
* @param workflow Workflow object to create
* @returns Created workflow
*/
createWorkflow(workflow: Record<string, any>): Promise<Workflow>;
/**
* Update an existing workflow
*
* @param id Workflow ID
* @param workflow Updated workflow object
* @returns Updated workflow
*/
updateWorkflow(id: string, workflow: Record<string, any>): Promise<Workflow>;
/**
* Delete a workflow
*
* @param id Workflow ID
* @returns Deleted workflow or success message
*/
deleteWorkflow(id: string): Promise<any>;
/**
* Activate a workflow
*
* @param id Workflow ID
* @returns Activated workflow
*/
activateWorkflow(id: string): Promise<Workflow>;
/**
* Deactivate a workflow
*
* @param id Workflow ID
* @returns Deactivated workflow
*/
deactivateWorkflow(id: string): Promise<Workflow>;
/**
* Get all workflow executions
*
* @returns Array of execution objects
*/
getExecutions(): Promise<Execution[]>;
/**
* Get a specific execution by ID
*
* @param id Execution ID
* @returns Execution object
*/
getExecution(id: string): Promise<Execution>;
/**
* Delete an execution
*
* @param id Execution ID
* @returns Deleted execution or success message
*/
deleteExecution(id: string): Promise<any>;
}
/**
* Create a new n8n API service
*
* @param config Environment configuration
* @returns n8n API service
*/
export declare function createApiService(config: EnvConfig): N8nApiService;