Home
Login

워드프레스 사이트를 모델 컨텍스트 프로토콜(MCP) 서버로 변환하는 플러그인입니다. AI 에이전트와 대규모 언어 모델이 REST API를 통해 워드프레스 기능과 상호 작용할 수 있도록 지원합니다.

PHP 213Automatticwordpress-mcp Last Updated: 2025-06-24

WordPress MCP 프로젝트 상세 소개

프로젝트 개요

WordPress MCP(Model Context Protocol)는 Automattic에서 개발한 WordPress 플러그인으로, WordPress 사이트를 간단한 MCP 서버로 전환하여 WordPress REST API를 통해 사이트 기능을 노출함으로써 대규모 언어 모델(LLM) 및 AI 에이전트가 상호 작용할 수 있도록 합니다. 이 프로젝트를 통해 개발자는 AI 도구를 활용하여 콘텐츠 관리, 사용자 작업, 사이트 구성 등 자동화 작업을 구현하고 개발 효율성과 통합 능력을 향상시킬 수 있습니다.

핵심 기능

  1. MCP 서버 지원:

    • REST API 라우트(예: /wp/v2/wpmcp/wp/v2/wpmcp/streamable)를 통해 MCP 서버 기능을 제공하여 AI 에이전트와 WordPress의 상호 작용을 지원합니다.
    • McpStdioTransport(표준 입출력) 및 McpStreamableTransport(스트리밍 전송, SSE 또는 기타 스트리밍 프로토콜에 적합)의 두 가지 전송 계층을 지원합니다.
  2. 인증 메커니즘:

    • JWT(JSON Web Token) 인증 시스템을 채택하여 안전한 통신을 보장합니다.
    • WordPress 애플리케이션 비밀번호(Application Passwords) 및 WooCommerce REST API의 소비자 키와 비밀 키를 지원하여 보안을 강화합니다.
  3. 메서드 핸들러:

    • 도구(Tools), 리소스(Resources) 및 프롬프트(Prompts) 등의 메서드 핸들러를 제공하여 콘텐츠 관리, 사이트 초기화 등의 작업을 지원합니다.
    • 사용자 정의 도구를 통해 기능을 확장하여 특정 요구 사항을 충족할 수 있습니다.
  4. 관리 인터페이스:

    • React 기반의 관리 인터페이스를 제공하여 사용자가 WordPress 백엔드에서 인증 토큰(Tokens) 및 기타 구성을 쉽게 관리할 수 있습니다.
  5. MCP 클라이언트와의 호환성:

    • MCP 호환 클라이언트(예: Claude Desktop)와 원활하게 협업하며, 프록시(예: mcp-wordpress-remote)를 통해 REST API 요청을 지원하여 항상 연결을 유지할 필요가 없습니다.

프로젝트 특징

  • 보안성: JWT 인증 및 애플리케이션 비밀번호를 통해 데이터 보안을 보장하며, HTTPS 암호화 통신을 사용하는 것이 좋습니다.
  • 확장성: 개발자가 사용자 정의 도구, 리소스 및 프롬프트를 추가하여 플러그인 기능을 확장할 수 있도록 지원합니다.
  • 개발 친화적: 자세한 테스트 문서(tests/README.md) 및 기여 가이드를 제공하여 커뮤니티 참여를 장려합니다.
  • 경량 고효율: 프록시 모드는 항상 연결을 피하여 성능을 최적화하며, 로컬 개발 및 원격 배포에 적합합니다.
  • 오픈 소스 라이선스: GPL v2 이상 버전 라이선스를 채택하여 WordPress 및 AI 커뮤니티에 개방되어 있습니다.

기술 아키텍처

프로젝트의 핵심 아키텍처는 다음과 같은 모듈로 구성됩니다.

  • 전송 계층(Transport Layer):

    • McpStdioTransport: 표준 입출력을 통해 MCP 요청을 처리하며, 로컬 개발에 적합합니다.
    • McpStreamableTransport: 스트리밍 전송을 지원하며, 실시간 상호 작용 시나리오에 적합합니다(현재 일부 클라이언트에서 지원하지 않을 수 있음).
  • 인증 시스템(Authentication):

    • JWT 인증을 사용하며, wp-config.phpWPMCP_JWT_SECRET_KEY를 정의해야 합니다.
    • WordPress 애플리케이션 비밀번호 및 WooCommerce 키를 지원하여 유연성을 높입니다.
  • 메서드 핸들러(Method Handlers):

    • 도구(Tools): 콘텐츠 생성, 업데이트, 삭제 등의 작업을 구현합니다.
    • 리소스(Resources): 사이트 데이터 액세스 인터페이스를 제공합니다.
    • 프롬프트(Prompts): AI 에이전트에 컨텍스트 가이드를 제공합니다.
    • 시스템 초기화(System & Initialization): MCP 서버의 시작 및 구성을 처리합니다.
  • 관리 인터페이스(Admin Interface):

    • React를 사용하여 구축되었으며, WordPress 백엔드의 "설정 > WordPress MCP" 페이지에 위치하여 인증 토큰 및 기능 스위치를 관리합니다.

