NAME
MCP::Prompt - Prompt container
SYNOPSIS
use MCP::Prompt;
my $prompt = MCP::Prompt->new;
DESCRIPTION
MCP::Prompt is a container for prompts.
ATTRIBUTES
MCP::Prompt implements the following attributes.
arguments
my $args = $prompt->arguments;
$prompt = $prompt->arguments([{name => 'foo', description => 'Whatever', required => 1}]);
Arguments for the prompt.
code
my $code = $prompt->code;
$prompt = $prompt->code(sub { ... });
Prompt code.
description
my $description = $prompt->description;
$prompt = $prompt->description('A brief description of the prompt');
Description of the prompt.
name
my $name = $prompt->name;
$prompt = $prompt->name('my_prompt');
Name of the Prompt.
METHODS
MCP::Prompt inherits all methods from Mojo::Base and implements the following new ones.
call
my $result = $prompt->call($args, $context);
Calls the prompt with the given arguments and context, returning a result. The result can be a promise or a direct value.
context
my $context = $prompt->context;
Returns the context in which the prompt is executed.
# Get controller for requests using the HTTP transport
my $c = $prompt->context->{controller};
text_prompt
my $result = $prompt->text_prompt('Some text');
my $result = $prompt->text_prompt('Some text', $role);
my $result = $prompt->text_prompt('Some text', $role, $description);
Returns a text prompt in the expected format.
validate_input
my $bool = $prompt->validate_input($args);
Validates the input arguments. Returns true if validation failed.
SEE ALSO
MCP, https://mojolicious.org, https://modelcontextprotocol.io.