@wootsup/mcp 0.1.0-rc.1 → 0.1.0-rc.10

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.
Files changed (59) hide show
  1. package/README.md +10 -39
  2. package/dist/index.js +4 -3
  3. package/dist/index.js.map +1 -1
  4. package/dist/modules/apimapper/cache.js +63 -33
  5. package/dist/modules/apimapper/cache.js.map +1 -1
  6. package/dist/modules/apimapper/client.d.ts +10 -1
  7. package/dist/modules/apimapper/client.js +51 -11
  8. package/dist/modules/apimapper/client.js.map +1 -1
  9. package/dist/modules/apimapper/connections.js +70 -30
  10. package/dist/modules/apimapper/connections.js.map +1 -1
  11. package/dist/modules/apimapper/credentials.js +61 -10
  12. package/dist/modules/apimapper/credentials.js.map +1 -1
  13. package/dist/modules/apimapper/diagnose.js +7 -2
  14. package/dist/modules/apimapper/diagnose.js.map +1 -1
  15. package/dist/modules/apimapper/envelope.d.ts +12 -0
  16. package/dist/modules/apimapper/envelope.js +28 -0
  17. package/dist/modules/apimapper/envelope.js.map +1 -0
  18. package/dist/modules/apimapper/flows.js +82 -42
  19. package/dist/modules/apimapper/flows.js.map +1 -1
  20. package/dist/modules/apimapper/graph.js +23 -23
  21. package/dist/modules/apimapper/graph.js.map +1 -1
  22. package/dist/modules/apimapper/index.js +13 -1
  23. package/dist/modules/apimapper/index.js.map +1 -1
  24. package/dist/modules/apimapper/library.js +154 -17
  25. package/dist/modules/apimapper/library.js.map +1 -1
  26. package/dist/modules/apimapper/license.d.ts +23 -0
  27. package/dist/modules/apimapper/license.js +38 -10
  28. package/dist/modules/apimapper/license.js.map +1 -1
  29. package/dist/modules/apimapper/local-sources.js +24 -7
  30. package/dist/modules/apimapper/local-sources.js.map +1 -1
  31. package/dist/modules/apimapper/misc.js +55 -37
  32. package/dist/modules/apimapper/misc.js.map +1 -1
  33. package/dist/modules/apimapper/onboarding.d.ts +21 -0
  34. package/dist/modules/apimapper/onboarding.js +81 -6
  35. package/dist/modules/apimapper/onboarding.js.map +1 -1
  36. package/dist/modules/apimapper/read-cache.d.ts +44 -0
  37. package/dist/modules/apimapper/read-cache.js +165 -0
  38. package/dist/modules/apimapper/read-cache.js.map +1 -0
  39. package/dist/modules/apimapper/schema.js +68 -30
  40. package/dist/modules/apimapper/schema.js.map +1 -1
  41. package/dist/modules/apimapper/settings.js +64 -22
  42. package/dist/modules/apimapper/settings.js.map +1 -1
  43. package/dist/modules/apimapper/skill-resources.js +24 -5
  44. package/dist/modules/apimapper/skill-resources.js.map +1 -1
  45. package/dist/modules/apimapper/use-profile.js +5 -1
  46. package/dist/modules/apimapper/use-profile.js.map +1 -1
  47. package/dist/modules/apimapper/workflows.js +23 -7
  48. package/dist/modules/apimapper/workflows.js.map +1 -1
  49. package/dist/setup/write-config.d.ts +12 -2
  50. package/dist/setup/write-config.js +31 -4
  51. package/dist/setup/write-config.js.map +1 -1
  52. package/dist/setup-cli.d.ts +3 -3
  53. package/dist/setup-cli.js +26 -6
  54. package/dist/setup-cli.js.map +1 -1
  55. package/dist/skill-instructions.d.ts +10 -0
  56. package/dist/skill-instructions.js +29 -4
  57. package/dist/skill-instructions.js.map +1 -1
  58. package/manifest.json +1 -1
  59. package/package.json +4 -3
package/README.md CHANGED
@@ -71,7 +71,7 @@ LLM: ✅ status: ok, platform: wordpress, version: 2.0.7
71
71
  ## Common tools
72
72
 
