WordPress MCP Server

Integrations

  • Enables interaction with WordPress sites through the WordPress REST API, providing tools for managing posts, users, comments, categories, tags, and custom endpoints. Supports creating, retrieving, updating, and deleting WordPress content programmatically.

포괄적인 WordPress MCP 서버

AI 어시스턴트가 WordPress REST API를 통해 WordPress 사이트와 상호 작용할 수 있도록 하는 포괄적인 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 서버는 게시물, 사용자, 댓글, 카테고리, 태그 및 사용자 지정 엔드포인트를 포함하여 WordPress의 모든 측면을 프로그래밍 방식으로 관리하는 도구를 제공합니다.

특징

사후 관리

  • WordPress 게시물을 만들고, 검색하고, 업데이트하고, 삭제합니다.
  • 다양한 매개변수로 게시물 필터링
  • 게시물 목록에 대한 페이지 매김 지원

사용자 관리

  • ID 또는 로그인으로 사용자 정보 검색
  • 사용자 세부 정보 업데이트
  • 사용자 삭제

댓글 관리

  • 댓글 생성, 검색, 업데이트 및 삭제
  • 게시물로 댓글 필터링
  • 댓글 목록에 대한 페이지 매김 지원

분류 관리

  • 카테고리 및 태그 관리
  • 분류법을 생성, 검색, 업데이트 및 삭제합니다.
  • 슬러그로 카테고리와 태그 찾기

사이트 정보

  • 일반적인 WordPress 사이트 정보 검색

사용자 정의 요청

  • 사용자 정의 REST API 엔드포인트 지원
  • 사용자 정의 HTTP 메서드(GET, POST, PUT, DELETE)
  • 사용자 정의 데이터 및 매개변수

필수 조건

  • Node.js v18 이상
  • REST API가 활성화된 WordPress 사이트
  • 인증을 위한 WordPress 애플리케이션 비밀번호

설치

  1. 이 저장소를 복제하세요:

지엑스피1

  1. 종속성 설치:
npm install
  1. 서버를 빌드하세요:
npm run build

워드프레스 구성

서버를 사용하기 전에 WordPress 사이트를 설정해야 합니다.

  1. WordPress 사이트에서 REST API가 활성화되어 있는지 확인하세요(WordPress 4.7 이상에서는 기본적으로 활성화되어 있음)
  2. 애플리케이션 비밀번호를 생성하세요:
    • WordPress 관리자 패널에 로그인하세요
    • 사용자 → 프로필로 이동
    • "애플리케이션 비밀번호"까지 아래로 스크롤하세요.
    • 애플리케이션의 이름을 입력하세요(예: "MCP 서버")
    • "새로운 애플리케이션 비밀번호 추가"를 클릭하세요
    • 생성된 비밀번호를 복사하세요(다시는 볼 수 없습니다)

MCP 구성

MCP 설정 파일(일반적으로 ~/AppData/Roaming/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json 에 위치)에 서버를 추가합니다.

{ "mcpServers": { "wordpress": { "command": "node", "args": ["path/to/wordpress-mcp-server/build/index.js"] } } }

사용 가능한 도구

사후 관리

1. 게시물 생성

새로운 WordPress 게시물을 만듭니다.

매개변수:

  • siteUrl (필수): WordPress 사이트 URL
  • username (필수): WordPress 사용자 이름
  • password (필수): WordPress 애플리케이션 비밀번호
  • title (필수): 게시물 제목
  • content (필수): 게시물 내용
  • status (선택 사항): 게시물 상태('초안', '게시' 또는 '비공개', 기본값은 '초안')

예:

{ "tool": "create_post", "siteUrl": "https://example.com", "username": "admin", "password": "xxxx xxxx xxxx xxxx", "title": "My First Post", "content": "Hello, world!", "status": "draft" }

2. 게시물 가져오기

페이지 번호가 매겨진 WordPress 게시물을 검색합니다.

매개변수:

  • siteUrl (필수): WordPress 사이트 URL
  • username (필수): WordPress 사용자 이름
  • password (필수): WordPress 애플리케이션 비밀번호
  • perPage (선택 사항): 페이지당 게시물 수(기본값: 10)
  • page (선택 사항): 페이지 번호(기본값: 1)
  • customParams (선택 사항): 추가 쿼리 매개변수

예:

{ "tool": "get_posts", "siteUrl": "https://example.com", "username": "admin", "password": "xxxx xxxx xxxx xxxx", "perPage": 5, "page": 1 }

3. 업데이트_게시물

기존 WordPress 게시물을 업데이트합니다.

매개변수:

  • siteUrl (필수): WordPress 사이트 URL
  • username (필수): WordPress 사용자 이름
  • password (필수): WordPress 애플리케이션 비밀번호
  • postId (필수): 업데이트할 게시물의 ID
  • title (선택사항): 새 게시물 제목
  • content (선택사항): 새 게시물 콘텐츠
  • status (선택 사항): 새 게시물 상태('초안', '게시' 또는 '비공개')

예:

{ "tool": "update_post", "siteUrl": "https://example.com", "username": "admin", "password": "xxxx xxxx xxxx xxxx", "postId": 123, "title": "Updated Title", "content": "Updated content", "status": "publish" }

4. 게시물 삭제

WordPress 게시물을 삭제합니다.

매개변수:

  • siteUrl (필수): WordPress 사이트 URL
  • username (필수): WordPress 사용자 이름
  • password (필수): WordPress 애플리케이션 비밀번호
  • postId (필수): 삭제할 게시물의 ID

예:

{ "tool": "delete_post", "siteUrl": "https://example.com", "username": "admin", "password": "xxxx xxxx xxxx xxxx", "postId": 123 }

사용자 관리

1. get_users

WordPress 사용자를 검색합니다.

매개변수:

  • siteUrl (필수): WordPress 사이트 URL
  • username (필수): WordPress 사용자 이름
  • password (필수): WordPress 애플리케이션 비밀번호
  • perPage (선택 사항): 페이지당 사용자 수(기본값: 10)
  • page (선택 사항): 페이지 번호(기본값: 1)

2. 사용자 가져오기

ID로 특정 WordPress 사용자를 검색합니다.

매개변수:

  • siteUrl (필수): WordPress 사이트 URL
  • username (필수): WordPress 사용자 이름
  • password (필수): WordPress 애플리케이션 비밀번호
  • userId (필수): 검색할 사용자의 ID

3. 로그인으로 사용자 가져오기

로그인 이름으로 WordPress 사용자를 검색합니다.

매개변수:

  • siteUrl (필수): WordPress 사이트 URL
  • username (필수): WordPress 사용자 이름
  • password (필수): WordPress 애플리케이션 비밀번호
  • userLogin (필수): 검색할 사용자의 로그인 이름

댓글 관리

1. 댓글 가져오기

WordPress 댓글을 검색합니다.

매개변수:

  • siteUrl (필수): WordPress 사이트 URL
  • username (필수): WordPress 사용자 이름
  • password (필수): WordPress 애플리케이션 비밀번호
  • perPage (선택 사항): 페이지당 댓글 수(기본값: 10)
  • page (선택 사항): 페이지 번호(기본값: 1)
  • postIdForComment (선택 사항): 게시물 ID로 댓글 필터링

2. 주석 생성

게시물에 새로운 댓글을 작성합니다.

매개변수:

  • siteUrl (필수): WordPress 사이트 URL
  • username (필수): WordPress 사용자 이름
  • password (필수): WordPress 애플리케이션 비밀번호
  • postIdForComment (필수): 댓글을 달 게시물의 ID
  • commentContent (필수): 댓글의 내용
  • customData (선택 사항): 추가 코멘트 데이터

카테고리 및 태그 관리

1. get_categories

WordPress 카테고리를 검색합니다.

매개변수:

  • siteUrl (필수): WordPress 사이트 URL
  • username (필수): WordPress 사용자 이름
  • password (필수): WordPress 애플리케이션 비밀번호
  • perPage (선택 사항): 페이지당 카테고리 수(기본값: 10)
  • page (선택 사항): 페이지 번호(기본값: 1)

2. 카테고리 생성

새로운 WordPress 카테고리를 만듭니다.

매개변수:

  • siteUrl (필수): WordPress 사이트 URL
  • username (필수): WordPress 사용자 이름
  • password (필수): WordPress 애플리케이션 비밀번호
  • categoryName (필수): 생성할 카테고리의 이름
  • customData (선택 사항): 추가 카테고리 데이터(설명, 상위 등)

사용자 정의 요청

1. 커스텀 요청

WordPress REST API 엔드포인트에 대한 사용자 정의 요청을 만듭니다.

매개변수:

  • siteUrl (필수): WordPress 사이트 URL
  • username (필수): WordPress 사용자 이름
  • password (필수): WordPress 애플리케이션 비밀번호
  • customEndpoint (필수): API 엔드포인트 경로
  • customMethod (선택 사항): HTTP 메서드('GET', 'POST', 'PUT', 'DELETE', 기본값: 'GET')
  • customData (선택 사항): POST/PUT 요청에 대한 데이터
  • customParams (선택 사항): GET 요청에 대한 URL 매개변수

예:

{ "tool": "custom_request", "siteUrl": "https://example.com", "username": "admin", "password": "xxxx xxxx xxxx xxxx", "customEndpoint": "wp/v2/media", "customMethod": "GET", "customParams": { "per_page": 5 } }

응답 형식

모든 도구는 다음 형식으로 응답을 반환합니다.

성공 응답

{ "success": true, "data": { // WordPress API response data }, "meta": { // Optional metadata (pagination info, etc.) } }

오류 응답

{ "success": false, "error": "Error message here" }

보안 고려 사항

  • WordPress 사이트에는 항상 HTTPS URL을 사용하세요
  • WordPress 기본 비밀번호 대신 애플리케이션 비밀번호를 사용하세요
  • 애플리케이션 비밀번호를 안전하게 보관하고 공유하지 마세요.
  • WordPress 역할 및 기능을 사용하여 액세스를 제한하는 것을 고려하세요.
  • 정기적으로 애플리케이션 비밀번호를 순환하세요

개발

개발에 기여하려면:

  1. 저장소를 포크하세요
  2. 기능 브랜치 생성
  3. 변경 사항을 만드세요
  4. 테스트 실행(가능한 경우)
  5. 풀 리퀘스트 제출

자동 재컴파일이 가능한 개발 모드의 경우:

npm run dev

특허

이 프로젝트는 ISC 라이선스에 따라 라이선스가 부여되었습니다.

기여하다

기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

AI 어시스턴트가 REST API를 통해 WordPress 사이트와 상호 작용할 수 있도록 하여 안전한 인증을 통해 게시물, 사용자, 댓글, 카테고리 및 태그를 프로그래밍 방식으로 관리할 수 있습니다.

  1. Features
    1. Post Management
    2. User Management
    3. Comments Management
    4. Taxonomy Management
    5. Site Information
    6. Custom Requests
  2. Prerequisites
    1. Installation
      1. WordPress Configuration
        1. MCP Configuration
          1. Available Tools
            1. Post Management
            2. User Management
            3. Comment Management
            4. Category and Tag Management
            5. Custom Requests
          2. Response Format
            1. Success Response
            2. Error Response
          3. Security Considerations
            1. Development
              1. License
                1. Contributing
                  ID: 4g84e42ylk