Class: Sxn::MCP::Tools::Projects::AddProject

Inherits:
MCP::Tool
  • Object
show all
Defined in:
lib/sxn/mcp/tools/projects.rb

Overview

Register a new project

Class Method Summary collapse

Class Method Details

.call(name:, path:, server_context:, type: nil, default_branch: nil) ⇒ Object



70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/sxn/mcp/tools/projects.rb', line 70

def call(name:, path:, server_context:, type: nil, default_branch: nil)
  BaseTool.ensure_initialized!(server_context)

  BaseTool::ErrorMapping.wrap do
    project_manager = server_context[:project_manager]

    result = project_manager.add_project(
      name,
      path,
      type: type,
      default_branch: default_branch
    )

    BaseTool.text_response(
      "Project '#{result[:name]}' registered successfully.\n" \
      "Type: #{result[:type]}\n" \
      "Path: #{result[:path]}\n" \
      "Default branch: #{result[:default_branch]}"
    )
  end
end