modelcontextprotocol/php-sdk

The official PHP SDK for Model Context Protocol servers and clients. Maintained in collaboration with The PHP Foundation.

MCP PHP SDK – 빠른 개요

정의 – Model Context Protocol(MCP) 서버와 클라이언트를 작성할 수 있는 퍼스트파티 PHP 라이브러리입니다. MCP는 도구, 리소스, 프롬프트 등 AI 관련 기능을 LLM에 노출하기 위한 프로토콜입니다("함수 호출"을 생각하면 되지만 프레임워크에 구애받지 않습니다). SDK는 Symfony, Laravel 등을 사용하지 않아도 모든 PHP 코드베이스에서 작동합니다.

주요 구성 요소

  • 서버 빌더 – #[McpTool] 및 #[McpResource] 속성이 있는 일반 PHP 클래스를 MCP 호환 서버로 변환합니다.
  • 전송 – STDIO(로컬 프로세스용) 또는 HTTP를 통해 통신합니다. 전송 계층은 플러그인할 수 있습니다.
  • 클라이언트 API – 도구 검색, 호출, 서버 시작 요청 처리, 세션/인증 관리.
  • 프로토콜 세대 – 기존 initialize 핸드셰이크와 새로운 무상태 수정본 2026-07-28을 지원합니다.
  • 적합성 테스트 – 공식 MCP 적합성 테스트 프레임워크에 대한 주간 CI 실행, 배지는 현재 통과율을 표시합니다.

설치

composer require mcp/sdk

자동 검색 기능을 원한다면 symfony/finder도 필요합니다.

시작하기

  • 서버 – 클래스를 작성하고 메서드에 #[McpTool](함수) 또는 #[McpResource](데이터)를 주석으로 추가한 다음 빌더를 실행합니다.
    exit(Server::builder()
        ->setServerInfo('Calculator', '1.0.0')
        ->setDiscovery(__DIR__, ['.'], excludeDirs: ['vendor'])
        ->build()
        ->run(new StdioTransport()));
    
  • 클라이언트 – 클라이언트를 빌드하고 STDIO 또는 HTTP로 연결하고 도구를 나열하고 도구를 호출한 다음 연결을 끊습니다.
    $client = Client::builder()
        ->setClientInfo('My App', '1.0.0')
        ->build();
    $client->connect(new StdioTransport(command: 'php', args: ['/path/to/server.php']));
    $result = $client->callTool('add', ['a'=>5,'b'=>3]);
    $client->disconnect();
    

문서 및 예제 – 전체 문서는 https://php.sdk.modelcontextprotocol.io에 있으며 시작하기, 서버 내부, 전송, 프로토콜 버전, 고급 확장 및 API 참조 섹션이 있습니다. 예제 프로젝트는 리포지토리의 Examples 페이지에 나열되어 있습니다.

생태계 – 이 SDK를 기반으로 MCP 통합을 이미 제공하는 여러 PHP 프레임워크가 있습니다.

  • API Platform(api-platform/mcp)
  • Kirby CMS(bnomei/kirby-mcp)
  • Drupal(drupal/mcp_server)
  • CakePHP(josbeir/cakephp-synapse)
  • Symfony(symfony/mcp-bundle, symfony/ai-mate)

기여 – 일반적인 GitHub 워크플로우를 따르세요: 이슈를 열고 PR을 제출하고 CI 검사를 실행하세요. 프로젝트는 Symfony 코딩 표준과 이전 버전과의 호환성 약속을 따릅니다.

라이선스 – 새로운 기여는 Apache-2.0이며 레거시 코드는 MIT로 유지됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.


결론 – Model Context Protocol을 통해 LLM에 PHP 기반 기능(도구, 구성, 프롬프트 등)을 노출해야 하는 경우 MCP PHP SDK는 서버와 클라이언트 측 모두, 여러 전송 및 활성 적합성 테스트를 갖춘 기성의 표준 준수 방법을 제공합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트