mirror of
https://github.com/czlonkowski/n8n-mcp.git
synced 2026-02-07 14:03:08 +00:00
* feat: add MCP Apps with rich HTML UIs for tool results Add MCP Apps infrastructure that allows MCP hosts like Claude Desktop to render rich HTML UIs alongside tool results via `_meta.ui` and the MCP resources protocol. - Server-side UI module (src/mcp/ui/) with UIAppRegistry, tool-to-UI mapping, and _meta.ui injection into tool responses - React + Vite build pipeline (ui-apps/) producing self-contained HTML per app using vite-plugin-singlefile - Operation Result UI for workflow CRUD tools (create, update, delete, test, autofix, deploy) - Validation Summary UI for validation tools (validate_node, validate_workflow, n8n_validate_workflow) - Shared component library (Card, Badge, Expandable) with n8n dark theme - MCP resources protocol support (ListResources, ReadResource handlers) - Graceful degradation when ui-apps/dist/ is not built - 22 unit tests across 3 test files Conceived by Romuald Członkowski - https://www.aiadvisors.pl/en Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * test: improve MCP Apps test coverage and add security hardening - Expand test suite from 22 to 57 tests across 3 test files - Add UIAppRegistry.reset() for proper test isolation between tests - Replace some fs mocks with real temp directory tests in registry - Add edge case coverage: empty strings, pre-load state, double load, malformed URIs, duplicate tool patterns, empty HTML files - Add regression tests for specific tool-to-UI mappings - Add URI format consistency validation across all configs - Improve _meta.ui injection tests with structuredContent coexistence - Coverage: statements 79.4% -> 80%, lines 79.4% -> 80% Conceived by Romuald Członkowski - https://www.aiadvisors.pl/en Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
41 lines
1.2 KiB
TypeScript
41 lines
1.2 KiB
TypeScript
/**
|
|
* n8n-MCP - Model Context Protocol Server for n8n
|
|
* Copyright (c) 2024 AiAdvisors Romuald Czlonkowski
|
|
* Licensed under the Sustainable Use License v1.0
|
|
*/
|
|
|
|
// Engine exports for service integration
|
|
export { N8NMCPEngine, EngineHealth, EngineOptions } from './mcp-engine';
|
|
export { SingleSessionHTTPServer } from './http-server-single-session';
|
|
export { ConsoleManager } from './utils/console-manager';
|
|
export { N8NDocumentationMCPServer } from './mcp/server';
|
|
|
|
// Type exports for multi-tenant and library usage
|
|
export type {
|
|
InstanceContext
|
|
} from './types/instance-context';
|
|
export {
|
|
validateInstanceContext,
|
|
isInstanceContext
|
|
} from './types/instance-context';
|
|
export type {
|
|
SessionState
|
|
} from './types/session-state';
|
|
|
|
// UI module exports
|
|
export type { UIAppConfig, UIMetadata } from './mcp/ui/types';
|
|
export { UI_APP_CONFIGS } from './mcp/ui/app-configs';
|
|
|
|
// Re-export MCP SDK types for convenience
|
|
export type {
|
|
Tool,
|
|
CallToolResult,
|
|
ListToolsResult
|
|
} from '@modelcontextprotocol/sdk/types.js';
|
|
|
|
// Default export for convenience
|
|
import N8NMCPEngine from './mcp-engine';
|
|
export default N8NMCPEngine;
|
|
|
|
// Legacy CLI functionality - moved to ./mcp/index.ts
|
|
// This file now serves as the main entry point for library usage
|