Skip to main content
Glama

n8n-MCP

by 88-888
node-repository.tsβ€’1.91 kB
/** * Node Repository Utility for Integration Tests * * Provides a singleton NodeRepository instance for integration tests * that require validation or autofix functionality. */ import path from 'path'; import { createDatabaseAdapter, DatabaseAdapter } from '../../../../src/database/database-adapter'; import { NodeRepository } from '../../../../src/database/node-repository'; let repositoryInstance: NodeRepository | null = null; let dbInstance: DatabaseAdapter | null = null; /** * Get or create NodeRepository instance * * Uses the production nodes.db database (data/nodes.db). * * @returns Singleton NodeRepository instance * @throws {Error} If database file cannot be found or opened * * @example * const repository = await getNodeRepository(); * const nodeInfo = await repository.getNodeByType('n8n-nodes-base.webhook'); */ export async function getNodeRepository(): Promise<NodeRepository> { if (repositoryInstance) { return repositoryInstance; } const dbPath = path.join(process.cwd(), 'data/nodes.db'); dbInstance = await createDatabaseAdapter(dbPath); repositoryInstance = new NodeRepository(dbInstance); return repositoryInstance; } /** * Close database and reset repository instance * * Should be called in test cleanup (afterAll) to prevent resource leaks. * Properly closes the database connection and resets the singleton. * * @example * afterAll(async () => { * await closeNodeRepository(); * }); */ export async function closeNodeRepository(): Promise<void> { if (dbInstance && typeof dbInstance.close === 'function') { await dbInstance.close(); } dbInstance = null; repositoryInstance = null; } /** * Reset repository instance (useful for test cleanup) * * @deprecated Use closeNodeRepository() instead to properly close database connections */ export function resetNodeRepository(): void { repositoryInstance = null; }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/88-888/n8n-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server