SP

spiral-packages/mcp-server

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

54 stars 1 forks Качество 48 Тренд 13MIT

MCP Реализация сервера для Spiral Framework

Обзор

Мощная и гибкая реализация спиральной структуры. Этот пакет обеспечивает полное решение MCP-сервера с автоматическим обнаружением инструмента, конфигурацией на основе атрибутов и бесшовной интеграцией с контейнером для впрыска зависимостей Spiral. - - Автоматически обнаруживает и регистрирует инструменты MCP с использованием атрибутов PHP - - Поддерживает HTTP, потоковый HTTP и STDIO транспортирует - - Определение поведения инструмента с простыми атрибутами PHP -️ - Автоматическая генерация схемы JSON с использованием спиральной / json-schema-generator - - Расширяемая система промежуточного программного обеспечения для обработки запросов / ответов - - Интеграция первого класса с контейнером IoC Spiral Framework - - Встроенная обработка сеанса с настраиваемой TTL - - Разработан для высокопроизводительных производственных сред - PHP 8.3 или выше - Spiral Framework 3.15+ Добавьте загрузчик в приложение Spiral: Для получения дополнительной информации об определении схемы DTO посетите спираль / генератор json-schema.

Обзор (машинный перевод)

Мощная и гибкая реализация Model Context Protocol (MCP) Server для Spiral Framework. Этот пакет обеспечивает полное решение MCP-сервера с автоматическим обнаружением инструмента, конфигурацией на основе атрибутов и бесшовным Интеграция с контейнером для инъекций спирали.

Таблица содержимого

  • Особенности
  • Требования
  • Установка Быстрый старт
  • Конфигурация
  • Создание инструментов
  • Атрибуты инструментов Промежуточное ПО
  • Вклад
  • Лицензия

Особенности

Automatic Tool Discovery - автоматически обнаруживает и регистрирует инструменты MCP с использованием атрибутов PHP Множественные транспортные опции - поддерживает HTTP, потоковый HTTP и STDIO Attribute-Based Configuration - Определение поведения инструмента с простыми атрибутами PHP Схема валидации - Автоматическая генерация схем JSON с использованием спирали/json-схем-генератора ** Поддержка среднего программного обеспечения** - расширяемая система промежуточного программного обеспечения для обработки запросов/ответов piSpiral Integration - интеграция первого класса с контейнером IoC Spiral Framework Session Management - Встроенная обработка сеанса с настраиваемым TTL Производство готово - предназначено для высокопроизводительных производственных сред

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

Spiral MCP Server

A powerful and flexible Model Context Protocol (MCP) Server implementation for the Spiral Framework. This package provides a complete MCP server solution with automatic tool discovery, attribute-based configuration, and seamless integration with Spiral’s dependency injection container.

Table of Contents

Features

✨ Automatic Tool Discovery - Automatically discovers and registers MCP tools using PHP attributes
🔧 Multiple Transport Options - Supports HTTP, streaming HTTP, and STDIO transports
🎯 Attribute-Based Configuration - Define tool behavior with simple PHP attributes
🛡️ Schema Validation - Automatic JSON schema generation using spiral/json-schema-generator
⚡ Middleware Support - Extensible middleware system for request/response processing
🔌 Spiral Integration - First-class integration with Spiral Framework’s IoC container
📊 Session Management - Built-in session handling with configurable TTL
🚀 Production Ready - Designed for high-performance production environments

Requirements

  • PHP 8.3 or higher
  • Spiral Framework 3.15+
  • Composer

Installation

Install the package via Composer:

composer require spiral/mcp-server

Add the bootloader to your Spiral application:

// app/src/Application/Kernel.php
use Spiral\McpServer\Bootloader\McpServerBootloader;

protected const LOAD = [
    // ... other bootloaders
    McpServerBootloader::class,
];

Quick Start

1. Create Your First Tool

Create a simple calculator tool:

<?php

namespace App\Tool;

use Spiral\McpServer\Attribute\Tool;
use Spiral\McpServer\Attribute\IsReadonly;

#[Tool(
    name: 'calculator_add',
    description: 'Adds two numbers together'
)]
#[IsReadonly]
class CalculatorTool
{
    public function __invoke(CalculatorRequest $request): array
    {
        return [
            'result' => $request->a + $request->b,
            'operation' => 'addition'
        ];
    }
}

2. Define the Request Schema

<?php

namespace App\Tool;

use Spiral\JsonSchemaGenerator\Attribute\Field;

final readonly class CalculatorRequest
{
    public function __construct(
        #[Field(
            title: 'First Number',
            description: 'The first number to add'
        )]
        public float $a,
        
        #[Field(
            title: 'Second Number', 
            description: 'The second number to add'
        )]
        public float $b,
    ) {}
}

Note: For more information about DTO schema definition visit spiral/json-schema-generator.

3. Set Environment Variables

Открыть полный README на GitHub

Установка

This server does not publish a one-line install command.

Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →