Module: YardMCP

Defined in:
lib/yardmcp/version.rb,
lib/yardmcp.rb

Constant Summary collapse

VERSION =
'0.3.0'

Class Method Summary collapse

Class Method Details

.register_resources(server) ⇒ Object



883
884
885
# File 'lib/yardmcp.rb', line 883

def self.register_resources(server)
  server.register_resources(YardObjectResource, YardSourceResource)
end

.register_tools(server) ⇒ Object



866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
# File 'lib/yardmcp.rb', line 866

def self.register_tools(server)
  server.register_tools(
    ListGemsTool,
    ListClassesTool,
    GetDocTool,
    ChildrenTool,
    MethodsListTool,
    HierarchyTool,
    SearchTool,
    SourceLocationTool,
    CodeSnippetTool,
    AncestorsTool,
    RelatedObjectsTool,
    BuildGemDocsTool
  )
end

.start_server(preload: true) ⇒ Object



855
856
857
858
859
860
861
862
863
864
# File 'lib/yardmcp.rb', line 855

def self.start_server(preload: true)
  YardUtils.instance if preload
  server = FastMcp::Server.new(name: 'yard-mcp-server', version: YardMCP::VERSION)
  server.capabilities.clear
  server.capabilities[:tools] = {}
  server.capabilities[:resources] = {}
  register_tools(server)
  register_resources(server)
  server.start
end