Perl SDK
БесплатноНе проверенAn SDK for building MCP servers and clients with the Perl programming language.
Описание
An SDK for building MCP servers and clients with the Perl programming language.
README
Model Context Protocol support for Perl and the Mojolicious real-time web framework.
Features
Please be aware that this module is still in development and will be changing rapidly. Additionally the MCP specification is getting regular updates which we will implement. Breaking changes are very likely.
- Tool calling, prompts and resources
- Streamable HTTP and Stdio transports
- Notifications for list changes (tools, prompts, resources)
- Progress tracking for long-running operations
- OAuth scopes for tools, prompts and resources
- Scalable with pre-forking web server and async tools using promises
- HTTP client for testing
- Can be embedded in Mojolicious web apps
Installation
All you need is Perl 5.20 or newer. Just install from CPAN.
$ cpanm -n MCP
We recommend the use of a Perlbrew environment.
Streamable HTTP Transport
Use the to_action method to add an MCP endpoint to any Mojolicious application.
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.
Server-to-Client Streaming
The HTTP transport can optionally accept GET requests to open a long-lived SSE stream the server can push
notifications to, and DELETE requests to terminate a session. This requires per-process state and is not
compatible with pre-forking web servers, so it is opt-in.
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) {
$tool->context->notify('notifications/message', {level => 'info', data => "Echoing: $args->{msg}"});
return "Echo: $args->{msg}";
}
);
any '/mcp' => $server->to_action({streaming => 1});
app->start;
Stdio Transport
Build local command line applications and use the stdio transport for testing with the 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"}}}
Установка Perl SDK
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/mojolicious/mojo-mcpFAQ
Perl SDK MCP бесплатный?
Да, Perl SDK MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Perl SDK?
Нет, Perl SDK работает без API-ключей и переменных окружения.
Perl SDK — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Perl SDK в Claude Desktop, Claude Code или Cursor?
Открой Perl SDK на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
автор: mcpdotdirectCompare Perl SDK with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
