{ "master": { "tasks": [ { "id": "1", "title": "Initialize Project Structure and Core Dependencies", "description": "Set up the monorepo structure for mcpctl with CLI client, mcpd server, and shared libraries. Configure TypeScript, ESLint, and build tooling.", "details": "Create a monorepo using pnpm workspaces or npm workspaces with the following structure:\n\n```\nmcpctl/\n├── src/\n│ ├── cli/ # mcpctl CLI tool\n│ ├── mcpd/ # Backend daemon server\n│ ├── shared/ # Shared types, utilities, constants\n│ └── local-proxy/ # Local LLM proxy component\n├── deploy/\n│ └── docker-compose.yml\n├── package.json\n├── tsconfig.base.json\n└── pnpm-workspace.yaml\n```\n\nDependencies to install:\n- TypeScript 5.x\n- Commander.js for CLI\n- Express/Fastify for mcpd HTTP server\n- Zod for schema validation\n- Winston/Pino for logging\n- Prisma or Drizzle for database ORM\n\nCreate base tsconfig.json with strict mode, ES2022 target, and module resolution settings. Set up shared ESLint config with TypeScript rules.", "testStrategy": "Verify project builds successfully with `pnpm build`. Ensure all packages compile without errors. Test workspace linking works correctly between packages.", "priority": "high", "dependencies": [], "status": "done", "subtasks": [ { "id": 1, "title": "Initialize pnpm workspace monorepo with future-proof directory structure", "description": "Create the complete monorepo directory structure using pnpm workspaces that accommodates all 18 planned tasks without requiring future refactoring.", "dependencies": [], "details": "Create root package.json with pnpm workspaces configuration. Create pnpm-workspace.yaml defining all workspace packages. Initialize the following directory structure:\n\n```\nmcpctl/\n├── src/\n│ ├── cli/ # mcpctl CLI tool (Task 7-10)\n│ │ ├── src/\n│ │ ├── tests/\n│ │ └── package.json\n│ ├── mcpd/ # Backend daemon server (Task 3-6, 14, 16)\n│ │ ├── src/\n│ │ ├── tests/\n│ │ └── package.json\n│ ├── shared/ # Shared types, utils, constants, validation\n│ │ ├── src/\n│ │ │ ├── types/ # TypeScript interfaces/types\n│ │ │ ├── utils/ # Utility functions\n│ │ │ ├── constants/# Shared constants\n│ │ │ ├── validation/ # Zod schemas\n│ │ │ └── index.ts # Barrel export\n│ │ ├── tests/\n│ │ └── package.json\n│ ├── local-proxy/ # Local LLM proxy (Task 11-13)\n│ │ ├── src/\n│ │ ├── tests/\n│ │ └── package.json\n│ └── db/ # Database package (Task 2)\n│ ├── src/\n│ ├── prisma/ # Schema and migrations\n│ ├── seed/ # Seed data\n│ ├── tests/\n│ └── package.json\n├── deploy/\n│ └── docker-compose.yml # Local dev services (postgres)\n├── tests/\n│ ├── e2e/ # End-to-end tests (Task 18)\n│ └── integration/ # Integration tests\n├── docs/ # Documentation (Task 18)\n├── package.json # Root workspace config\n├── pnpm-workspace.yaml\n└── turbo.json # Optional: Turborepo for build orchestration\n```\n\nThe pnpm-workspace.yaml should contain: `packages: [\"src/*\"]`", "status": "done", "testStrategy": "Write Vitest tests that verify: (1) All expected directories exist, (2) All package.json files are valid JSON with correct workspace protocol dependencies, (3) pnpm-workspace.yaml correctly includes all packages, (4) Running 'pnpm install' succeeds and creates correct node_modules symlinks between packages. Run 'pnpm ls' to verify workspace linking.", "parentId": "undefined" }, { "id": 2, "title": "Configure TypeScript with strict mode and project references", "description": "Set up TypeScript configuration with strict mode, ES2022 target, and proper project references for monorepo build orchestration.", "dependencies": [ 1 ], "details": "Create root tsconfig.base.json with shared compiler options. Create package-specific tsconfig.json in each package that extends the base and sets appropriate paths.", "status": "done", "testStrategy": "Write Vitest tests that verify tsconfig.base.json exists and has strict: true, each package tsconfig.json extends base correctly.", "parentId": "undefined" }, { "id": 3, "title": "Set up Vitest testing framework with workspace configuration", "description": "Configure Vitest as the test framework across all packages with proper workspace setup, coverage reporting, and test-driven development infrastructure.", "dependencies": [ 2 ], "details": "Install Vitest and related packages at root level. Create root vitest.config.ts and vitest.workspace.ts for workspace-aware testing pointing to src/cli, src/mcpd, src/shared, src/local-proxy, src/db.", "status": "done", "testStrategy": "Run 'pnpm test:run' and verify Vitest discovers and runs tests, coverage report is generated.", "parentId": "undefined" }, { "id": 4, "title": "Configure ESLint with TypeScript rules and docker-compose for local development", "description": "Set up shared ESLint configuration with TypeScript-aware rules, Prettier integration, and docker-compose.yml for local PostgreSQL database.", "dependencies": [ 2 ], "details": "Install ESLint and plugins at root. Create eslint.config.js (flat config, ESLint 9+). Create deploy/docker-compose.yml for local development with PostgreSQL service.", "status": "done", "testStrategy": "Write Vitest tests that verify eslint.config.js exists and exports valid config, deploy/docker-compose.yml is valid YAML and defines postgres service.", "parentId": "undefined" }, { "id": 5, "title": "Install core dependencies and perform security/architecture review", "description": "Install all required production dependencies across packages, run security audit, and validate the directory structure supports all 18 planned tasks.", "dependencies": [ 1, 3, 4 ], "details": "Install dependencies per package in src/cli, src/mcpd, src/shared, src/db, src/local-proxy. Perform security and architecture review.", "status": "done", "testStrategy": "Verify each package.json has required dependencies, run pnpm audit, verify .gitignore contains required patterns.", "parentId": "undefined" } ] }, { "id": "2", "title": "Design and Implement Database Schema", "description": "Create the database schema for storing MCP server configurations, projects, profiles, user sessions, and audit logs. Use PostgreSQL for production readiness.", "details": "Design PostgreSQL schema using Prisma ORM with models: User, McpServer, McpProfile, Project, ProjectMcpProfile, McpInstance, AuditLog, Session. Create migrations and seed data for common MCP servers (slack, jira, github, terraform).", "testStrategy": "Run Prisma migrations against test database. Verify all relations work correctly with seed data. Test CRUD operations for each model using Prisma client.", "priority": "high", "dependencies": [ "1" ], "status": "done", "subtasks": [ { "id": 1, "title": "Set up Prisma ORM and PostgreSQL test infrastructure with docker-compose", "description": "Initialize Prisma in the db package with PostgreSQL configuration, create docker-compose.yml for local development with separate test database.", "dependencies": [], "details": "Create src/db/prisma directory structure. Install Prisma dependencies. Configure deploy/docker-compose.yml with two PostgreSQL services: mcpctl-postgres (port 5432) for development and mcpctl-postgres-test (port 5433) for testing.", "status": "pending", "testStrategy": "Write Vitest tests that verify docker-compose creates both postgres services, setupTestDb() successfully connects and pushes schema.", "parentId": "undefined" }, { "id": 2, "title": "Write TDD tests for all Prisma models before implementing schema", "description": "Create comprehensive Vitest test suites for all 8 models testing CRUD operations, relations, constraints, and edge cases.", "dependencies": [ 1 ], "details": "Create src/db/tests/models directory with separate test files for each model. Tests will initially fail (TDD red phase) until schema is implemented.", "status": "pending", "testStrategy": "Tests are expected to fail initially (TDD red phase). After schema implementation, all tests should pass.", "parentId": "undefined" }, { "id": 3, "title": "Implement Prisma schema with all models and security considerations", "description": "Create the complete Prisma schema with all 8 models, proper relations, indexes for audit queries, and security-conscious field design.", "dependencies": [ 2 ], "details": "Implement src/db/prisma/schema.prisma with all models. Add version Int field and updatedAt DateTime for git-based backup support.", "status": "pending", "testStrategy": "Run TDD tests from subtask 2 - all should now pass (TDD green phase). Verify npx prisma validate passes.", "parentId": "undefined" }, { "id": 4, "title": "Create seed data functions with unit tests for common MCP servers", "description": "Implement seed functions for common MCP server configurations (Slack, Jira, GitHub, Terraform) with comprehensive unit tests.", "dependencies": [ 3 ], "details": "Create src/db/seed directory with server definitions and seeding functions for Slack, Jira, GitHub, Terraform MCP servers.", "status": "pending", "testStrategy": "Write unit tests BEFORE implementing seed functions (TDD). Verify seedMcpServers() creates exactly 4 servers with idempotent behavior.", "parentId": "undefined" }, { "id": 5, "title": "Create database migrations and perform security/architecture review", "description": "Generate initial Prisma migration, create migration helper utilities with tests, and conduct comprehensive security and architecture review.", "dependencies": [ 3, 4 ], "details": "Run npx prisma migrate dev --name init. Create src/db/src/migration-helpers.ts. Document security and architecture findings.", "status": "pending", "testStrategy": "Verify migration files exist, migration helper tests pass, SECURITY_REVIEW.md covers all security checkpoints.", "parentId": "undefined" } ], "updatedAt": "2026-02-21T04:10:25.433Z" }, { "id": "3", "title": "Implement mcpd Core Server Framework", "description": "Build the mcpd daemon server with Express/Fastify, including middleware for authentication, logging, and error handling. Design for horizontal scalability.", "details": "Create mcpd server in src/mcpd/src/ with Fastify, health check endpoint, auth middleware, and audit logging. Design for statelessness and scalability.", "testStrategy": "Unit test middleware functions. Integration test health endpoint. Load test with multiple concurrent requests. Verify statelessness by running two instances.", "priority": "high", "dependencies": [ "1", "2" ], "status": "done", "subtasks": [ { "id": 1, "title": "Set up mcpd package structure with clean architecture layers and TDD infrastructure", "description": "Create the src/mcpd directory structure following clean architecture principles with separate layers for routes, controllers, services, and repositories.", "dependencies": [], "details": "Create src/mcpd/src/ with routes/, controllers/, services/, repositories/, middleware/, config/, types/, utils/ directories.", "status": "pending", "testStrategy": "Write initial Vitest tests that verify all required directories exist, package.json has required dependencies.", "parentId": "undefined" }, { "id": 2, "title": "Implement Fastify server core with health endpoint and database connectivity verification", "description": "Create the core Fastify server with health check endpoint that verifies PostgreSQL database connectivity.", "dependencies": [ 1 ], "details": "Create src/mcpd/src/server.ts with Fastify instance factory function. Implement config validation with Zod and health endpoint.", "status": "pending", "testStrategy": "TDD approach - write tests first for config validation, health endpoint returns correct structure.", "parentId": "undefined" }, { "id": 3, "title": "Implement authentication middleware with JWT validation and session management", "description": "Create authentication preHandler hook that validates Bearer tokens against the Session table in PostgreSQL.", "dependencies": [ 2 ], "details": "Create src/mcpd/src/middleware/auth.ts with authMiddleware factory function using dependency injection.", "status": "pending", "testStrategy": "TDD - write all tests before implementation for 401 responses, token validation, request decoration.", "parentId": "undefined" }, { "id": 4, "title": "Implement security middleware stack with CORS, Helmet, rate limiting, and input sanitization", "description": "Configure and register security middleware including CORS policy, Helmet security headers, rate limiting.", "dependencies": [ 2 ], "details": "Create src/mcpd/src/middleware/security.ts with registerSecurityPlugins function. Create sanitization and validation utilities.", "status": "pending", "testStrategy": "TDD tests for CORS headers, Helmet security headers, rate limiting returns 429, input validation.", "parentId": "undefined" }, { "id": 5, "title": "Implement error handling, audit logging middleware, and graceful shutdown", "description": "Create global error handler, audit logging onResponse hook, and graceful shutdown handling with connection draining.", "dependencies": [ 2, 3, 4 ], "details": "Create error-handler.ts, audit.ts middleware, and shutdown.ts utilities in src/mcpd/src/.", "status": "pending", "testStrategy": "TDD for all components: error handler HTTP codes, audit middleware creates records, graceful shutdown handles SIGTERM.", "parentId": "undefined" } ], "updatedAt": "2026-02-21T04:21:50.389Z" }, { "id": "4", "title": "Implement MCP Server Registry and Profile Management", "description": "Create APIs for registering MCP servers, managing profiles with different permission levels, and storing configuration templates.", "details": "Create REST API endpoints in mcpd for MCP server and profile CRUD operations with seed data for common servers.", "testStrategy": "Test CRUD operations for servers and profiles. Verify profile inheritance works. Test that invalid configurations are rejected by Zod validation.", "priority": "high", "dependencies": [ "3" ], "status": "done", "subtasks": [ { "id": 1, "title": "Create Zod validation schemas with comprehensive TDD test coverage", "description": "Define and test Zod schemas for MCP server registration, profile management, and configuration templates before implementing any routes.", "dependencies": [], "details": "Create src/mcpd/src/validation/mcp-server.schema.ts with CreateMcpServerSchema, UpdateMcpServerSchema, CreateMcpProfileSchema.", "status": "pending", "testStrategy": "TDD approach - write all tests first, then implement schemas. Tests verify valid inputs pass, invalid inputs fail.", "parentId": "undefined" }, { "id": 2, "title": "Implement repository pattern for MCP server and profile data access", "description": "Create injectable repository classes for McpServer and McpProfile data access with Prisma, following dependency injection patterns.", "dependencies": [ 1 ], "details": "Create src/mcpd/src/repositories/interfaces.ts with IMcpServerRepository and IMcpProfileRepository interfaces.", "status": "pending", "testStrategy": "TDD - write tests before implementation with mocked PrismaClient. Verify all repository methods are covered.", "parentId": "undefined" }, { "id": 3, "title": "Implement MCP server service layer with business logic and authorization", "description": "Create McpServerService and McpProfileService with business logic, authorization checks, and validation orchestration.", "dependencies": [ 1, 2 ], "details": "Create src/mcpd/src/services/mcp-server.service.ts and mcp-profile.service.ts with DI and authorization checks.", "status": "pending", "testStrategy": "TDD - write tests first mocking repositories and authorization. Verify authorization checks are called for every method.", "parentId": "undefined" }, { "id": 4, "title": "Implement REST API routes for MCP servers and profiles with request validation", "description": "Create Fastify route handlers for MCP server and profile CRUD operations using the service layer.", "dependencies": [ 3 ], "details": "Create src/mcpd/src/routes/mcp-servers.ts and mcp-profiles.ts with all CRUD endpoints.", "status": "pending", "testStrategy": "Write integration tests before implementation using Fastify.inject(). Test with docker-compose postgres.", "parentId": "undefined" }, { "id": 5, "title": "Create seed data for pre-configured MCP servers and perform security review", "description": "Implement seed data for Slack, Jira, GitHub, and Terraform MCP servers with default profiles, plus security review.", "dependencies": [ 4 ], "details": "Create src/mcpd/src/seed/mcp-servers.seed.ts with seedMcpServers() function and SECURITY_REVIEW.md.", "status": "pending", "testStrategy": "Write unit tests for seed functions. Security tests for injection prevention, authorization checks.", "parentId": "undefined" } ], "updatedAt": "2026-02-21T04:26:06.239Z" }, { "id": "5", "title": "Implement Project Management APIs", "description": "Create APIs for managing MCP projects that group multiple MCP profiles together for easy assignment to Claude sessions.", "details": "Create project management endpoints with generateMcpConfig function for .mcp.json format output.", "testStrategy": "Test project CRUD operations. Verify profile associations work correctly. Test MCP config generation produces valid .mcp.json format.", "priority": "high", "dependencies": [ "4" ], "status": "done", "subtasks": [ { "id": 1, "title": "Write TDD tests for project Zod validation schemas and generateMcpConfig function", "description": "Create comprehensive Vitest test suites for project validation schemas and generateMcpConfig function BEFORE implementing any code.", "dependencies": [], "details": "Create tests for CreateProjectSchema, UpdateProjectSchema, UpdateProjectProfilesSchema, and generateMcpConfig with security tests.", "status": "pending", "testStrategy": "TDD red phase - all tests should fail initially. Verify generateMcpConfig security tests check secret env vars are excluded.", "parentId": "undefined" }, { "id": 2, "title": "Implement project repository and generateMcpConfig service with security filtering", "description": "Create the project repository and generateMcpConfig function that strips sensitive credentials from output.", "dependencies": [ 1 ], "details": "Create src/mcpd/src/repositories/project.repository.ts and src/mcpd/src/services/mcp-config-generator.ts.", "status": "pending", "testStrategy": "Run TDD tests from subtask 1. Verify output must NOT contain secret values.", "parentId": "undefined" }, { "id": 3, "title": "Implement project service layer with authorization and profile validation", "description": "Create ProjectService with business logic including authorization checks and profile existence validation.", "dependencies": [ 2 ], "details": "Create src/mcpd/src/services/project.service.ts with DI accepting IProjectRepository and IMcpProfileRepository.", "status": "pending", "testStrategy": "TDD - write tests before implementation. Verify authorization and profile validation.", "parentId": "undefined" }, { "id": 4, "title": "Implement REST API routes for project CRUD and mcp-config endpoint", "description": "Create Fastify route handlers for all project management endpoints including /api/projects/:name/mcp-config.", "dependencies": [ 3 ], "details": "Create src/mcpd/src/routes/projects.ts with all CRUD routes and mcp-config endpoint.", "status": "pending", "testStrategy": "Integration tests using Fastify.inject(). Verify mcp-config returns valid structure WITHOUT secret env vars.", "parentId": "undefined" }, { "id": 5, "title": "Create integration tests and security review for project APIs", "description": "Write comprehensive integration tests and security review documenting credential handling.", "dependencies": [ 4 ], "details": "Create src/mcpd/tests/integration/projects.test.ts with end-to-end scenarios and SECURITY_REVIEW.md section.", "status": "pending", "testStrategy": "Run full integration test suite. Verify coverage >85% for project-related files.", "parentId": "undefined" } ], "updatedAt": "2026-02-21T04:30:43.622Z" }, { "id": "6", "title": "Implement Docker Container Management for MCP Servers", "description": "Create the container orchestration layer for running MCP servers as Docker containers, with support for docker-compose deployment.", "details": "Create Docker management module with ContainerManager class using dockerode. Create deploy/docker-compose.yml template.", "testStrategy": "Test container creation, start, stop, and removal. Integration test with actual Docker daemon. Verify network isolation.", "priority": "high", "dependencies": [ "3", "4" ], "status": "done", "subtasks": [ { "id": 1, "title": "Define McpOrchestrator interface and write TDD tests for ContainerManager", "description": "Define the McpOrchestrator abstraction interface for Docker and Kubernetes orchestrators. Write comprehensive unit tests.", "dependencies": [], "details": "Create src/mcpd/src/services/orchestrator.ts interface and TDD tests for ContainerManager methods.", "status": "pending", "testStrategy": "Run tests to verify they exist and fail with expected errors. Coverage target: 100% of interface methods.", "parentId": "undefined" }, { "id": 2, "title": "Implement ContainerManager class with DockerOrchestrator strategy pattern", "description": "Implement the ContainerManager class as a DockerOrchestrator implementation using dockerode.", "dependencies": [ 1 ], "details": "Create src/mcpd/src/services/docker/container-manager.ts implementing McpOrchestrator interface.", "status": "pending", "testStrategy": "Run unit tests from subtask 1. Verify TypeScript compilation and resource limits.", "parentId": "undefined" }, { "id": 3, "title": "Create docker-compose.yml template with mcpd, PostgreSQL, and test MCP server", "description": "Create the production-ready deploy/docker-compose.yml template for local development.", "dependencies": [], "details": "Create deploy/docker-compose.yml with mcpd, postgres, and test-mcp-server services with proper networking.", "status": "pending", "testStrategy": "Validate with docker-compose config. Run docker-compose up -d and verify all services start.", "parentId": "undefined" }, { "id": 4, "title": "Write integration tests with real Docker daemon", "description": "Create integration test suite that tests ContainerManager against a real Docker daemon.", "dependencies": [ 2, 3 ], "details": "Create src/mcpd/src/services/docker/__tests__/container-manager.integration.test.ts.", "status": "pending", "testStrategy": "Run integration tests with pnpm --filter @mcpctl/mcpd test:integration. Verify containers are created/destroyed.", "parentId": "undefined" }, { "id": 5, "title": "Implement container network isolation and resource management", "description": "Add network segmentation utilities and resource management capabilities for container isolation.", "dependencies": [ 2 ], "details": "Create src/mcpd/src/services/docker/network-manager.ts with network isolation and resource management.", "status": "pending", "testStrategy": "Unit tests for network creation. Integration test: verify container network isolation.", "parentId": "undefined" }, { "id": 6, "title": "Conduct security review of Docker socket access and container configuration", "description": "Perform comprehensive security review of all Docker-related code with security controls documentation.", "dependencies": [ 2, 3, 5 ], "details": "Create src/mcpd/docs/DOCKER_SECURITY_REVIEW.md documenting risks and mitigations.", "status": "pending", "testStrategy": "Review DOCKER_SECURITY_REVIEW.md covers all 6 security areas. Run security unit tests.", "parentId": "undefined" }, { "id": 7, "title": "Implement container logs streaming and health monitoring", "description": "Add log streaming capabilities and health monitoring to ContainerManager for observability.", "dependencies": [ 2 ], "details": "Extend ContainerManager with getLogs, getHealthStatus, attachToContainer, and event subscriptions.", "status": "pending", "testStrategy": "Unit tests for getLogs. Integration test: run container, tail logs, verify output.", "parentId": "undefined" } ], "updatedAt": "2026-02-21T04:52:51.544Z" }, { "id": "7", "title": "Build mcpctl CLI Core Framework", "description": "Create the CLI tool foundation using Commander.js with kubectl-inspired command structure, configuration management, and server communication.", "details": "Create CLI in src/cli/src/ with Commander.js, configuration management at ~/.mcpctl/config.json, and API client for mcpd.", "testStrategy": "Test CLI argument parsing. Test configuration persistence. Mock API calls and verify request formatting.", "priority": "high", "dependencies": [ "1" ], "status": "done", "subtasks": [ { "id": 1, "title": "Set up CLI package structure with TDD infrastructure and command registry pattern", "description": "Create src/cli directory structure with Commander.js foundation, Vitest test configuration, and extensible command registry.", "dependencies": [], "details": "Create src/cli/src/ with commands/, config/, client/, formatters/, utils/, types/ directories and registry pattern.", "status": "pending", "testStrategy": "TDD approach - write tests first. Tests verify CLI shows version, help, CommandRegistry works.", "parentId": "undefined" }, { "id": 2, "title": "Implement secure configuration management with encrypted credential storage", "description": "Create configuration loader/saver with ~/.mcpctl/config.json and encrypted credentials storage.", "dependencies": [ 1 ], "details": "Implement config management with proxy settings, custom CA certificates support, and Zod validation.", "status": "pending", "testStrategy": "TDD tests for config loading, saving, validation, and credential encryption.", "parentId": "undefined" } ], "updatedAt": "2026-02-21T04:17:17.744Z" }, { "id": "8", "title": "Implement mcpctl get and describe Commands", "description": "Create kubectl-style get and describe commands for viewing MCP servers, profiles, projects, and instances.", "details": "Implement get command with table/json/yaml output formats and describe command for detailed views.", "testStrategy": "Test output formatting for each resource type. Test filtering and sorting options.", "priority": "medium", "dependencies": [ "7" ], "status": "done", "subtasks": [], "updatedAt": "2026-02-21T04:55:53.675Z" }, { "id": "9", "title": "Implement mcpctl apply and setup Commands", "description": "Create apply command for declarative configuration and setup wizard for interactive MCP server configuration.", "details": "Implement apply command for YAML/JSON config files and interactive setup wizard with credential prompts.", "testStrategy": "Test YAML/JSON parsing. Test interactive prompts with mock inputs. Verify credentials are stored securely.", "priority": "medium", "dependencies": [ "7", "4" ], "status": "pending", "subtasks": [] }, { "id": "10", "title": "Implement mcpctl claude and project Commands", "description": "Create commands for managing Claude MCP configuration and project assignments.", "details": "Implement claude command for managing .mcp.json files and project command for project management.", "testStrategy": "Test .mcp.json file generation. Test project switching. Verify file permissions are correct.", "priority": "medium", "dependencies": [ "7", "5" ], "status": "pending", "subtasks": [] }, { "id": "11", "title": "Design Local LLM Proxy Architecture", "description": "Design the architecture for the local LLM proxy that enables Claude to use MCP servers through a local intermediary.", "details": "Design proxy architecture in src/local-proxy/ with MCP protocol handling and request/response transformation.", "testStrategy": "Architecture review. Document security considerations. Create proof-of-concept for MCP protocol handling.", "priority": "medium", "dependencies": [ "1" ], "status": "in-progress", "subtasks": [], "updatedAt": "2026-02-21T04:56:01.658Z" }, { "id": "12", "title": "Implement Local LLM Proxy Core", "description": "Build the core local proxy server that handles MCP protocol communication between Claude and MCP servers.", "details": "Implement proxy server in src/local-proxy/src/ with MCP SDK integration and request routing.", "testStrategy": "Test MCP protocol parsing. Test request routing. Integration test with actual MCP server.", "priority": "medium", "dependencies": [ "11" ], "status": "pending", "subtasks": [] }, { "id": "13", "title": "Implement LLM Provider Strategy Pattern", "description": "Create pluggable LLM provider support with strategy pattern for different providers (OpenAI, Anthropic, local models).", "details": "Implement provider strategy pattern in src/local-proxy/src/providers/ with adapters for different LLM APIs.", "testStrategy": "Test each provider adapter. Test provider switching. Mock API responses for testing.", "priority": "low", "dependencies": [ "12" ], "status": "pending", "subtasks": [] }, { "id": "14", "title": "Implement Audit Logging and Compliance", "description": "Create comprehensive audit logging system for tracking all MCP operations for compliance and debugging.", "details": "Implement audit logging in src/mcpd/src/services/ with structured logging, retention policies, and query APIs.", "testStrategy": "Test audit log creation. Test query APIs. Verify log retention works correctly.", "priority": "medium", "dependencies": [ "3" ], "status": "pending", "subtasks": [] }, { "id": "15", "title": "Create MCP Profiles Library", "description": "Build a library of pre-configured MCP profiles for common use cases with best practices baked in.", "details": "Create profile library in src/shared/src/profiles/ with templates for common MCP server configurations.", "testStrategy": "Test profile templates are valid. Test profile application. Document each profile's use case.", "priority": "low", "dependencies": [ "4" ], "status": "pending", "subtasks": [] }, { "id": "16", "title": "Implement MCP Instance Lifecycle Management", "description": "Create APIs and CLI commands for managing the full lifecycle of MCP server instances.", "details": "Implement instance lifecycle management in src/mcpd/src/services/ with start, stop, restart, logs commands.", "testStrategy": "Test instance state transitions. Test concurrent instance management. Integration test with Docker.", "priority": "medium", "dependencies": [ "6" ], "status": "pending", "subtasks": [] }, { "id": "17", "title": "Add Kubernetes Deployment Support", "description": "Extend the orchestration layer to support Kubernetes deployments for production environments.", "details": "Implement KubernetesOrchestrator in src/mcpd/src/services/k8s/ implementing McpOrchestrator interface.", "testStrategy": "Test Kubernetes manifest generation. Test with kind/minikube. Verify resource limits and security contexts.", "priority": "low", "dependencies": [ "6" ], "status": "pending", "subtasks": [] }, { "id": "18", "title": "Documentation and Testing", "description": "Create comprehensive documentation and end-to-end test suite for the entire mcpctl system.", "details": "Create documentation in docs/ and e2e tests in tests/e2e/ covering all major workflows.", "testStrategy": "Review documentation for completeness. Run e2e test suite. Test installation instructions.", "priority": "medium", "dependencies": [ "7", "8", "9", "10" ], "status": "pending", "subtasks": [] }, { "id": "19", "title": "CANCELLED - Auth middleware", "description": "Merged into Task 3 subtasks", "details": null, "testStrategy": null, "priority": null, "dependencies": [], "status": "cancelled", "subtasks": [], "updatedAt": "2026-02-21T02:21:03.958Z" }, { "id": "20", "title": "CANCELLED - Duplicate project management", "description": "Merged into Task 5", "details": null, "testStrategy": null, "priority": null, "dependencies": [], "status": "cancelled", "subtasks": [], "updatedAt": "2026-02-21T02:21:03.966Z" }, { "id": "21", "title": "CANCELLED - Duplicate audit logging", "description": "Merged into Task 14", "details": null, "testStrategy": null, "priority": null, "dependencies": [], "status": "cancelled", "subtasks": [], "updatedAt": "2026-02-21T02:21:03.972Z" }, { "id": "22", "title": "Implement Health Monitoring Dashboard", "description": "Create a monitoring dashboard for tracking MCP server health, resource usage, and system metrics.", "details": "Implement health monitoring endpoints in src/mcpd/src/routes/ and optional web dashboard.", "testStrategy": "Test health check endpoints. Test metrics collection. Verify dashboard displays correct data.", "priority": "low", "dependencies": [ "6", "14" ], "status": "pending", "subtasks": [] }, { "id": "23", "title": "Implement Backup and Restore", "description": "Create backup and restore functionality for mcpctl configuration and state.", "details": "Implement git-based backup in src/mcpd/src/services/backup/ with encrypted secrets and restore capability.", "testStrategy": "Test backup creation. Test restore from backup. Verify secrets are encrypted.", "priority": "low", "dependencies": [ "2", "5" ], "status": "pending", "subtasks": [] }, { "id": "24", "title": "CI/CD Pipeline Setup", "description": "Set up continuous integration and deployment pipelines for the mcpctl project.", "details": "Create GitHub Actions workflows in .github/workflows/ for testing, building, and releasing.", "testStrategy": "Test CI pipeline runs successfully. Test release automation. Verify artifacts are published.", "priority": "medium", "dependencies": [ "1" ], "status": "pending", "subtasks": [] } ], "metadata": { "version": "1.0.0", "lastModified": "2026-02-21T04:56:01.659Z", "taskCount": 24, "completedCount": 8, "tags": [ "master" ] } } }