@automattic/mcp-wordpress-remote 0.5.4 → 0.5.5

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/dist/lib.d.ts CHANGED
@@ -15,7 +15,7 @@ interface WordPressResponse {
15
15
  [key: string]: any;
16
16
  }
17
17
 
18
- declare const MCP_WORDPRESS_REMOTE_VERSION = "0.5.4";
18
+ declare const MCP_WORDPRESS_REMOTE_VERSION = "0.5.5";
19
19
  /**
20
20
  * Centralized configuration for MCP WordPress Remote
21
21
  * All default values are defined here and can be overridden via environment variables
package/dist/lib.js CHANGED
@@ -75954,7 +75954,7 @@ async function selectCallbackPort(serverUrl, specifiedPort, _unused, host = "127
75954
75954
  }
75955
75955
 
75956
75956
  // src/lib/config.ts
75957
- var MCP_WORDPRESS_REMOTE_VERSION = "0.5.4";
75957
+ var MCP_WORDPRESS_REMOTE_VERSION = "0.5.5";
75958
75958
  function parsePositiveIntEnv(value, defaultValue) {
75959
75959
  if (!value) {
75960
75960
  return defaultValue;
@@ -76465,6 +76465,26 @@ function getProxyType() {
76465
76465
  return proxyConfig.type;
76466
76466
  }
76467
76467
 
76468
+ // src/lib/node-web-stream.ts
76469
+ function nodeReadableToWeb(stream) {
76470
+ const chunks = stream[Symbol.asyncIterator]();
76471
+ let cancelled = false;
76472
+ return new ReadableStream({
76473
+ async pull(controller) {
76474
+ const { value, done } = await chunks.next();
76475
+ if (cancelled) return;
76476
+ if (done) controller.close();
76477
+ else
76478
+ controller.enqueue(typeof value === "string" ? Buffer.from(value) : value);
76479
+ },
76480
+ async cancel() {
76481
+ cancelled = true;
76482
+ stream.destroy();
76483
+ await chunks.return?.();
76484
+ }
76485
+ });
76486
+ }
76487
+
76468
76488
  // src/lib/fetch-utils.ts
76469
76489
  var PROXY_PRODUCT = `mcp-wordpress-remote/${MCP_WORDPRESS_REMOTE_VERSION}`;
76470
76490
  var clientProduct;
@@ -76497,7 +76517,13 @@ async function proxyFetch(url2, init) {
76497
76517
  const agent = await getAgentForUrl(url2);
76498
76518
  if (agent) {
76499
76519
  const nodeFetch = (await Promise.resolve().then(() => (init_src(), src_exports))).default;
76500
- return nodeFetch(url2, { ...init, agent });
76520
+ const response = await nodeFetch(url2, { ...init, agent });
76521
+ const body = response.body && ![204, 205, 304].includes(response.status) ? nodeReadableToWeb(response.body) : null;
76522
+ return new Response(body, {
76523
+ status: response.status,
76524
+ statusText: response.statusText,
76525
+ headers: [...response.headers]
76526
+ });
76501
76527
  }
76502
76528
  return fetch(url2, init);
76503
76529
  }
package/dist/proxy.js CHANGED
@@ -76619,7 +76619,7 @@ async function selectCallbackPort(serverUrl, specifiedPort, _unused, host = "127
76619
76619
  }
76620
76620
 
76621
76621
  // src/lib/config.ts
76622
- var MCP_WORDPRESS_REMOTE_VERSION = "0.5.4";
76622
+ var MCP_WORDPRESS_REMOTE_VERSION = "0.5.5";
76623
76623
  function parsePositiveIntEnv(value, defaultValue) {
76624
76624
  if (!value) {
76625
76625
  return defaultValue;
@@ -77143,6 +77143,26 @@ async function getAgentForUrl(url2) {
77143
77143
  return void 0;
77144
77144
  }
77145
77145
 
77146
+ // src/lib/node-web-stream.ts
77147
+ function nodeReadableToWeb(stream) {
77148
+ const chunks = stream[Symbol.asyncIterator]();
77149
+ let cancelled = false;
77150
+ return new ReadableStream({
77151
+ async pull(controller) {
77152
+ const { value, done } = await chunks.next();
77153
+ if (cancelled) return;
77154
+ if (done) controller.close();
77155
+ else
77156
+ controller.enqueue(typeof value === "string" ? Buffer.from(value) : value);
77157
+ },
77158
+ async cancel() {
77159
+ cancelled = true;
77160
+ stream.destroy();
77161
+ await chunks.return?.();
77162
+ }
77163
+ });
77164
+ }
77165
+
77146
77166
  // src/lib/fetch-utils.ts
77147
77167
  var PROXY_PRODUCT = `mcp-wordpress-remote/${MCP_WORDPRESS_REMOTE_VERSION}`;
77148
77168
  var clientProduct;
@@ -77184,14 +77204,17 @@ async function proxyFetch(url2, init) {
77184
77204
  const agent = await getAgentForUrl(url2);
77185
77205
  if (agent) {
77186
77206
  const nodeFetch = (await Promise.resolve().then(() => (init_src(), src_exports))).default;
77187
- return nodeFetch(url2, { ...init, agent });
77207
+ const response = await nodeFetch(url2, { ...init, agent });
77208
+ const body = response.body && ![204, 205, 304].includes(response.status) ? nodeReadableToWeb(response.body) : null;
77209
+ return new Response(body, {
77210
+ status: response.status,
77211
+ statusText: response.statusText,
77212
+ headers: [...response.headers]
77213
+ });
77188
77214
  }
77189
77215
  return fetch(url2, init);
77190
77216
  }
77191
77217
 
77192
- // src/lib/wordpress-transport.ts
77193
- import { Readable } from "node:stream";
77194
-
77195
77218
  // node_modules/@modelcontextprotocol/sdk/dist/esm/shared/mediaType.js
77196
77219
  var import_content_type = __toESM(require_content_type(), 1);
77197
77220
  function mediaTypeEssence(header) {
@@ -80167,9 +80190,7 @@ function createWordPressTransport(onFailure) {
80167
80190
  response.status
80168
80191
  );
80169
80192
  if (recovered) {
80170
- const unread = response.body;
80171
- if (typeof unread?.cancel === "function") await unread.cancel();
80172
- else unread?.destroy?.();
80193
+ await response.body?.cancel();
80173
80194
  cleanup();
80174
80195
  if (cancelled) return new Response(null, { status: 202 });
80175
80196
  return send(url2, init, true);
@@ -80179,8 +80200,7 @@ function createWordPressTransport(onFailure) {
80179
80200
  controller.abort();
80180
80201
  }, timeoutMs);
80181
80202
  }
80182
- const body = response.body && typeof response.body.getReader !== "function" ? Readable.toWeb(response.body) : response.body;
80183
- const reader = body?.getReader();
80203
+ const reader = response.body?.getReader();
80184
80204
  let released = false;
80185
80205
  const stream = reader ? new ReadableStream({
80186
80206
  async pull(output) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@automattic/mcp-wordpress-remote",
3
- "version": "0.5.4",
3
+ "version": "0.5.5",
4
4
  "description": "MCP WordPress Remote proxy server",
5
5
  "engines": {
6
6
  "node": ">=18.0.0"
@@ -75,18 +75,14 @@
75
75
  "@playwright/test": "^1.54.2",
76
76
  "@types/express": "^4.17.21",
77
77
  "@types/jest": "^29.5.12",
78
- "@types/mockdate": "^2.0.0",
79
78
  "@types/node": "^18.19.0",
80
79
  "@types/proper-lockfile": "^4.1.4",
81
- "@types/supertest": "^6.0.3",
82
80
  "@types/tmp": "^0.2.6",
83
81
  "esbuild": "0.25.2",
84
82
  "jest": "^29.7.0",
85
- "mockdate": "^3.0.5",
86
83
  "nock": "^14.0.9",
87
84
  "playwright": "^1.54.2",
88
85
  "prettier": "^3.2.5",
89
- "supertest": "^7.1.4",
90
86
  "tmp": "^0.2.5",
91
87
  "ts-jest": "^29.1.2",
92
88
  "tsup": "^8.0.2",