73
73
  A small set of high-leverage tools — the full 74-tool surface is
74
- [documented in detail in the bundled skill](./skills/apimapper/SKILL.md).
74
+ [documented in detail in the bundled skill](https://github.com/wootsup/api-mapper/blob/main/packages/apimapper-mcp/skills/apimapper/SKILL.md).
75
75
 
76
76
  | Tool | What it does |
77
77
  |------|--------------|
@@ -85,9 +85,9 @@ A small set of high-leverage tools — the full 74-tool surface is
85
85
  | `apimapper_library_catalog` | Browse pre-built connection templates. |
86
86
  | `apimapper_get_skill` | Fetch the bundled skill text on demand. |
87
87
 
88
- See [`skills/apimapper/SKILL.md`](./skills/apimapper/SKILL.md) for the
88
+ See [`skills/apimapper/SKILL.md`](https://github.com/wootsup/api-mapper/blob/main/packages/apimapper-mcp/skills/apimapper/SKILL.md) for the
89
89
  canonical workflow guide, and
90
- [`skills/apimapper/reference/`](./skills/apimapper/reference/) for OAuth,
90
+ [`skills/apimapper/reference/`](https://github.com/wootsup/api-mapper/tree/main/packages/apimapper-mcp/skills/apimapper/reference) for OAuth,
91
91
  Joomla, YOOtheme, and troubleshooting deep-dives.
92
92
 
93
93
  ## Multi-platform: WordPress and Joomla
@@ -111,40 +111,11 @@ Supported AI clients (auto-detected by the setup wizard):
111
111
  - **ChatGPT Desktop** — when MCP support ships
112
112
 
113
113
  Both transports are supported: **stdio** (default, local install) and
114
- **HTTP + OAuth 2.0** (remote use, see [`docs/architecture.md`](./docs/architecture.md)).
115
-
116
- ## Known issues
117
-
118
- ### `npm install` requires `--legacy-peer-deps` (developer-only)
119
-
120
- **Most users don't need this.** If you install via:
121
-
122
- - `npx @wootsup/mcp setup` — no action required.
123
- - DXT bundle drag-and-drop into Claude Desktop — no action required.
124
- - Claude Desktop one-click install — no action required.
125
-
126
- …you can skip this section entirely. The `npx` and DXT paths ship a
127
- pre-resolved dependency tree (no peer-dep resolution happens at install
128
- or runtime), so the issue below cannot bite you.
129
-
130
- **For developers who clone this repo:**
131
-
132
- The dependency `@getimo/mcp-toolkit@1.0.0` declares a peer-dep on
133
- `@pipeline-studio/screenshot-capture` with the `workspace:*` protocol.
134
- That protocol is unresolvable outside the source monorepo, so a vanilla
135
- `npm install` fails with `EUNSUPPORTEDPROTOCOL`. Workaround:
136
-
137
- ```sh
138
- npm install --legacy-peer-deps # local dev
139
- npm ci --legacy-peer-deps # CI
140
- ```
141
-
142
- Tracked in the customgraph repo — fix lands in `@getimo/mcp-toolkit@1.0.1`,
143
- at which point this section will be removed.
114
+ **HTTP + OAuth 2.0** (remote use, see [`docs/architecture.md`](https://github.com/wootsup/api-mapper/blob/main/packages/apimapper-mcp/docs/architecture.md)).
144
115
 
145
116
  ## Troubleshooting
146
117
 
147
- See [`skills/apimapper/reference/troubleshooting.md`](./skills/apimapper/reference/troubleshooting.md).
118
+ See [`skills/apimapper/reference/troubleshooting.md`](https://github.com/wootsup/api-mapper/blob/main/packages/apimapper-mcp/skills/apimapper/reference/troubleshooting.md).
148
119
  Common cases:
149
120
 
150
121
  - `403 invalid_token` → token expired or wrong site URL. Re-run setup.
@@ -171,9 +142,9 @@ For the security disclosure process, see [`SECURITY.md`](./SECURITY.md).
171
142
 
172
143
  - **Homepage:** <https://wootsup.com/products/api-mapper>
173
144
  - **Plugin (WordPress + Joomla):** <https://wootsup.com/products/api-mapper>
174
- - **Docs:** <https://docs.wootsup.com>
145
+ - **Docs:** <https://wootsup.com/docs/mcp>
175
146
  - **Issues:** <https://github.com/wootsup/api-mapper/issues>
176
- - **Architecture:** [`docs/architecture.md`](./docs/architecture.md)
177
- - **Security model:** [`docs/security.md`](./docs/security.md)
178
- - **Tools reference:** [`docs/tools.md`](./docs/tools.md)
179
- - **Changelog:** [`CHANGELOG.md`](./CHANGELOG.md)
147
+ - **Architecture:** [`docs/architecture.md`](https://github.com/wootsup/api-mapper/blob/main/packages/apimapper-mcp/docs/architecture.md)
148
+ - **Security model:** [`docs/security.md`](https://github.com/wootsup/api-mapper/blob/main/packages/apimapper-mcp/docs/security.md)
149
+ - **Tools reference:** [`docs/tools.md`](https://github.com/wootsup/api-mapper/blob/main/packages/apimapper-mcp/docs/tools.md)
150
+ - **Changelog:** [`CHANGELOG.md`](https://github.com/wootsup/api-mapper/blob/main/packages/apimapper-mcp/CHANGELOG.md)
package/dist/index.js CHANGED
@@ -2,8 +2,9 @@
2
2
  // @customgraph/mcp-adapter-apimapper-rest — API Mapper REST MCP Server
3
3
  // Full coverage of /wp-json/api-mapper/v1/* (~65 tools across 12 modules)
4
4
  //
5
- // Auth: WordPress Application Password (1Password Claude-Secrets vault) or
6
- // API Mapper MCP-key (amk_live_...) for DXT/GUI installs.
5
+ // Auth: API Mapper MCP-key (amk_live_...) generated via the API Mapper
6
+ // admin UI → Settings → MCP Access. The legacy WordPress Application
7
+ // Password path is supported as a fallback for dev environments.
7
8
  // See README.md for setup + smoke-test.
8
9
  // ── DXT environment bootstrap (Phase 9.3) ─────────────────────────────
9
10
  // When installed via Claude Desktop's DXT bundle path, the runtime is
@@ -43,7 +44,7 @@ import { registerUseProfileTool } from "./modules/apimapper/use-profile.js";
43
44
  */
44
45
  export function createServer() {
45
46
  return new McpServer({
46
- name: "apimapper-rest",
47
+ name: "API Mapper MCP",
47
48
  version: "0.2.0",
48
49
  }, {
49
50
  instructions: loadSkillInstructions(),
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,53 +1,68 @@
1
1
  import { z } from "zod";
2
2
  import { formatResult, readOnly, mutating } from "@getimo/mcp-toolkit";
3
3
  import { request, hintFor } from "./client.js";
4
+ // F-A6-07: canonical PHP enum from CacheInvalidateController::scopeToEvent.
5
+ // Legacy aliases (`flow`, `connection`, `credential`, `user`) are accepted
6
+ // by Wave 1B PHP but the dotted form is the documented contract.
7
+ const CACHE_INVALIDATE_SCOPES = [
8
+ "connection.updated",
9
+ "connection.deleted",
10
+ "credential.reauth",
11
+ "flow.published",
12
+ "user.refresh",
13
+ "user.fetch_data",
14
+ ];
4
15
  export function registerCacheTools(server) {
5
16
  // ── apimapper_cache_invalidate ─────────────────────────────────────
6
17
  server.registerTool("apimapper_cache_invalidate", {
7
18
  title: "Invalidate Admin Cache",
8
- description: "Trigger admin-cache invalidation via the event bus. Pushes events to all subscribers " +
9
- "(Admin-UI BroadcastChannel + render cache). " +
10
- 'scope="all" clears everything; scope="connection"|"flow"|"library"|"credential" need id.' +
11
- "\n\nExample:\n apimapper_cache_invalidate({ scope: 'connection', id: 'con_abc123' })",
19
+ description: "Publish a cache-invalidation event to the InvalidationBus (Admin-UI BroadcastChannel + render cache). " +
20
+ "Scope is the dotted event id matching the PHP CacheInvalidationEvent subclass. " +
21
+ "Legacy aliases (`flow`, `connection`, `credential`, `user`) are accepted server-side " +
22
+ "but the canonical scopes are documented here." +
23
+ "\n\nExample:\n apimapper_cache_invalidate({ scope: 'connection.updated', payload: { connection_id: 'con_abc' } })",
12
24
  inputSchema: {
13
25
  scope: z
14
- .enum(["all", "connection", "flow", "library", "credential"])
15
- .describe("Invalidation scope"),
16
- id: z.string().optional().describe('Resource ID — required for non-"all" scopes'),
26
+ .enum(CACHE_INVALIDATE_SCOPES)
27
+ .describe("Cache invalidation scope (dotted event id). " +
28
+ "Required payload fields: connection.updated→{connection_id, credential_id?}, " +
29
+ "connection.deleted→{connection_id}, credential.reauth→{credential_id, affected_connection_ids?}, " +
30
+ "flow.published→{flow_id, connection_ids?}, user.refresh→{}, user.fetch_data→{node_id?, connection_id?}."),
31
+ payload: z
32
+ .record(z.string(), z.unknown())
33
+ .optional()
34
+ .describe("Event-specific payload (see scope description for required keys)."),
17
35
  },
18
36
  annotations: mutating(),
19
- }, async ({ scope, id }) => {
20
- if (scope !== "all" && !id) {
21
- return formatResult({
22
- error: `scope="${scope}" requires id`,
23
- context: { scope },
24
- hint: 'Pass id when scope is not "all", or use scope="all" to clear everything.',
25
- }, true);
26
- }
27
- const r = await request("/cache/admin/invalidate", {
28
- method: "POST",
29
- body: JSON.stringify({ scope, id }),
30
- });
37
+ }, async ({ scope, payload }) => {
38
+ const body = { scope };
39
+ if (payload)
40
+ body.payload = payload;
41
+ const r = await request("/cache/admin/invalidate", { method: "POST", body: JSON.stringify(body) });
31
42
  if (!r.success) {
32
43
  return formatResult({
33
44
  error: r.error,
34
45
  status: r.status,
35
46
  errorCode: r.errorCode,
36
- context: { scope, id },
47
+ context: { scope, payload_keys: payload ? Object.keys(payload) : [] },
37
48
  hint: hintFor(r.errorCode),
38
49
  }, true);
39
50
  }
51
+ const ok = r.data?.ok === true;
40
52
  return formatResult({
41
- invalidated: true,
42
- scope,
43
- id,
44
- events_fired: r.data?.events?.length ?? 0,
53
+ invalidated: ok,
54
+ scope: r.data?.scope ?? scope,
55
+ events_fired: Array.isArray(r.data?.events) ? r.data.events.length : ok ? 1 : 0,
45
56
  }, false, { maxChars: 1500 });
46
57
  });
47
58
  // ── apimapper_cache_stats ──────────────────────────────────────────
59
+ // F-A6-08: PHP returns `{timestamp, tiers: {admin, render}, storage, invalidation,
60
+ // window_seconds, top_keys, rt_avoidance_ms_p50}`. Combine admin+render hits/misses
61
+ // for top-line hit_rate; surface tier-specific counters + storage + invalidation
62
+ // events.
48
63
  server.registerTool("apimapper_cache_stats", {
49
64
  title: "Get Cache Stats",
50
- description: "Fetch cache observability stats (hits, misses, ttl distribution, sizes)." +
65
+ description: "Fetch cache observability stats (per-tier hits/misses, storage size, invalidation events)." +
51
66
  "\n\nExample:\n apimapper_cache_stats({})",
52
67
  inputSchema: {},
53
68
  annotations: readOnly(),
@@ -56,15 +71,30 @@ export function registerCacheTools(server) {
56
71
  if (!r.success) {
57
72
  return formatResult({ error: r.error, status: r.status, errorCode: r.errorCode, context: {}, hint: hintFor(r.errorCode) }, true);
58
73
  }
59
- const dataObj = (r.data && typeof r.data === "object") ? r.data : {};
74
+ const tiers = r.data?.tiers ?? {};
75
+ const admin = tiers.admin ?? {};
76
+ const render = tiers.render ?? {};
77
+ const adminHits = typeof admin.hits === "number" ? admin.hits : 0;
78
+ const adminMisses = typeof admin.misses === "number" ? admin.misses : 0;
79
+ const renderHits = typeof render.hits === "number" ? render.hits : 0;
80
+ const renderMisses = typeof render.misses === "number" ? render.misses : 0;
81
+ const totalHits = adminHits + renderHits;
82
+ const totalMisses = adminMisses + renderMisses;
83
+ const denom = totalHits + totalMisses;
84
+ const hitRate = denom > 0 ? `${((totalHits / denom) * 100).toFixed(1)}%` : "n/a";
60
85
  return formatResult({
61
- hits: dataObj.hits ?? 0,
62
- misses: dataObj.misses ?? 0,
63
- hit_rate: typeof dataObj.hits === "number" && typeof dataObj.misses === "number" && dataObj.hits + dataObj.misses > 0
64
- ? `${((dataObj.hits / (dataObj.hits + dataObj.misses)) * 100).toFixed(1)}%`
65
- : "n/a",
66
- sizes: dataObj.sizes,
67
- ttl: dataObj.ttl,
86
+ timestamp: r.data?.timestamp,
87
+ hits: totalHits,
88
+ misses: totalMisses,
89
+ hit_rate: hitRate,
90
+ tiers: {
91
+ admin: { hits: adminHits, misses: adminMisses, sets: admin.sets ?? 0 },
92
+ render: { hits: renderHits, misses: renderMisses, sets: render.sets ?? 0 },
93
+ },
94
+ storage: r.data?.storage,
95
+ invalidation: r.data?.invalidation,
96
+ window_seconds: r.data?.window_seconds,
97
+ rt_avoidance_ms_p50: r.data?.rt_avoidance_ms_p50,
68
98
  }, false, { maxChars: 3000 });
69
99
  });
70
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/modules/apimapper/cache.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,UAAU,kBAAkB,CAAC,MAAiB;IAClD,sEAAsE;IACtE,MAAM,CAAC,YAAY,CACjB,4BAA4B,EAC5B;QACE,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EACT,uFAAuF;YACvF,8CAA8C;YAC9C,0FAA0F;YAC1F,uFAAuF;QACzF,WAAW,EAAE;YACX,KAAK,EAAE,CAAC;iBACL,IAAI,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;iBAC5D,QAAQ,CAAC,oBAAoB,CAAC;YACjC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;SAClF;QACD,WAAW,EAAE,QAAQ,EAAE;KACxB,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE;QACtB,IAAI,KAAK,KAAK,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC;YAC3B,OAAO,YAAY,CACjB;gBACE,KAAK,EAAE,UAAU,KAAK,eAAe;gBACrC,OAAO,EAAE,EAAE,KAAK,EAAE;gBAClB,IAAI,EAAE,0EAA0E;aACjF,EACD,IAAI,CACL,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,GAAG,MAAM,OAAO,CAA+C,yBAAyB,EAAE;YAC/F,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;SACpC,CAAC,CAAC;QACH,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,YAAY,CACjB;gBACE,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;gBACtB,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;aAC3B,EACD,IAAI,CACL,CAAC;QACJ,CAAC;QACD,OAAO,YAAY,CACjB;YACE,WAAW,EAAE,IAAI;YACjB,KAAK;YACL,EAAE;YACF,YAAY,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;SAC1C,EACD,KAAK,EACL,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,sEAAsE;IACtE,MAAM,CAAC,YAAY,CACjB,uBAAuB,EACvB;QACE,KAAK,EAAE,iBAAiB;QACxB,WAAW,EAAE,0EAA0E;YACvF,2CAA2C;QAC3C,WAAW,EAAE,EAAE;QACf,WAAW,EAAE,QAAQ,EAAE;KACxB,EACD,KAAK,IAAI,EAAE;QACT,MAAM,CAAC,GAAG,MAAM,OAAO,CACrB,cAAc,CACf,CAAC;QACF,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,YAAY,CACjB,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,EACrG,IAAI,CACL,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,IAAgC,CAAC,CAAC,CAAC,EAAE,CAAC;QAClG,OAAO,YAAY,CACjB;YACE,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC;YACvB,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,CAAC;YAC3B,QAAQ,EACN,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC;gBACzG,CAAC,CAAC,GAAG,CAAC,CAAE,OAAO,CAAC,IAAe,GAAG,CAAE,OAAO,CAAC,IAAe,GAAI,OAAO,CAAC,MAAiB,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;gBAC/G,CAAC,CAAC,KAAK;YACX,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB,EACD,KAAK,EACL,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/modules/apimapper/cache.ts"],"names":[],"mappings":"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"}
@@ -43,6 +43,15 @@ interface RequestOpts {
43
43
  * Clamped to [1_000, 300_000] (1s..5min).
44
44
  */
45
45
  timeoutMs?: number;
46
+ /**
47
+ * Perf-#2 (2026-05-19): bypass the read-cache for this request even if the
48
+ * path/method would normally be eligible. Apply when the AI is doing a
49
+ * verify-after-mutate flow ("ich habe gerade etwas geändert, ist es
50
+ * wirklich gespeichert?"). Mutation calls already invalidate the cache —
51
+ * this flag is for the rare case where the caller wants to skip cache
52
+ * without performing a mutation.
53
+ */
54
+ noCache?: boolean;
46
55
  }
47
56
  export interface PlatformClient {
48
57
  readonly platform: Platform;
@@ -78,7 +87,7 @@ export declare function hintFor(code?: ApiErrorCode): string;
78
87
  export declare const HEALTH_HINT = "Use apimapper_health to check connectivity and auth.";
79
88
  export declare function authConfigured(): boolean;
80
89
  export declare const api: {
81
- request: <T>(path: string, init?: RequestInit, _retryCount?: number) => Promise<ApiResponse<T>>;
90
+ request: <T>(path: string, init?: RequestInit, _retryCount?: number, responseSchema?: import("zod").ZodType<T>) => Promise<ApiResponse<T>>;
82
91
  requestAll: <T>(path: string, params?: Record<string, string>) => Promise<ApiResponse<T[]>>;
83
92
  acquireRateLimit: () => Promise<void>;
84
93
  };
@@ -23,8 +23,25 @@
23
23
  // - Missing credentials → fail-fast in production, silent in tests (legacy
24
24
  // path only — Platform path is config-driven).
25
25
  import { createHttpClient } from "@getimo/mcp-toolkit";
26
+ import { Agent, setGlobalDispatcher } from "undici";
26
27
  import { sanitizeSecrets } from "./credential-sanitizer.js";
28
+ import { getCached, setCached, isCacheableRequest, invalidateByPath, } from "./read-cache.js";
27
29
  import { WordPressPlatform, JoomlaPlatform } from "../../platform/index.js";
30
+ // Perf-#1 (2026-05-19): HTTP keep-alive connection pool.
31
+ //
32
+ // A typical customer flow fires 9-10 sequential tool calls against the same
33
+ // origin (api.wootsup.com / dev.wootsup.com). Node's bundled undici uses
34
+ // keep-alive by default with a 4s idle timeout — long enough for back-to-back
35
+ // calls, but tight enough that a brief LLM round-trip between tools can let
36
+ // the socket close. We widen the keep-alive window to 30s and pre-allocate a
37
+ // 10-connection pool per origin so the second call onwards reuses an existing
38
+ // TLS session instead of re-handshaking. Safe to call once at module-eval —
39
+ // setGlobalDispatcher is process-global and idempotent.
40
+ setGlobalDispatcher(new Agent({
41
+ keepAliveTimeout: 30_000,
42
+ keepAliveMaxTimeout: 60_000,
43
+ connections: 10,
44
+ }));
28
45
  // DXT / setup-CLI environment bootstrap. The setup wizard writes the
29
46
  // MCP key as APIMAPPER_TOKEN and the site URL as APIMAPPER_SITE_URL.
30
47
  // Legacy callers (R7 verify scripts, CustomGraph internal use) still
@@ -59,8 +76,8 @@ const BEARER_TOKEN = IS_MCP_BEARER ? WP_APP_PASS : "";
59
76
  if (!BASIC_TOKEN && !BEARER_TOKEN && process.env.NODE_ENV === "production") {
60
77
  // Fail-fast: prevents silent unauthenticated client → opaque 401s downstream.
61
78
  // In test/dev we keep the client buildable so unit tests don't require a vault.
62
- console.error("[apimapper-rest] ERROR: APIMAPPER_WP_APP_PASS / APIMAPPER_TOKEN is not " +
63
- "set. Set via 1Password (see README.md). Refusing to start in production.");
79
+ console.error("[apimapper-mcp] ERROR: APIMAPPER_TOKEN is not set. Run `npx -y @wootsup/mcp setup` " +
80
+ "to generate a key and configure your AI client. Refusing to start in production.");
64
81
  process.exit(2);
65
82
  }
66
83
  const rawApi = createHttpClient({
@@ -286,20 +303,43 @@ const legacyClient = createPlatformClient(legacyPlatform);
286
303
  * For new code, prefer `createPlatformClient(platform).request(action)`.
287
304
  */
288
305
  export async function request(path, init = {}, opts = {}) {
306
+ // Perf-#2 (2026-05-19): read-cache for GET requests against read-only
307
+ // endpoints. Cache key includes the resolved path (with query) and
308
+ // method. Mutations invalidate by path-prefix below.
309
+ const method = init.method ?? "GET";
310
+ const upperMethod = method.toUpperCase();
311
+ const cacheEligible = !opts.noCache && isCacheableRequest(upperMethod, path);
312
+ if (cacheEligible) {
313
+ const hit = getCached(upperMethod, path);
314
+ if (hit)
315
+ return hit;
316
+ }
289
317
  // Strip the leading "/" — Platform.buildUrl() takes a bare action name.
290
318
  // Also tolerate the existing escape-hatch where `path` starts with "http"
291
319
  // (absolute URL); fall back to raw fetch in that case.
320
+ let response;
292
321
  if (path.startsWith("http")) {
293
- return rawAbsoluteRequest(path, init, opts);
322
+ response = await rawAbsoluteRequest(path, init, opts);
323
+ }
324
+ else if (legacyPlatform instanceof JoomlaPlatform) {
325
+ // Joomla branch — translate REST path → com_ajax task + params.
326
+ response = await joomlaRequest(legacyPlatform, path, init, opts);
327
+ }
328
+ else {
329
+ const action = path.replace(/^\/+/, "");
330
+ response = await legacyClient.request(action, init, opts);
331
+ }
332
+ // Cache successful responses; never cache errors so the next call retries.
333
+ if (cacheEligible && response.success) {
334
+ setCached(upperMethod, path, response);
294
335
  }
295
- // Joomla branch translate REST path com_ajax task + params, fetch
296
- // directly so we can pass the params dict (legacyClient.request doesn't
297
- // surface params).
298
- if (legacyPlatform instanceof JoomlaPlatform) {
299
- return joomlaRequest(legacyPlatform, path, init, opts);
336
+ // Mutation invalidation: any non-GET that succeeded clears the read-cache
337
+ // for the touched path-prefix. Conservative better to over-invalidate
338
+ // than serve stale state on the next read.
339
+ if (upperMethod !== "GET" && response.success) {
340
+ invalidateByPath(path);
300
341
  }
301
- const action = path.replace(/^\/+/, "");
302
- return legacyClient.request(action, init, opts);
342
+ return response;
303
343
  }
304
344
  /**
305
345
  * Joomla-side legacy request — translates REST path → com_ajax task name
@@ -494,7 +534,7 @@ async function rawAbsoluteRequest(url, init, opts) {
494
534
  export function hintFor(code) {
495
535
  switch (code) {
496
536
  case "auth":
497
- return "Auth failed. Verify APIMAPPER_WP_APP_PASS rotate via 1Password vault Claude-Secrets/WootsUp Dev API Mapper MCP.";
537
+ return "Auth failed. Your MCP key (APIMAPPER_TOKEN) is invalid, revoked, or expired. Generate a new one in API Mapper → ⋮ menu → Settings → MCP Access → New API key, then re-run `npx -y @wootsup/mcp setup` to update your AI client config.";
498
538
  case "not_found":
499
539
  return "Resource not found. Use the matching `*_list` tool to find a valid id.";
500
540
  case "rate_limit":
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/modules/apimapper/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/modules/apimapper/client.ts"],"names":[],"mappings":"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"}