@wpgaurav/wp-mcp 0.1.0 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -7
- package/dist/bin/wp-mcp.js +5 -0
- package/dist/bin/wp-mcp.js.map +1 -1
- package/dist/src/setup.d.ts +2 -0
- package/dist/src/setup.d.ts.map +1 -0
- package/dist/src/setup.js +160 -0
- package/dist/src/setup.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -16,14 +16,27 @@ A TypeScript MCP server that exposes any WordPress site's REST API as MCP tools.
|
|
|
16
16
|
- A WordPress site with REST API enabled
|
|
17
17
|
- An [Application Password](https://make.wordpress.org/core/2020/11/05/application-passwords-integration-guide/) for authentication
|
|
18
18
|
|
|
19
|
-
##
|
|
19
|
+
## Quick Start
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
npx @wpgaurav/wp-mcp setup
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
This interactive wizard will:
|
|
26
|
+
1. Ask for your WordPress URL, username, and Application Password
|
|
27
|
+
2. Test the connection
|
|
28
|
+
3. Write the config to Claude Desktop and/or Claude Code automatically
|
|
29
|
+
|
|
30
|
+
That's it. Restart Claude and your WordPress tools are ready.
|
|
31
|
+
|
|
32
|
+
## Manual Installation
|
|
20
33
|
|
|
21
34
|
```bash
|
|
22
35
|
# Run directly with npx
|
|
23
|
-
npx wp-mcp
|
|
36
|
+
npx @wpgaurav/wp-mcp
|
|
24
37
|
|
|
25
38
|
# Or install globally
|
|
26
|
-
npm install -g wp-mcp
|
|
39
|
+
npm install -g @wpgaurav/wp-mcp
|
|
27
40
|
```
|
|
28
41
|
|
|
29
42
|
## Configuration
|
|
@@ -49,7 +62,7 @@ Add to your `claude_desktop_config.json`:
|
|
|
49
62
|
"mcpServers": {
|
|
50
63
|
"wordpress": {
|
|
51
64
|
"command": "npx",
|
|
52
|
-
"args": ["wp-mcp"],
|
|
65
|
+
"args": ["@wpgaurav/wp-mcp"],
|
|
53
66
|
"env": {
|
|
54
67
|
"WP_URL": "https://example.com",
|
|
55
68
|
"WP_USERNAME": "admin",
|
|
@@ -67,7 +80,7 @@ Add to your `claude_desktop_config.json`:
|
|
|
67
80
|
"mcpServers": {
|
|
68
81
|
"wordpress": {
|
|
69
82
|
"command": "npx",
|
|
70
|
-
"args": ["wp-mcp"],
|
|
83
|
+
"args": ["@wpgaurav/wp-mcp"],
|
|
71
84
|
"env": {
|
|
72
85
|
"WP_URL": "https://example.com",
|
|
73
86
|
"WP_USERNAME": "admin",
|
|
@@ -85,7 +98,7 @@ WP_URL=https://example.com \
|
|
|
85
98
|
WP_USERNAME=admin \
|
|
86
99
|
WP_APP_PASSWORD="xxxx xxxx xxxx xxxx" \
|
|
87
100
|
WP_MCP_TRANSPORT=http \
|
|
88
|
-
npx wp-mcp
|
|
101
|
+
npx @wpgaurav/wp-mcp
|
|
89
102
|
```
|
|
90
103
|
|
|
91
104
|
The server listens on `http://127.0.0.1:3000/mcp` with StreamableHTTP.
|
|
@@ -199,7 +212,7 @@ npm run build
|
|
|
199
212
|
## Library Usage
|
|
200
213
|
|
|
201
214
|
```typescript
|
|
202
|
-
import { createWpMcpServer, loadConfig } from "wp-mcp";
|
|
215
|
+
import { createWpMcpServer, loadConfig } from "@wpgaurav/wp-mcp";
|
|
203
216
|
|
|
204
217
|
const config = loadConfig({
|
|
205
218
|
wpUrl: "https://example.com",
|
package/dist/bin/wp-mcp.js
CHANGED
|
@@ -3,8 +3,13 @@ import { loadConfig } from "../src/config.js";
|
|
|
3
3
|
import { createWpMcpServer } from "../src/server.js";
|
|
4
4
|
import { createStdioTransport } from "../src/transports/stdio.js";
|
|
5
5
|
import { startHttpTransport } from "../src/transports/http.js";
|
|
6
|
+
import { runSetup } from "../src/setup.js";
|
|
6
7
|
async function main() {
|
|
7
8
|
const args = process.argv.slice(2);
|
|
9
|
+
if (args[0] === "setup") {
|
|
10
|
+
await runSetup();
|
|
11
|
+
return;
|
|
12
|
+
}
|
|
8
13
|
const overrides = {};
|
|
9
14
|
for (let i = 0; i < args.length; i++) {
|
|
10
15
|
const arg = args[i];
|
package/dist/bin/wp-mcp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wp-mcp.js","sourceRoot":"","sources":["../../bin/wp-mcp.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"wp-mcp.js","sourceRoot":"","sources":["../../bin/wp-mcp.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACxB,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IAED,MAAM,SAAS,GAA2B,EAAE,CAAC;IAE7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,aAAa,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACzC,SAAS,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAE,CAAC;QACtC,CAAC;aAAM,IAAI,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC3C,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAE,CAAC;QACjC,CAAC;aAAM,IAAI,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC3C,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAAE,CAAC;QACjC,CAAC;aAAM,IAAI,GAAG,KAAK,eAAe,EAAE,CAAC;YACnC,SAAS,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;QAClC,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC;QACxB,SAAS,EAAE,SAAS,CAAC,WAAW,CAAiC;QACjE,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;QACrE,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC;QACvB,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;KAChE,CAAC,CAAC;IAEH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAEnD,IAAI,MAAM,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;QAChC,MAAM,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;QACzC,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAClD,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/setup.ts"],"names":[],"mappings":"AA6FA,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAiG9C"}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import * as readline from "node:readline";
|
|
2
|
+
import * as fs from "node:fs";
|
|
3
|
+
import * as path from "node:path";
|
|
4
|
+
import * as os from "node:os";
|
|
5
|
+
import { basicAuthHeader } from "./client/auth.js";
|
|
6
|
+
const PACKAGE_NAME = "@wpgaurav/wp-mcp";
|
|
7
|
+
function createPrompt() {
|
|
8
|
+
const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
|
|
9
|
+
return (question) => new Promise((resolve) => rl.question(question, (answer) => resolve(answer.trim())));
|
|
10
|
+
}
|
|
11
|
+
async function ask(prompt, question, defaultValue) {
|
|
12
|
+
const suffix = defaultValue ? ` [${defaultValue}]` : "";
|
|
13
|
+
const answer = await prompt(`${question}${suffix}: `);
|
|
14
|
+
return answer || defaultValue || "";
|
|
15
|
+
}
|
|
16
|
+
async function testConnection(url, username, password) {
|
|
17
|
+
const baseUrl = `${url.replace(/\/+$/, "")}/wp-json/wp/v2/users/me`;
|
|
18
|
+
try {
|
|
19
|
+
const response = await fetch(baseUrl, {
|
|
20
|
+
headers: { Authorization: basicAuthHeader(username, password) },
|
|
21
|
+
});
|
|
22
|
+
if (response.ok) {
|
|
23
|
+
const user = (await response.json());
|
|
24
|
+
console.log(`\n Connected as: ${user.name ?? user.slug ?? "unknown"}`);
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
const body = (await response.json());
|
|
28
|
+
console.error(`\n Connection failed (${response.status}): ${body.message ?? response.statusText}`);
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
catch (err) {
|
|
32
|
+
console.error(`\n Connection failed: ${err.message}`);
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function getClaudeDesktopConfigPath() {
|
|
37
|
+
const platform = os.platform();
|
|
38
|
+
if (platform === "darwin") {
|
|
39
|
+
return path.join(os.homedir(), "Library", "Application Support", "Claude", "claude_desktop_config.json");
|
|
40
|
+
}
|
|
41
|
+
if (platform === "win32") {
|
|
42
|
+
return path.join(os.homedir(), "AppData", "Roaming", "Claude", "claude_desktop_config.json");
|
|
43
|
+
}
|
|
44
|
+
return path.join(os.homedir(), ".config", "claude", "claude_desktop_config.json");
|
|
45
|
+
}
|
|
46
|
+
function getClaudeCodeConfigPath() {
|
|
47
|
+
return path.join(os.homedir(), ".claude", "settings.json");
|
|
48
|
+
}
|
|
49
|
+
function writeToConfig(configPath, answers) {
|
|
50
|
+
let config = {};
|
|
51
|
+
if (fs.existsSync(configPath)) {
|
|
52
|
+
try {
|
|
53
|
+
config = JSON.parse(fs.readFileSync(configPath, "utf-8"));
|
|
54
|
+
}
|
|
55
|
+
catch {
|
|
56
|
+
console.error(` Warning: Could not parse existing ${configPath}, creating new file.`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
const dir = path.dirname(configPath);
|
|
60
|
+
if (!fs.existsSync(dir)) {
|
|
61
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
62
|
+
}
|
|
63
|
+
const mcpServers = (config["mcpServers"] ?? {});
|
|
64
|
+
mcpServers["wordpress"] = {
|
|
65
|
+
command: "npx",
|
|
66
|
+
args: [PACKAGE_NAME],
|
|
67
|
+
env: {
|
|
68
|
+
WP_URL: answers.wpUrl,
|
|
69
|
+
WP_USERNAME: answers.wpUsername,
|
|
70
|
+
WP_APP_PASSWORD: answers.wpAppPassword,
|
|
71
|
+
},
|
|
72
|
+
};
|
|
73
|
+
config["mcpServers"] = mcpServers;
|
|
74
|
+
fs.writeFileSync(configPath, JSON.stringify(config, null, 2) + "\n");
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
export async function runSetup() {
|
|
78
|
+
const prompt = createPrompt();
|
|
79
|
+
console.log(`
|
|
80
|
+
┌─────────────────────────────────────┐
|
|
81
|
+
│ wp-mcp Setup │
|
|
82
|
+
│ WordPress MCP Server │
|
|
83
|
+
└─────────────────────────────────────┘
|
|
84
|
+
|
|
85
|
+
This will connect your WordPress site to Claude.
|
|
86
|
+
|
|
87
|
+
Prerequisites:
|
|
88
|
+
1. Your WordPress site URL
|
|
89
|
+
2. A WordPress admin username
|
|
90
|
+
3. An Application Password
|
|
91
|
+
(WordPress Admin > Users > Profile > Application Passwords)
|
|
92
|
+
`);
|
|
93
|
+
const wpUrl = await ask(prompt, "WordPress site URL (e.g. https://example.com)");
|
|
94
|
+
if (!wpUrl) {
|
|
95
|
+
console.error("URL is required.");
|
|
96
|
+
process.exit(1);
|
|
97
|
+
}
|
|
98
|
+
const wpUsername = await ask(prompt, "WordPress username");
|
|
99
|
+
if (!wpUsername) {
|
|
100
|
+
console.error("Username is required.");
|
|
101
|
+
process.exit(1);
|
|
102
|
+
}
|
|
103
|
+
const wpAppPassword = await ask(prompt, "Application Password");
|
|
104
|
+
if (!wpAppPassword) {
|
|
105
|
+
console.error("Application Password is required.");
|
|
106
|
+
process.exit(1);
|
|
107
|
+
}
|
|
108
|
+
const cleanUrl = wpUrl.replace(/\/+$/, "");
|
|
109
|
+
console.log("\n Testing connection...");
|
|
110
|
+
const connected = await testConnection(cleanUrl, wpUsername, wpAppPassword);
|
|
111
|
+
if (!connected) {
|
|
112
|
+
const proceed = await ask(prompt, "\n Connection failed. Save config anyway? (y/n)", "n");
|
|
113
|
+
if (proceed.toLowerCase() !== "y") {
|
|
114
|
+
console.log("\n Setup cancelled.");
|
|
115
|
+
process.exit(1);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
const answers = { wpUrl: cleanUrl, wpUsername, wpAppPassword };
|
|
119
|
+
console.log(`
|
|
120
|
+
Where do you want to use wp-mcp?
|
|
121
|
+
|
|
122
|
+
1. Claude Desktop
|
|
123
|
+
2. Claude Code
|
|
124
|
+
3. Both
|
|
125
|
+
4. Just print the config (I'll add it myself)
|
|
126
|
+
`);
|
|
127
|
+
const target = await ask(prompt, "Choose (1-4)", "3");
|
|
128
|
+
if (target === "1" || target === "3") {
|
|
129
|
+
const configPath = getClaudeDesktopConfigPath();
|
|
130
|
+
writeToConfig(configPath, answers);
|
|
131
|
+
console.log(`\n Written to: ${configPath}`);
|
|
132
|
+
}
|
|
133
|
+
if (target === "2" || target === "3") {
|
|
134
|
+
const configPath = getClaudeCodeConfigPath();
|
|
135
|
+
writeToConfig(configPath, answers);
|
|
136
|
+
console.log(`\n Written to: ${configPath}`);
|
|
137
|
+
}
|
|
138
|
+
if (target === "4") {
|
|
139
|
+
const config = {
|
|
140
|
+
mcpServers: {
|
|
141
|
+
wordpress: {
|
|
142
|
+
command: "npx",
|
|
143
|
+
args: [PACKAGE_NAME],
|
|
144
|
+
env: {
|
|
145
|
+
WP_URL: answers.wpUrl,
|
|
146
|
+
WP_USERNAME: answers.wpUsername,
|
|
147
|
+
WP_APP_PASSWORD: answers.wpAppPassword,
|
|
148
|
+
},
|
|
149
|
+
},
|
|
150
|
+
},
|
|
151
|
+
};
|
|
152
|
+
console.log("\n Add this to your config:\n");
|
|
153
|
+
console.log(JSON.stringify(config, null, 2));
|
|
154
|
+
}
|
|
155
|
+
console.log(`
|
|
156
|
+
Done! Restart Claude Desktop/Code to start using WordPress tools.
|
|
157
|
+
`);
|
|
158
|
+
process.exit(0);
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/setup.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED