class ActionController::MCPServer::Description

Overview

the toolboxes available to MCP clients, typically saved as mcp.yml

Included Modules

Extended Modules

Defined in:

action-controller/mcp/description.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(ctx : YAML::ParseContext, node : YAML::Nodes::Node) #

[View source]
def self.new(pull : JSON::PullParser) #

[View source]
def self.new(toolboxes : Array(ActionController::MCPServer::Toolbox) = [] of Toolbox, endpoints : Array(ActionController::MCPServer::Endpoint) = [] of Endpoint) #

[View source]
def self.new(*, __pull_for_json_serializable pull : JSON::PullParser) #

[View source]
def self.new(*, __context_for_yaml_serializable ctx : YAML::ParseContext, __node_for_yaml_serializable node : YAML::Nodes::Node) #

[View source]

Instance Method Detail

def endpoint?(path : String) : Endpoint | Nil #

the endpoint served at the path template, i.e. /accounts/:account_id/mcp


[View source]
def endpoints : Array(Endpoint) #

controllers served as their own MCP server, see ActionController::MCP


[View source]
def prompt?(name : String) : Tuple(Toolbox, Prompt) | Nil #

returns the prompt and the toolbox it belongs to


[View source]
def prompts? : Bool #

[View source]
def root_prompts : Array(Prompt) #

the prompts available without opening a toolbox


[View source]
def root_tools : Array(Tool) #

the tools available without opening a toolbox


[View source]
def tool?(name : String) : Tuple(Toolbox, Tool) | Nil #

returns the tool and the toolbox it belongs to


[View source]
def toolbox?(name : String) : Toolbox | Nil #

[View source]
def toolboxes : Array(Toolbox) #

[View source]