| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: perl-MCP | Distribution: openSUSE Tumbleweed |
| Version: 0.120.0 | Vendor: openSUSE |
| Release: 1.3 | Build date: Mon Jun 29 12:41:27 2026 |
| Group: Unspecified | Build host: reproducible |
| Size: 91774 | Source RPM: perl-MCP-0.120.0-1.3.src.rpm |
| Packager: https://bugs.opensuse.org | |
| Url: https://metacpan.org/release/MCP | |
| Summary: Connect Perl with AI using MCP (Model Context Protocol) | |
Connect Perl with AI using the Model Context Protocol (MCP). Currently this
module is focused on tool calling and prompts, but it will be extended to
support other MCP features in the future. At its core, MCP is all about
text processing, making it a great fit for Perl.
Streamable HTTP Transport
Use the MCP::Server/"to_action" method to add an MCP endpoint to any
Mojolicious application. The tool name and description are used for
discovery, and the at https://json-schema.org is used to validate the
input.
use Mojolicious::Lite -signatures;
use MCP::Server;
my $server = MCP::Server->new;
$server->tool(
name => 'echo',
description => 'Echo the input text',
input_schema => {type => 'object', properties => {msg => {type => 'string'}}, required => ['msg']},
code => sub ($tool, $args) {
return "Echo: $args->{msg}";
}
);
any '/mcp' => $server->to_action;
app->start;
Authentication can be added by the web application, just like for any
other route. OAuth scopes can be enforced per tool, prompt and
resource. To allow for MCP applications to scale with prefork web
servers, server to client streaming is currentlly avoided when
possible.
Stdio Transport
Build local command line applications and use the stdio transport for
testing with the MCP::Server/"to_stdio" method.
use Mojo::Base -strict, -signatures;
use MCP::Server;
my $server = MCP::Server->new;
$server->tool(
name => 'echo',
description => 'Echo the input text',
input_schema => {type => 'object', properties => {msg => {type => 'string'}}, required => ['msg']},
code => sub ($tool, $args) {
return "Echo: $args->{msg}";
}
);
$server->to_stdio;
Just run the script and type requests on the command line.
$ perl examples/echo_stdio.pl
{"jsonrpc":"2.0","id":"1","method":"tools/list"}
{"jsonrpc":"2.0","id":"2","method":"tools/call","params":{"name":"echo","arguments":{"msg":"hello perl"}}}
MIT
* Mon Jun 29 2026 Tina Müller <tina.mueller@suse.com>
- Downgrade to 0.12 again to avoid the new (failing) dependency for now
* Mon Jun 22 2026 Tina Müller <timueller+perl@suse.de>
- updated to 0.130.0 (0.13)
see /usr/share/doc/packages/perl-MCP/Changes
0.13 2026-06-22
- Switched from JSON::Valdiator to JSON::Schema::Tiny for better portability.
0.12 2026-06-19
- Fixed bug in MCP::Server::Transport::Stdio where the server could disconnect when reading from Windows pipes,
such as when spawned by Claude Desktop.
0.11 2026-06-19
- Added OAuth scope support, so MCP servers can act as OAuth 2.0 resource servers.
- Added scopes attribute to MCP::Primitive, and therefore to MCP::Tool, MCP::Prompt, and MCP::Resource.
- Added scopes and insufficient_scope attributes, and a has_scope method, to MCP::Server::Context.
- Added auth and metadata_url attributes to MCP::Server::Transport::HTTP.
- Added headers attribute to MCP::Client.
- Added oauth_metadata method to MCP::Server.
- Added INSUFFICIENT_SCOPE constant to MCP::Constants.
* Thu May 07 2026 Tina Müller <timueller+perl@suse.de>
- updated to 0.100.0 (0.10)
see /usr/share/doc/packages/perl-MCP/Changes
0.10 2026-05-06
- Added opt-in server-to-client streaming and session termination to the HTTP transport. Not compatible with
pre-forking web servers.
- Added support for list_changed notifications.
- Added support for progress notifications.
- Added MCP::Primitive class.
- Added MCP::Server::Context class.
- Added MCP::Server::Session class.
- Added heartbeat, session_timeout, sessions, and streaming attributes, and a notify method, to
MCP::Server::Transport::HTTP.
- Added notify method to MCP::Server::Transport::Stdio.
- Added notifications method to MCP::Server::Transport.
- Added notify_all method to MCP::Server::Transport::HTTP and MCP::Server::Transport::Stdio.
- Added notify_list_changed method to MCP::Server.
- Added delete_session method to MCP::Client.
* Wed Feb 18 2026 Tina Müller <timueller+perl@suse.de>
- updated to 0.80.0 (0.08)
see /usr/share/doc/packages/perl-MCP/Changes
0.08 2026-02-17
- Added support for tool annotations. (d3flex)
* Sat Jan 17 2026 Tina Müller <timueller+perl@suse.de>
- updated to 0.70.0 (0.07)
see /usr/share/doc/packages/perl-MCP/Changes
0.07 2026-01-16
- Fixed bug in MCP::Prompt where text prompts had the wrong format.
* Tue Dec 09 2025 Tina Müller <timueller+perl@suse.de>
- updated to 0.60.0 (0.06)
see /usr/share/doc/packages/perl-MCP/Changes
0.06 2025-12-05
- Protocol version is now 2025-11-25.
- Added support for resources.
- Added support for audio and resource results.
- Added support for sessions specific prompt, resource, and tool lists.
- Added MCP::Resource class.
- Added read_resource and list_resources methods to MCP::Client.
- Added resource method to MCP::Server.
- Added audio_result and resource_link_result methods to MCP::Tool.
- Added prompts, resources, and tools events to MCP::Server.
* Mon Oct 06 2025 Tina Müller <timueller+perl@suse.de>
- updated to 0.50.0 (0.05)
see /usr/share/doc/packages/perl-MCP/Changes
0.05 2025-08-28
- Added supprot for prompts.
- Added MCP::Prompt class.
- Added get_prompt and list_pronmpts methods to MCP::Client.
- Added prompt method to MCP::Server.
* Tue Aug 05 2025 Tina Müller <tina.mueller@suse.com>
- initial package 0.40.0 (0.04)
* created by cpanspec 1.84.01
/usr/lib/perl5/vendor_perl/5.44.0/MCP /usr/lib/perl5/vendor_perl/5.44.0/MCP.pm /usr/lib/perl5/vendor_perl/5.44.0/MCP/Client.pm /usr/lib/perl5/vendor_perl/5.44.0/MCP/Constants.pm /usr/lib/perl5/vendor_perl/5.44.0/MCP/Primitive.pm /usr/lib/perl5/vendor_perl/5.44.0/MCP/Prompt.pm /usr/lib/perl5/vendor_perl/5.44.0/MCP/Resource.pm /usr/lib/perl5/vendor_perl/5.44.0/MCP/Server /usr/lib/perl5/vendor_perl/5.44.0/MCP/Server.pm /usr/lib/perl5/vendor_perl/5.44.0/MCP/Server/Context.pm /usr/lib/perl5/vendor_perl/5.44.0/MCP/Server/Session.pm /usr/lib/perl5/vendor_perl/5.44.0/MCP/Server/Transport /usr/lib/perl5/vendor_perl/5.44.0/MCP/Server/Transport.pm /usr/lib/perl5/vendor_perl/5.44.0/MCP/Server/Transport/HTTP.pm /usr/lib/perl5/vendor_perl/5.44.0/MCP/Server/Transport/Stdio.pm /usr/lib/perl5/vendor_perl/5.44.0/MCP/Tool.pm /usr/share/doc/packages/perl-MCP /usr/share/doc/packages/perl-MCP/Changes /usr/share/doc/packages/perl-MCP/README.md /usr/share/doc/packages/perl-MCP/examples /usr/share/doc/packages/perl-MCP/examples/echo_http.pl /usr/share/doc/packages/perl-MCP/examples/echo_stdio.pl /usr/share/doc/packages/perl-MCP/examples/streaming_http.pl /usr/share/licenses/perl-MCP /usr/share/licenses/perl-MCP/LICENSE /usr/share/man/man3/MCP.3pm.gz /usr/share/man/man3/MCP::Client.3pm.gz /usr/share/man/man3/MCP::Constants.3pm.gz /usr/share/man/man3/MCP::Primitive.3pm.gz /usr/share/man/man3/MCP::Prompt.3pm.gz /usr/share/man/man3/MCP::Resource.3pm.gz /usr/share/man/man3/MCP::Server.3pm.gz /usr/share/man/man3/MCP::Server::Context.3pm.gz /usr/share/man/man3/MCP::Server::Session.3pm.gz /usr/share/man/man3/MCP::Server::Transport.3pm.gz /usr/share/man/man3/MCP::Server::Transport::HTTP.3pm.gz /usr/share/man/man3/MCP::Server::Transport::Stdio.3pm.gz /usr/share/man/man3/MCP::Tool.3pm.gz
Generated by rpm2html 1.8.1
Fabrice Bellet, Sat Aug 8 22:48:41 2026