Implement MCP Phase 1 infrastructure for agent tool integration with central hub, tool registry, and STDIO transport layers. Components: - McpHubService: Central registry for MCP server lifecycle - StdioTransport: STDIO process communication with JSON-RPC 2.0 - ToolRegistryService: Tool catalog management - McpController: REST API for MCP management Endpoints: - GET/POST /mcp/servers - List/register servers - POST /mcp/servers/:id/start|stop - Lifecycle control - DELETE /mcp/servers/:id - Unregister - GET /mcp/tools - List tools - POST /mcp/tools/:name/invoke - Invoke tool Features: - Full JSON-RPC 2.0 protocol support - Process lifecycle management - Buffered message parsing - Type-safe with no explicit any types - Proper cleanup on shutdown Tests: 85 passing with 90.9% coverage Fixes #132 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
16 lines
478 B
TypeScript
16 lines
478 B
TypeScript
import { Module } from "@nestjs/common";
|
|
import { McpController } from "./mcp.controller";
|
|
import { McpHubService } from "./mcp-hub.service";
|
|
import { ToolRegistryService } from "./tool-registry.service";
|
|
|
|
/**
|
|
* MCP (Model Context Protocol) Module
|
|
* Provides infrastructure for agent tool integration
|
|
*/
|
|
@Module({
|
|
controllers: [McpController],
|
|
providers: [McpHubService, ToolRegistryService],
|
|
exports: [McpHubService, ToolRegistryService],
|
|
})
|
|
export class McpModule {}
|