WordPress MCP Server
by javeo2022
README.md
# WordPress MCP Server for Claude Code
Claude Code から WordPress を直接操作できる MCP サーバーです。
[FastMCP](https://github.com/jlowin/fastmcp) を使って Python で実装しており、複数サイト(blog / app など)の切り替えにも対応しています。
## 機能
- 投稿・固定ページの作成 / 取得 / 更新 / 削除
- カテゴリ・タグの取得・作成
- Markdown ファイル(frontmatter 付き)からワンコマンド投稿
- メディアのアップロード
- 複数 WordPress サイトへの同時対応
## セットアップ
### 1. パッケージのインストール
```bash
pip install -r requirements.txt
```
### 2. 認証情報の設定
`.env.example` をコピーして `.env` を作成し、各項目を埋めてください。
```bash
cp .env.example .env
```
WordPress の「ユーザー → プロフィール → アプリケーションパスワード」から発行した
アプリケーションパスワードを `WP_BLOG_APP_PASSWORD` に設定します。
### 3. Claude Code の MCP 設定
`claude_desktop_config.json`(Windows: `%APPDATA%\Claude\`) に追加します。
```json
{
"mcpServers": {
"wordpress": {
"command": "python",
"args": ["C:/path/to/wp_mcp_server.py"]
}
}
}
```
パスはご自身の環境に合わせて変更してください。
## 使い方
Claude Code のチャットで自然言語で操作できます。
```
WordPressに接続を確認して
```
```
articles/my-post.md を下書きとして投稿して
```
```
最新の投稿を5件取得して
```
## Markdown frontmatter
`post_from_markdown_file` ツールで使う Markdown ファイルには frontmatter を書きます。
```yaml
---
title: 記事タイトル
slug: my-article-slug
status: draft # draft / publish
categories: [1, 2] # カテゴリ ID
tags: [3, 4] # タグ ID
site: blog # blog / app (複数サイト利用時)
---
ここから本文...
```
`id` を書くと既存記事の更新、省略すると新規作成になります。
## 複数サイト対応
`.env` にサイトごとの認証情報を設定し、`site` パラメータで切り替えます。
| site | 環境変数プレフィックス |
|------|----------------------|
| blog | `WP_BLOG_*` |
| app | `WP_APP_*` |
## 動作確認環境
- Python 3.11+
- Xserver レンタルサーバー(Apache / PHP 8.x)
- WordPress 6.x
- Claude Code Desktop
## ライセンス
MIT
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues