ItchWPMCP
ItchWPMCP
Codex/Claude가 WordPress REST API를 통해 WordPress 콘텐츠를 조회하고 편집할 수 있도록 하는 로컬 MCP 서버입니다.
REST API가 활성화되어 있고 애플리케이션 비밀번호 인증을 지원하는 모든 WordPress 사이트에서 사용할 수 있습니다.
설정
WordPress 애플리케이션 비밀번호를 생성합니다:
WordPress 관리자 -> 사용자 -> 프로필 -> 애플리케이션 비밀번호.env.example을.env로 복사하고 다음 내용을 채웁니다:WP_BASE_URL=https://your-wordpress-site.example WP_USERNAME=your-wordpress-username WP_APP_PASSWORD=xxxx xxxx xxxx xxxx xxxx xxxx WP_ALLOW_PRODUCTION_WRITES=false의존성을 설치합니다:
npm install서버를 실행합니다:
$env:NODE_OPTIONS='--use-system-ca' npm startWindows에서 Node가 시스템 인증서 저장소를 사용해야 할 때
NODE_OPTIONS=--use-system-ca가 도움이 될 수 있습니다.
Related MCP server: mcp-wordpress
도구
wordpress_list_pages: WordPress 페이지 목록을 가져옵니다.wordpress_get_page: ID로 페이지를 가져옵니다.wordpress_create_page: 페이지를 생성합니다(기본값은 초안 상태).wordpress_clone_page: 기존 페이지를 복제하여 새 초안 페이지를 만듭니다.wordpress_update_page: 제목, 내용, 요약, 슬러그, 상태, 상위 페이지 또는 메뉴 순서를 업데이트합니다.wordpress_update_page_status: 페이지 상태만 업데이트합니다.wordpress_delete_page: 확인을 거쳐 페이지를 휴지통으로 보내거나 삭제합니다.wordpress_list_posts: WordPress 게시물 목록을 가져옵니다.wordpress_get_post: ID로 게시물을 가져옵니다.wordpress_create_post: 게시물을 생성합니다(기본값은 초안 상태).wordpress_update_post: 게시물을 업데이트합니다.wordpress_delete_post: 확인을 거쳐 게시물을 휴지통으로 보내거나 삭제합니다.wordpress_list_media: 미디어 라이브러리 항목 목록을 가져옵니다.wordpress_upload_media: 로컬 파일을 미디어 라이브러리에 업로드합니다.wordpress_list_categories: 게시물 카테고리 목록을 가져옵니다.wordpress_create_category: 게시물 카테고리를 생성합니다.wordpress_list_tags: 게시물 태그 목록을 가져옵니다.wordpress_create_tag: 게시물 태그를 생성합니다.wordpress_list_plugins: 인증된 사용자에게 권한이 있는 경우 플러그인 목록을 가져옵니다.wordpress_update_plugin_status: 설치된 플러그인을 활성화하거나 비활성화합니다.wordpress_get_settings: 일반 사이트 설정을 읽습니다.wordpress_update_settings: 선택한 일반 사이트 설정을 업데이트합니다.wordpress_list_users: 인증된 사용자에게 권한이 있는 경우 사용자 목록을 가져옵니다.wordpress_list_menus: REST 엔드포인트를 사용할 수 있는 경우 메뉴 목록을 가져옵니다.wordpress_list_menu_items: REST 엔드포인트를 사용할 수 있는 경우 메뉴 항목 목록을 가져옵니다.wordpress_rest_request: 고급 REST API 요청을 수행합니다.
스테이징 URL에서는 쓰기 도구가 활성화됩니다. WP_BASE_URL이 프로덕션으로 변경되면 .env에 WP_ALLOW_PRODUCTION_WRITES=true가 설정되지 않는 한 쓰기가 차단됩니다.
다른 WordPress 사이트 사용하기
해당 WordPress 사이트 관리자에서 애플리케이션 비밀번호를 생성한 다음 .env를 업데이트하세요:
WP_BASE_URL=https://another-wordpress-site.example
WP_USERNAME=your-wordpress-username
WP_APP_PASSWORD=xxxx xxxx xxxx xxxx xxxx xxxx
WP_ALLOW_PRODUCTION_WRITES=false프로덕션 URL에서 의도적으로 쓰기 도구를 활성화하려는 경우가 아니라면 WP_ALLOW_PRODUCTION_WRITES=false로 유지하세요.
다른 사람을 위한 포팅
이
ItchWPMCP폴더를 해당 사용자의 컴퓨터로 복사하거나 비공개/공개 저장소로 게시합니다.폴더 내에서
npm install을 실행합니다..env.example에서.env파일을 생성합니다.해당 사용자의 WordPress 관리자에서 애플리케이션 비밀번호를 생성합니다:
사용자 -> 프로필 -> 애플리케이션 비밀번호해당 사용자의 사이트 URL, 사용자 이름, 앱 비밀번호를
.env에 입력합니다.MCP 클라이언트에 MCP 서버를 등록합니다.
.env 파일은 커밋하지 마십시오. 애플리케이션 비밀번호는 각 사용자/사이트별로 로컬에 유지되어야 합니다.
Codex 설정
~/.codex/config.toml에 다음을 추가합니다:
[mcp_servers.itch_wp_mcp]
command = "node"
args = ["C:\\path\\to\\ItchWPMCP\\src\\server.js"]
enabled = true
startup_timeout_sec = 20
tool_timeout_sec = 60
[mcp_servers.itch_wp_mcp.env]
WP_BASE_URL = "https://your-wordpress-site.example"
WP_USERNAME = "your-wordpress-username"
WP_APP_PASSWORD = "xxxx xxxx xxxx xxxx xxxx xxxx"
WP_ALLOW_PRODUCTION_WRITES = "false"
NODE_OPTIONS = "--use-system-ca"Windows에서는 전체 Node 경로를 사용하는 것이 더 안정적일 수 있습니다:
command = "C:\\Program Files\\nodejs\\node.exe"Claude Desktop 설정
Claude Desktop의 claude_desktop_config.json 내 mcpServers에 다음을 추가합니다:
{
"mcpServers": {
"itch_wp_mcp": {
"command": "C:\\Program Files\\nodejs\\node.exe",
"args": [
"C:\\path\\to\\ItchWPMCP\\src\\server.js"
],
"env": {
"WP_BASE_URL": "https://your-wordpress-site.example",
"WP_USERNAME": "your-wordpress-username",
"WP_APP_PASSWORD": "xxxx xxxx xxxx xxxx xxxx xxxx",
"WP_ALLOW_PRODUCTION_WRITES": "false",
"NODE_OPTIONS": "--use-system-ca"
}
}
}
}Windows에서 Claude Desktop 설정은 일반적으로 여기에 있습니다:
%APPDATA%\Claude\claude_desktop_config.json설정을 변경한 후 Claude Desktop을 다시 시작하세요.
멀티 사이트 설정
모든 WordPress 웹사이트마다 별도의 ItchWPMCP 복사본이 필요하지 않습니다. 하나의 코드베이스를 유지하고 각각 다른 환경 변수를 사용하여 여러 MCP 서버를 등록하세요.
Codex 멀티 사이트 예시
[mcp_servers.wp_erm_staging]
command = "C:\\Program Files\\nodejs\\node.exe"
args = ["C:\\Users\\hesha\\Documents\\GitHub\\ItchWPMCP\\src\\server.js"]
enabled = true
startup_timeout_sec = 20
tool_timeout_sec = 60
[mcp_servers.wp_erm_staging.env]
WP_BASE_URL = "https://staging.erm.buzzinn.co"
WP_USERNAME = "erm-admin"
WP_APP_PASSWORD = "xxxx xxxx xxxx xxxx xxxx xxxx"
WP_ALLOW_PRODUCTION_WRITES = "false"
NODE_OPTIONS = "--use-system-ca"
[mcp_servers.wp_client_site]
command = "C:\\Program Files\\nodejs\\node.exe"
args = ["C:\\Users\\hesha\\Documents\\GitHub\\ItchWPMCP\\src\\server.js"]
enabled = true
startup_timeout_sec = 20
tool_timeout_sec = 60
[mcp_servers.wp_client_site.env]
WP_BASE_URL = "https://client-site.example"
WP_USERNAME = "client-admin"
WP_APP_PASSWORD = "xxxx xxxx xxxx xxxx xxxx xxxx"
WP_ALLOW_PRODUCTION_WRITES = "false"
NODE_OPTIONS = "--use-system-ca"Claude 멀티 사이트 예시
{
"mcpServers": {
"wp_erm_staging": {
"command": "C:\\Program Files\\nodejs\\node.exe",
"args": ["C:\\Users\\hesha\\Documents\\GitHub\\ItchWPMCP\\src\\server.js"],
"env": {
"WP_BASE_URL": "https://staging.erm.buzzinn.co",
"WP_USERNAME": "erm-admin",
"WP_APP_PASSWORD": "xxxx xxxx xxxx xxxx xxxx xxxx",
"WP_ALLOW_PRODUCTION_WRITES": "false",
"NODE_OPTIONS": "--use-system-ca"
}
},
"wp_client_site": {
"command": "C:\\Program Files\\nodejs\\node.exe",
"args": ["C:\\Users\\hesha\\Documents\\GitHub\\ItchWPMCP\\src\\server.js"],
"env": {
"WP_BASE_URL": "https://client-site.example",
"WP_USERNAME": "client-admin",
"WP_APP_PASSWORD": "xxxx xxxx xxxx xxxx xxxx xxxx",
"WP_ALLOW_PRODUCTION_WRITES": "false",
"NODE_OPTIONS": "--use-system-ca"
}
}
}
}.env 파일은 이제 로컬 대체용으로만 사용됩니다. Codex나 Claude에서 제공하는 사이트별 MCP 환경 변수가 우선합니다.
안전 모델
새 페이지/게시물은 기본적으로
draft(초안)로 설정됩니다.삭제 도구는
confirmDelete=true가 필요합니다.WP_ALLOW_PRODUCTION_WRITES=true가 설정되지 않으면 스테이징이 아닌 환경에서의 쓰기는 차단됩니다.wordpress_rest_request는/wp-json/하위 경로만 허용합니다.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceHosted MCP server that bridges Claude.ai with one or more WordPress sites.5ISC
- AlicenseAqualityBmaintenanceA Model Context Protocol server that gives Claude (or any MCP-compatible LLM) direct access to a self-hosted WordPress site over its REST API.73MIT
- AlicenseNot gradedqualityBmaintenanceA local server that enables Claude or other MCP tools to manage WordPress posts and media via REST API.21MIT
- FlicenseNot gradedqualityCmaintenanceA local MCP server that bridges Claude Desktop to your WordPress site via the WordPress MCP Adapter. It dynamically discovers and proxies all tools, resources, and prompts registered through the WordPress Abilities API.
Related MCP Connectors
WordPress MCP server: generate SEO posts, AI images, autoblog & WooCommerce on your self-hosted site
WordPress MCP server: publish posts, AI images, SEO and full site management, self-hosted
Security-first WordPress MCP server. 129 tools for Claude, ChatGPT, Gemini. Free on wp.org.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/manofsadness/ItchWPMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server