package mcp import ( mcpsdk "github.com/modelcontextprotocol/go-sdk/mcp" "github.com/yan1h/agent-coding-workflow/internal/chat" "github.com/yan1h/agent-coding-workflow/internal/project" "github.com/yan1h/agent-coding-workflow/internal/workspace" ) // ServerDeps 是装配 mcp.Server 所需的下游 service 集合。 type ServerDeps struct { Caller *CallerResolver Projects project.ProjectService Reqs project.RequirementService Issues project.IssueService Artifacts project.ArtifactService Workspaces workspace.WorkspaceService Worktrees workspace.WorktreeService GitOps workspace.GitOpsService Templates chat.TemplateService Messages chat.MessageService Conversations chat.ConversationService Endpoints chat.EndpointService ACP ACPBridge // acp 服务桥接(见 tools_acp.go / acp.NewMCPBridge) Runs RunService // *run.Service(见 tools_run.go) } // NewMCPServer 装配 SDK Server 实例并注册所有工具/prompts/resources。 func NewMCPServer(deps ServerDeps) *mcpsdk.Server { srv := mcpsdk.NewServer(&mcpsdk.Implementation{ Name: "agent-coding-workflow", Version: "0.1.0", }, nil) // Phase F: PM 工具(projects / requirements / issues / artifacts) registerPMTools(srv, deps) // Phase G: chat / prompts / resources registerChatTools(srv, deps) registerPrompts(srv, deps) registerResources(srv, deps) // Phase H: workspace / worktree / git、ACP、run profiles registerWorkspaceTools(srv, deps) registerACPTools(srv, deps) registerRunTools(srv, deps) return srv }