설치 및 구성

설치 단계

  1. 저장소 복제:

    cd wp-content/plugins/
    git clone https://github.com/Automattic/wordpress-mcp.git
    cd wordpress-mcp
    
  2. 종속성 설치:

    composer install --no-dev
    npm install && npm run build
    
  3. 플러그인 활성화:

    • WordPress 백엔드의 "플러그인" 페이지에서 WordPress MCP 플러그인을 활성화합니다.
  4. MCP 기능 구성:

    • "설정 > WordPress MCP"로 이동하여 MCP 기능을 활성화하고 인증 토큰을 구성합니다.
  5. JWT 키 구성: wp-config.php에 다음을 추가합니다.

    define('WPMCP_JWT_SECRET_KEY', 'your-secret-key');
    define('WPMCP_DEBUG', true); // 디버그 로깅 활성화
    
  6. 원격 클라이언트 설치(선택 사항):

    • mcp-wordpress-remote와 함께 사용하려면 다음 명령을 사용하여 설치합니다.
      npx @modelcontextprotocol/inspector \
      -e WP_API_URL=https://your-site.com/ \
      -e JWT_TOKEN=your-jwt-token-here \
      npx @automattic/mcp-wordpress-remote@latest
      

구성 시 주의 사항

  • 보안성: 인증 토큰을 버전 관리 시스템에 제출하지 말고 WPMCP_JWT_SECRET_KEY를 안전하게 저장하십시오.
  • 디버깅: WPMCP_DEBUG를 활성화하면 디버그 로그를 기록하여 문제를 쉽게 해결할 수 있습니다.
  • 삭제 작업: 도구를 삭제하면 데이터가 영구적으로 손실될 수 있으므로 신뢰할 수 있는 사용자에게만 활성화하십시오.
  • 원격 클라이언트 종속성: WordPress MCP 플러그인은 mcp-wordpress-remote와 함께 사용해야 완전한 기능을 구현할 수 있습니다.

사용 시나리오

WordPress MCP 프로젝트는 다음과 같은 시나리오에 적합합니다.

  1. 자동화된 콘텐츠 관리:

    • AI 에이전트를 통해 게시물, 페이지, 사용자 등을 생성, 업데이트 또는 삭제하여 수동 작업 시간을 절약합니다.
    • 예: Claude Desktop 명령 "제목이 '테스트 게시물 #1–10'인 초안 게시물 10개 생성"을 사용하여 테스트 콘텐츠를 자동으로 생성할 수 있습니다.
  2. 개발 및 테스트:

    • 개발자는 MCP 도구를 활용하여 테스트 데이터를 빠르게 생성하고 기능 테스트 및 통합 개발을 가속화할 수 있습니다.
    • 예: AI 에이전트를 통해 디버그 로그를 쿼리하고 문제를 요약하여 디버깅 프로세스를 간소화합니다.
  3. 사이트 관리:

    • 원격으로 사이트 구성, 사용자 권한 또는 미디어 파일을 관리하여 분산된 팀 협업에 적합합니다.
    • WooCommerce 통합을 지원하여 전자 상거래 관련 데이터(예: 주문, 제품)를 관리할 수 있습니다.
  4. AI 기반 맞춤화:

    • 개발자는 사용자 정의 도구를 추가하여 특정 비즈니스 로직을 노출하고 개인화된 요구 사항을 충족할 수 있습니다.
    • 예: 사용자 정의 도구를 생성하여 게시물 카테고리를 일괄 업데이트하거나 SEO 메타데이터를 최적화합니다.

확장 및 개발

사용자 정의 도구 추가

개발자는 다음 단계를 통해 플러그인 기능을 확장할 수 있습니다.

  1. 도구 파일 생성:

    • wp-content/plugins/wordpress-mcp/includes/Tools/ 디렉토리에 새 도구 클래스를 추가합니다.
    • 예제 도구 클래스:
      <?php
      namespace WPMCP\Tools;
      class CustomTool {
          public function execute($params) {
              // 사용자 정의 로직 구현
              return ['success' => true, 'data' => 'Custom tool executed'];
          }
      }
      
  2. 도구 등록:

    • 플러그인 초기화 시 새 도구를 등록하여 MCP 인터페이스를 통해 사용할 수 있도록 합니다.
  3. 기존 구현 참조:

    • includes/Tools/, includes/Resources/includes/Prompts/ 디렉토리의 예제 코드를 확인하십시오.

코드 기여

  • 기여 가이드: 저장소의 Contributing Guidelines를 참조하여 Pull Requests를 제출하거나 Issues를 보고하십시오.
  • 테스트 문서: tests/README.md를 확인하여 테스트 프로세스를 이해하고 코드 품질을 보장하십시오.
  • 라이선스 요구 사항: 모든 기여는 GPL v2 이상 버전 라이선스를 준수해야 합니다.

관련 자료

Star History Chart