PHPackages                             politsin/mcp - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. politsin/mcp

ActiveLibrary[API Development](/categories/api)

politsin/mcp
============

PHP-библиотека для взаимодействия с MCP (Model Context Protocol)

v1.1.2(8mo ago)041MITPHPPHP ^8.3CI failing

Since Aug 19Pushed 8mo agoCompare

[ Source](https://github.com/politsin/mcp)[ Packagist](https://packagist.org/packages/politsin/mcp)[ RSS](/packages/politsin-mcp/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (2)Versions (35)Used By (0)

politsin/mcp
============

[](#politsinmcp)

PHP-библиотека MCP (Model Context Protocol) для PHP 8.3+ с готовым сервером на ReactPHP.

Установка
---------

[](#установка)

```
composer require politsin/mcp
```

Быстрый старт (сервер)
----------------------

[](#быстрый-старт-сервер)

Минимальный сервер на ReactPHP (HTTP Stream и SSE), классическая регистрация тулзов и ресурсов:

См. примеры в `examples/`:

- `examples/Cmd/ReactServer.php` — запуск сервера, конфигурация.
- `examples/Cmd/ExampleReactCommand.php` — обезличенная Symfony-команда для запуска сервера.
- `examples/Tools/FooTool.php` — классовая тулза с параметром `n` (optional).
- `examples/nginx.conf` — пример проксирования nginx для `/mcp/http` и `/mcp/sse`.
- `examples/Controller/SseTestController.php` — простая страница для проверки SSE (`/test/sse`).

### Интеграция с приложением (Symfony)

[](#интеграция-с-приложением-symfony)

Создайте сервис в `config/services.yaml`:

```
services:
    mcp.client:
        class: Politsin\Mcp\Contract\McpClientInterface
        factory: [Politsin\Mcp\Client\McpClientFactory, createHttpClient]
        arguments:
            - '%env(MCP_SERVER_URL)%'
            - []
            - 30.0
```

Используйте в контроллере:

```
