class ActionController::MCPServer::Endpoint

Overview

a controller served as its own MCP server, @[AC::MCP(endpoint: true)]. Every tool and prompt is listed, there are no toolboxes to open

Included Modules

Extended Modules

Defined in:

action-controller/mcp/description.cr

Constructors

Class Method Summary

Instance Method Summary

Constructor Detail

def self.new(path : String, bound : Array(String), toolbox : ActionController::MCPServer::Toolbox) #

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

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

[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]

Class Method Detail

def self.bound_params(path : String) : Array(String) #

the path params in a path template


[View source]

Instance Method Detail

def bound : Array(String) #

the path params bound from the endpoint URL, removed from the tool arguments


[View source]
def description : Description #

the endpoint as a description with a single toolbox of root items


[View source]
def instructions : String | Nil #

the controller doc comment, used as the server instructions


[View source]
def name : String #

the toolbox name, used as the server name


[View source]
def path : String #

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


[View source]
def toolbox : Toolbox #

the endpoint's tools and prompts, all of them root items


[View source]