feat(#132): port MCP (Model Context Protocol) infrastructure
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>
This commit is contained in:
15
apps/api/src/mcp/mcp.module.ts
Normal file
15
apps/api/src/mcp/mcp.module.ts
Normal file
@@ -0,0 +1,15 @@
|
||||
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 {}
|
||||
Reference in New Issue
Block a user