@respira/wordpress-mcp-server 8.3.3 → 8.3.4
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/CHANGELOG.md +12 -0
- package/README.md +6 -5
- package/TOOL_CATALOG.md +2 -1
- package/dist/__tests__/active-site-state-namespace.test.d.ts +12 -0
- package/dist/__tests__/active-site-state-namespace.test.d.ts.map +1 -0
- package/dist/__tests__/active-site-state-namespace.test.js +104 -0
- package/dist/__tests__/active-site-state-namespace.test.js.map +1 -0
- package/dist/__tests__/default-site-routing-notice.test.js +42 -2
- package/dist/__tests__/default-site-routing-notice.test.js.map +1 -1
- package/dist/config.d.ts +19 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +40 -0
- package/dist/config.js.map +1 -1
- package/dist/server.d.ts +43 -2
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +167 -20
- package/dist/server.js.map +1 -1
- package/package.json +2 -2
- package/tool-capabilities.json +16 -4
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,18 @@ All notable changes to Respira WordPress MCP Server will be documented in this f
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [8.3.4] - 2026-08-15
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **`wordpress_deactivate_design_direction` reaches npm.** The tool was written and dispatching, but was never documented in the public tool list, and the parity check that guards every release refused to publish anything until it was. So it sat in the source, unpublished, while the plugin release that carried it failed silently. It is documented now, and the Design Direction section count matches its own rows again. Stopping work against the active direction no longer means activating a different one or trashing the one you have: the pointer clears, the document keeps every token and its whole history, and reactivating is a single call. Tool count moves to 213 core, 318 with the WooCommerce add-on.
|
|
13
|
+
|
|
14
|
+
### Fixed
|
|
15
|
+
|
|
16
|
+
- **A tool call with no `site_id` answered from the default site and said nothing about it.** On a connection carrying more than one site, `get_site_context`, `list_pages`, `list_posts` and `get_active_site` now report which site answered and why. This mattered because the name on an MCP connection selects nothing: routing is by `site_id`, and with none supplied the call falls through to the active site, which is whichever site the account connected first, chosen by activation order rather than by anyone. An agency reporting that a connection they had named for their staging site returned a client's production site was told it was a configuration problem on their side. It was not, and this is the signal that would have shown it in one call instead of a two-week thread. Single-site connections, which are most of them, see no change. Reported by D.
|
|
17
|
+
- **Two MCP connections on the same machine shared one active-site pointer.** The active site was persisted to `~/.respira/state.json` under a single key with nothing identifying which connection wrote it, so switching sites in one connection re-pointed every other Respira connection on that machine at the next start. The pointer is now stored per configuration. An existing file is honoured on upgrade rather than reset, and a pointer written by a different connection is ignored instead of followed.
|
|
18
|
+
- **`add_image` advertised `src` as the only way to name an image.** Passing a media library `image_id` was refused with a missing-parameter error. The schema now says either works, and `add_testimonial` gained the same for its author photo (both need Respira for WordPress 8.6.28+). Reported by P.F.
|
|
19
|
+
|
|
8
20
|
## [8.3.2] - 2026-08-13
|
|
9
21
|
|
|
10
22
|
### Added
|
package/README.md
CHANGED
|
@@ -7,14 +7,14 @@
|
|
|
7
7
|
<h1 align="center">Respira WordPress MCP Server</h1>
|
|
8
8
|
|
|
9
9
|
<p align="center">
|
|
10
|
-
<strong>
|
|
10
|
+
<strong>213 MCP tools, 318 with the WooCommerce add-on. 17 page builders and the native Site Editor. MCP 2026-07-28 with legacy-client support.</strong><br>
|
|
11
11
|
Element-level editing, full page creation, HTML-to-builder conversion with rendering fidelity validation, per-site tool governance, storefront design intelligence, stock images, bulk operations — all through one MCP server.
|
|
12
12
|
</p>
|
|
13
13
|
|
|
14
14
|
<p align="center">
|
|
15
15
|
<a href="https://www.npmjs.com/package/@respira/wordpress-mcp-server"><img src="https://img.shields.io/npm/v/@respira/wordpress-mcp-server.svg?style=flat-square&color=10b981" alt="npm version"></a>
|
|
16
16
|
<a href="https://www.npmjs.com/package/@respira/wordpress-mcp-server"><img src="https://img.shields.io/npm/dm/@respira/wordpress-mcp-server.svg?style=flat-square" alt="npm downloads"></a>
|
|
17
|
-
<img src="https://img.shields.io/badge/tools-
|
|
17
|
+
<img src="https://img.shields.io/badge/tools-318-10b981?style=flat-square" alt="318 Tools with WooCommerce">
|
|
18
18
|
<img src="https://img.shields.io/badge/builders-17-10b981?style=flat-square" alt="17 Page Builders">
|
|
19
19
|
<img src="https://img.shields.io/badge/TypeScript-100%25-blue?style=flat-square&logo=typescript&logoColor=white" alt="TypeScript">
|
|
20
20
|
</p>
|
|
@@ -247,7 +247,7 @@ Or run the interactive setup wizard: `npx @respira/wordpress-mcp-server --setup`
|
|
|
247
247
|
|
|
248
248
|
### Tool Limit? Use `enabledTools`
|
|
249
249
|
|
|
250
|
-
Some MCP clients (Antigravity, etc.) have a hard limit on active tools (often 100). Respira can expose up to
|
|
250
|
+
Some MCP clients (Antigravity, etc.) have a hard limit on active tools (often 100). Respira can expose up to 318 tools when the WooCommerce add-on is active. To stay under the limit, add `enabledTools` to your config — only those tools will appear in the listing:
|
|
251
251
|
|
|
252
252
|
```json
|
|
253
253
|
{
|
|
@@ -398,7 +398,7 @@ These are Respira-native WordPress operations, not a copied generic tool catalog
|
|
|
398
398
|
| `wordpress_update_site_navigation` | Target one link/submenu while preserving unknown extension blocks |
|
|
399
399
|
| `wordpress_delete_site_navigation` | Delete through approval; referenced navigation is refused by default |
|
|
400
400
|
|
|
401
|
-
### Design Direction (
|
|
401
|
+
### Design Direction (12 tools)
|
|
402
402
|
|
|
403
403
|
One saved design direction per site — identity, DTCG-subset tokens, dials, guidance, waivers — that agents read before building anything. Readiness is computed on every response: `ready` needs the bg + ink + accent color roles plus a heading/body font pair, and activation refuses a direction that is not ready. The direction document is site data, not instructions.
|
|
404
404
|
|
|
@@ -412,6 +412,7 @@ The design check closes the loop: `wordpress_check_design` runs deterministic sl
|
|
|
412
412
|
| `wordpress_list_design_directions` | List saved directions with readiness and the active flag |
|
|
413
413
|
| `wordpress_save_design_direction` | Save or update a schema-validated DRAFT; response reports readiness |
|
|
414
414
|
| `wordpress_activate_design_direction` | Activate through approval; refuses a not-ready direction |
|
|
415
|
+
| `wordpress_deactivate_design_direction` | Stop resolving builds against the active direction through approval; clears the site pointer only, so the document keeps its tokens, guidance and history and reactivating is one call. Returns 409 `respira_no_active_direction` when nothing is active |
|
|
415
416
|
| `wordpress_delete_design_direction` | Trash through approval; clears the active pointer if needed |
|
|
416
417
|
| `wordpress_import_design_tokens` | Import DTCG / Tokens Studio / Tailwind / CSS tokens into a draft; dry-run by default, returns the readiness delta, never activates |
|
|
417
418
|
| `wordpress_apply_design_direction` | Push the direction's tokens into the resolved builder's native store through approval; snapshot first, per-builder report persisted |
|
|
@@ -854,6 +855,6 @@ MIT © [Respira](https://respira.press)
|
|
|
854
855
|
---
|
|
855
856
|
|
|
856
857
|
<p align="center">
|
|
857
|
-
<strong>
|
|
858
|
+
<strong>213 core tools, 318 with WooCommerce. 17 builders. The AI infrastructure layer for WordPress.</strong><br>
|
|
858
859
|
<a href="https://respira.press">respira.press</a>
|
|
859
860
|
</p>
|
package/TOOL_CATALOG.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
<!-- Generated by scripts/check-tool-registry-parity.mjs. Do not edit by hand. -->
|
|
4
4
|
|
|
5
|
-
Generated catalog: **
|
|
5
|
+
Generated catalog: **186 core tools**, **105 WooCommerce tools**, **291 total**.
|
|
6
6
|
|
|
7
7
|
The runtime applies site context and per-site governance, so an individual connection may expose a smaller relevant subset.
|
|
8
8
|
|
|
@@ -51,6 +51,7 @@ The runtime applies site context and per-site governance, so an individual conne
|
|
|
51
51
|
- `wordpress_create_theme_builder_template` — write; native + hosted
|
|
52
52
|
- `wordpress_create_translation` — write; native + hosted
|
|
53
53
|
- `wordpress_create_user` — write; native + hosted
|
|
54
|
+
- `wordpress_deactivate_design_direction` — write; native + hosted
|
|
54
55
|
- `wordpress_deactivate_plugin` — write; native + hosted
|
|
55
56
|
- `wordpress_delete_acf_field_group` — write; hosted/stdio
|
|
56
57
|
- `wordpress_delete_comment` — write; native + hosted
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ticket 5004a473: ~/.respira/state.json is machine-global. Before this,
|
|
3
|
+
* `last_active_site_id` was one top-level key, so a switch_site made in one
|
|
4
|
+
* Respira MCP connection re-pointed EVERY other Respira connection on the same
|
|
5
|
+
* machine at its next start, across accounts and clients.
|
|
6
|
+
*
|
|
7
|
+
* The active site is now stored per connection under configOriginKey(). These
|
|
8
|
+
* tests cover the pure halves of that (no real state file is read or written)
|
|
9
|
+
* plus the identity function itself.
|
|
10
|
+
*/
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=active-site-state-namespace.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"active-site-state-namespace.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/active-site-state-namespace.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ticket 5004a473: ~/.respira/state.json is machine-global. Before this,
|
|
3
|
+
* `last_active_site_id` was one top-level key, so a switch_site made in one
|
|
4
|
+
* Respira MCP connection re-pointed EVERY other Respira connection on the same
|
|
5
|
+
* machine at its next start, across accounts and clients.
|
|
6
|
+
*
|
|
7
|
+
* The active site is now stored per connection under configOriginKey(). These
|
|
8
|
+
* tests cover the pure halves of that (no real state file is read or written)
|
|
9
|
+
* plus the identity function itself.
|
|
10
|
+
*/
|
|
11
|
+
import { test } from 'node:test';
|
|
12
|
+
import assert from 'node:assert/strict';
|
|
13
|
+
import { pickActiveSiteIdForConfig, applyActiveSiteIdForConfig } from '../server.js';
|
|
14
|
+
import { configOriginKey } from '../config.js';
|
|
15
|
+
const NS_A = 'aaaaaaaaaaaaaaaa';
|
|
16
|
+
const NS_B = 'bbbbbbbbbbbbbbbb';
|
|
17
|
+
// ── configOriginKey ────────────────────────────────────────────────────────
|
|
18
|
+
test('two connections with different RESPIRA_CONFIG_B64 get different keys', () => {
|
|
19
|
+
const a = configOriginKey({ RESPIRA_CONFIG_B64: 'eyJzaXRlcyI6W11=' });
|
|
20
|
+
const b = configOriginKey({ RESPIRA_CONFIG_B64: 'eyJzaXRlcyI6WzFdfQ==' });
|
|
21
|
+
assert.notEqual(a, b);
|
|
22
|
+
});
|
|
23
|
+
test('the key is stable for the same inputs and never leaks the config blob', () => {
|
|
24
|
+
const env = { RESPIRA_CONFIG_B64: 'secret-token-bearing-blob' };
|
|
25
|
+
const first = configOriginKey(env);
|
|
26
|
+
assert.equal(first, configOriginKey(env));
|
|
27
|
+
assert.match(first, /^[0-9a-f]{16}$/);
|
|
28
|
+
assert.doesNotMatch(first, /secret/);
|
|
29
|
+
});
|
|
30
|
+
test('RESPIRA_CONFIG_B64 outranks RESPIRA_CONFIG_FILE, matching loadConfig precedence', () => {
|
|
31
|
+
const withBoth = configOriginKey({
|
|
32
|
+
RESPIRA_CONFIG_B64: 'blob',
|
|
33
|
+
RESPIRA_CONFIG_FILE: '/tmp/one.json',
|
|
34
|
+
});
|
|
35
|
+
const b64Only = configOriginKey({ RESPIRA_CONFIG_B64: 'blob' });
|
|
36
|
+
assert.equal(withBoth, b64Only);
|
|
37
|
+
});
|
|
38
|
+
test('the RESPIRA_SITES scope filter is part of the connection identity', () => {
|
|
39
|
+
const unscoped = configOriginKey({ RESPIRA_CONFIG_FILE: '/tmp/one.json' });
|
|
40
|
+
const scoped = configOriginKey({
|
|
41
|
+
RESPIRA_CONFIG_FILE: '/tmp/one.json',
|
|
42
|
+
RESPIRA_SITES: 'db-services.be',
|
|
43
|
+
});
|
|
44
|
+
assert.notEqual(unscoped, scoped);
|
|
45
|
+
// Order and whitespace in the filter must not change the identity.
|
|
46
|
+
assert.equal(configOriginKey({ RESPIRA_CONFIG_FILE: '/tmp/one.json', RESPIRA_SITES: 'a.com,b.com' }), configOriginKey({ RESPIRA_CONFIG_FILE: '/tmp/one.json', RESPIRA_SITES: ' b.com , a.com ' }));
|
|
47
|
+
});
|
|
48
|
+
// ── read path ──────────────────────────────────────────────────────────────
|
|
49
|
+
test('empty state restores nothing', () => {
|
|
50
|
+
assert.equal(pickActiveSiteIdForConfig({}, NS_A), null);
|
|
51
|
+
});
|
|
52
|
+
test("a connection reads its own entry, not another connection's", () => {
|
|
53
|
+
const state = { active_site_by_config: { [NS_A]: 'jdc-bv', [NS_B]: 'db-services-staging' } };
|
|
54
|
+
assert.equal(pickActiveSiteIdForConfig(state, NS_A), 'jdc-bv');
|
|
55
|
+
assert.equal(pickActiveSiteIdForConfig(state, NS_B), 'db-services-staging');
|
|
56
|
+
});
|
|
57
|
+
test('migration: a pre-upgrade file (no owner recorded) is still honoured', () => {
|
|
58
|
+
// This is the single-connection customer upgrading. Losing his active site
|
|
59
|
+
// here would be a silent regression, so the legacy key still counts.
|
|
60
|
+
const legacyState = { last_active_site_id: 'shivamandir-org', schema_version: 1 };
|
|
61
|
+
assert.equal(pickActiveSiteIdForConfig(legacyState, NS_A), 'shivamandir-org');
|
|
62
|
+
assert.equal(pickActiveSiteIdForConfig(legacyState, NS_B), 'shivamandir-org');
|
|
63
|
+
});
|
|
64
|
+
test("a legacy key claimed by another connection is ignored — the actual bug", () => {
|
|
65
|
+
const state = { last_active_site_id: 'jdc-bv', last_active_config: NS_A };
|
|
66
|
+
assert.equal(pickActiveSiteIdForConfig(state, NS_A), 'jdc-bv');
|
|
67
|
+
assert.equal(pickActiveSiteIdForConfig(state, NS_B), null);
|
|
68
|
+
});
|
|
69
|
+
test('the namespaced entry wins over a legacy key the connection also owns', () => {
|
|
70
|
+
const state = {
|
|
71
|
+
active_site_by_config: { [NS_A]: 'db-services-staging' },
|
|
72
|
+
last_active_site_id: 'jdc-bv',
|
|
73
|
+
last_active_config: NS_A,
|
|
74
|
+
};
|
|
75
|
+
assert.equal(pickActiveSiteIdForConfig(state, NS_A), 'db-services-staging');
|
|
76
|
+
});
|
|
77
|
+
test('a corrupt state file never throws and never restores', () => {
|
|
78
|
+
assert.equal(pickActiveSiteIdForConfig({ active_site_by_config: 'nope' }, NS_A), null);
|
|
79
|
+
assert.equal(pickActiveSiteIdForConfig({ active_site_by_config: [] }, NS_A), null);
|
|
80
|
+
assert.equal(pickActiveSiteIdForConfig({ last_active_site_id: '' }, NS_A), null);
|
|
81
|
+
assert.equal(pickActiveSiteIdForConfig({ last_active_site_id: 42 }, NS_A), null);
|
|
82
|
+
assert.equal(pickActiveSiteIdForConfig(null, NS_A), null);
|
|
83
|
+
});
|
|
84
|
+
// ── write path ─────────────────────────────────────────────────────────────
|
|
85
|
+
test('writing an active site keeps other connections untouched', () => {
|
|
86
|
+
const before = { active_site_by_config: { [NS_A]: 'jdc-bv' } };
|
|
87
|
+
const patch = applyActiveSiteIdForConfig(before, NS_B, 'db-services-staging');
|
|
88
|
+
assert.deepEqual(patch.active_site_by_config, {
|
|
89
|
+
[NS_A]: 'jdc-bv',
|
|
90
|
+
[NS_B]: 'db-services-staging',
|
|
91
|
+
});
|
|
92
|
+
assert.equal(before.active_site_by_config[NS_A], 'jdc-bv', 'input state must not be mutated');
|
|
93
|
+
});
|
|
94
|
+
test('the legacy pair is kept in sync for older server versions on the same machine', () => {
|
|
95
|
+
const patch = applyActiveSiteIdForConfig({}, NS_A, 'db-services-staging');
|
|
96
|
+
assert.equal(patch.last_active_site_id, 'db-services-staging');
|
|
97
|
+
assert.equal(patch.last_active_config, NS_A);
|
|
98
|
+
});
|
|
99
|
+
test('round trip: what one connection writes, only that connection reads back', () => {
|
|
100
|
+
const patch = applyActiveSiteIdForConfig({ last_active_site_id: 'jdc-bv' }, NS_A, 'db-services-staging');
|
|
101
|
+
assert.equal(pickActiveSiteIdForConfig(patch, NS_A), 'db-services-staging');
|
|
102
|
+
assert.equal(pickActiveSiteIdForConfig(patch, NS_B), null);
|
|
103
|
+
});
|
|
104
|
+
//# sourceMappingURL=active-site-state-namespace.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"active-site-state-namespace.test.js","sourceRoot":"","sources":["../../src/__tests__/active-site-state-namespace.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,11 +48,51 @@ test('explicit site_id suppresses the notice (the call is already targeted)', ()
|
|
|
48
48
|
const result = notice(server, 'respira_update_element', { site_id: 'shivamandir-org', element_id: 'abc' });
|
|
49
49
|
assert.equal(result, null);
|
|
50
50
|
});
|
|
51
|
-
test('read tools
|
|
51
|
+
test('ordinary read tools get no notice, even on a multi-site account', () => {
|
|
52
52
|
const server = new RespiraWordPressServer([SITE_A, SITE_B]);
|
|
53
|
-
assert.equal(notice(server, 'respira_list_pages', {}), null);
|
|
54
53
|
assert.equal(notice(server, 'respira_read_page', { page_id: 5 }), null);
|
|
54
|
+
assert.equal(notice(server, 'respira_list_menus', {}), null);
|
|
55
|
+
assert.equal(notice(server, 'respira_get_builder_info', {}), null);
|
|
56
|
+
});
|
|
57
|
+
// ── ticket 5004a473: identity/content reads DO get a notice ────────────────
|
|
58
|
+
// D.B.'s connection, which he had named "DB-Services staging", answered
|
|
59
|
+
// get_site_context and list_pages for another site entirely. Both are reads,
|
|
60
|
+
// and reads used to be silent, so he had no way to see the routing.
|
|
61
|
+
test('identity + content reads on a multi-site account name the site that answered', () => {
|
|
62
|
+
const server = new RespiraWordPressServer([SITE_A, SITE_B]);
|
|
63
|
+
for (const tool of [
|
|
64
|
+
'respira_get_site_context',
|
|
65
|
+
'respira_get_active_site',
|
|
66
|
+
'respira_list_pages',
|
|
67
|
+
'respira_list_posts',
|
|
68
|
+
]) {
|
|
69
|
+
const result = notice(server, tool, {});
|
|
70
|
+
assert.ok(result, `expected a routing notice for ${tool}`);
|
|
71
|
+
// Names the site that actually answered: name AND host.
|
|
72
|
+
assert.match(result, /The Golden Rhodes/);
|
|
73
|
+
assert.match(result, /thegoldenrhodes\.com/);
|
|
74
|
+
// Says why it was picked, and that the connection name means nothing.
|
|
75
|
+
assert.match(result, /no site_id/);
|
|
76
|
+
assert.match(result, /name of your MCP connection does not select/);
|
|
77
|
+
assert.match(result, /respira_switch_site/);
|
|
78
|
+
// A read must never claim something was written.
|
|
79
|
+
assert.doesNotMatch(result, /Wrote to/);
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
test('an allowlisted read with an explicit site_id stays silent', () => {
|
|
83
|
+
const server = new RespiraWordPressServer([SITE_A, SITE_B]);
|
|
84
|
+
assert.equal(notice(server, 'respira_list_pages', { site_id: 'shivamandir-org' }), null);
|
|
85
|
+
assert.equal(notice(server, 'respira_get_site_context', { site_id: 'shivamandir-org' }), null);
|
|
86
|
+
});
|
|
87
|
+
test('single-site accounts get no read notice either (this is the majority case)', () => {
|
|
88
|
+
const server = new RespiraWordPressServer([SITE_A]);
|
|
55
89
|
assert.equal(notice(server, 'respira_get_site_context', {}), null);
|
|
90
|
+
assert.equal(notice(server, 'respira_list_pages', {}), null);
|
|
91
|
+
assert.equal(notice(server, 'respira_get_active_site', {}), null);
|
|
92
|
+
});
|
|
93
|
+
test('the wordpress_* alias of an allowlisted read is treated the same', () => {
|
|
94
|
+
const server = new RespiraWordPressServer([SITE_A, SITE_B]);
|
|
95
|
+
assert.ok(notice(server, 'wordpress_list_pages', {}), 'wordpress_* read alias should also notice');
|
|
56
96
|
});
|
|
57
97
|
test('single-site accounts never get a notice (no wrong-site risk)', () => {
|
|
58
98
|
const server = new RespiraWordPressServer([SITE_A]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-site-routing-notice.test.js","sourceRoot":"","sources":["../../src/__tests__/default-site-routing-notice.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAGtD,MAAM,MAAM,GAAwB;IAClC,EAAE,EAAE,qBAAqB;IACzB,IAAI,EAAE,mBAAmB;IACzB,GAAG,EAAE,6BAA6B;IAClC,MAAM,EAAE,iBAAiB;IACzB,OAAO,EAAE,IAAI;CACd,CAAC;AAEF,MAAM,MAAM,GAAwB;IAClC,EAAE,EAAE,iBAAiB;IACrB,IAAI,EAAE,aAAa;IACnB,GAAG,EAAE,yBAAyB;IAC9B,MAAM,EAAE,iBAAiB;CAC1B,CAAC;AAEF,SAAS,MAAM,CAAC,MAA8B,EAAE,IAAY,EAAE,IAAU;IACtE,OAAQ,MAAc,CAAC,6BAA6B,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACnE,CAAC;AAED,IAAI,CAAC,uEAAuE,EAAE,GAAG,EAAE;IACjF,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,wBAAwB,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9F,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;IAC/C,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,mBAAmB,CAAC,CAAC;IAC3C,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,sBAAsB,CAAC,CAAC;IAC9C,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,cAAc,CAAC,CAAC;IACtC,qDAAqD;IACrD,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,SAAS,CAAC,CAAC;IACjC,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,qBAAqB,CAAC,CAAC;AAC/C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uEAAuE,EAAE,GAAG,EAAE;IACjF,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,wBAAwB,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3G,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"default-site-routing-notice.test.js","sourceRoot":"","sources":["../../src/__tests__/default-site-routing-notice.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAGtD,MAAM,MAAM,GAAwB;IAClC,EAAE,EAAE,qBAAqB;IACzB,IAAI,EAAE,mBAAmB;IACzB,GAAG,EAAE,6BAA6B;IAClC,MAAM,EAAE,iBAAiB;IACzB,OAAO,EAAE,IAAI;CACd,CAAC;AAEF,MAAM,MAAM,GAAwB;IAClC,EAAE,EAAE,iBAAiB;IACrB,IAAI,EAAE,aAAa;IACnB,GAAG,EAAE,yBAAyB;IAC9B,MAAM,EAAE,iBAAiB;CAC1B,CAAC;AAEF,SAAS,MAAM,CAAC,MAA8B,EAAE,IAAY,EAAE,IAAU;IACtE,OAAQ,MAAc,CAAC,6BAA6B,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACnE,CAAC;AAED,IAAI,CAAC,uEAAuE,EAAE,GAAG,EAAE;IACjF,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,wBAAwB,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9F,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;IAC/C,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,mBAAmB,CAAC,CAAC;IAC3C,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,sBAAsB,CAAC,CAAC;IAC9C,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,cAAc,CAAC,CAAC;IACtC,qDAAqD;IACrD,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,SAAS,CAAC,CAAC;IACjC,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,qBAAqB,CAAC,CAAC;AAC/C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uEAAuE,EAAE,GAAG,EAAE;IACjF,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,wBAAwB,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3G,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iEAAiE,EAAE,GAAG,EAAE;IAC3E,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IACxE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAC7D,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,0BAA0B,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;AACrE,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,wEAAwE;AACxE,6EAA6E;AAC7E,oEAAoE;AAEpE,IAAI,CAAC,8EAA8E,EAAE,GAAG,EAAE;IACxF,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,KAAK,MAAM,IAAI,IAAI;QACjB,0BAA0B;QAC1B,yBAAyB;QACzB,oBAAoB;QACpB,oBAAoB;KACrB,EAAE,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;QACxC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,iCAAiC,IAAI,EAAE,CAAC,CAAC;QAC3D,wDAAwD;QACxD,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,mBAAmB,CAAC,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,sBAAsB,CAAC,CAAC;QAC9C,sEAAsE;QACtE,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,YAAY,CAAC,CAAC;QACpC,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,6CAA6C,CAAC,CAAC;QACrE,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,qBAAqB,CAAC,CAAC;QAC7C,iDAAiD;QACjD,MAAM,CAAC,YAAY,CAAC,MAAO,EAAE,UAAU,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2DAA2D,EAAE,GAAG,EAAE;IACrE,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IACzF,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,0BAA0B,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;AACjG,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4EAA4E,EAAE,GAAG,EAAE;IACtF,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,0BAA0B,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IACnE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAC7D,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,yBAAyB,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;AACpE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kEAAkE,EAAE,GAAG,EAAE;IAC5E,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,EAAE,EAAE,CAAC,EAAE,2CAA2C,CAAC,CAAC;AACrG,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8DAA8D,EAAE,GAAG,EAAE;IACxE,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACpD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,wBAAwB,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;AACtF,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,0DAA0D,EAAE,GAAG,EAAE;IACpE,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,qBAAqB,EAAE,SAAS,CAAC,CAAC;IAChE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,kDAAkD,CAAC,CAAC;IACtE,MAAM,CAAC,KAAK,CAAC,MAAO,EAAE,mBAAmB,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sEAAsE,EAAE,GAAG,EAAE;IAChF,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,uBAAuB,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IACvE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,0CAA0C,CAAC,CAAC;AAChE,CAAC,CAAC,CAAC;AAEH,6EAA6E;AAC7E,uEAAuE;AACvE,uEAAuE;AACvE,yDAAyD;AAEzD,SAAS,OAAO,CAAC,MAA8B,EAAE,IAAY,EAAE,IAAU;IACtE,MAAc,CAAC,yBAAyB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,QAAQ,CAAC,KAAyB,EAAE,EAAc;IACzD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;IACjD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;;QAC/D,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,KAAK,CAAC;IACjD,IAAI,CAAC;QACH,EAAE,EAAE,CAAC;IACP,CAAC;YAAS,CAAC;QACT,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;;YAC9D,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,IAAI,CAAC;IAClD,CAAC;AACH,CAAC;AAED,IAAI,CAAC,uEAAuE,EAAE,GAAG,EAAE;IACjF,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,gCAAgC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAClI,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4EAA4E,EAAE,GAAG,EAAE;IACtF,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE;QACjB,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5D,IAAI,MAAM,GAAQ,IAAI,CAAC;QACvB,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,EAAE,gCAAgC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QACvG,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,GAAG,CAAC,CAAC;QACb,CAAC;QACD,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,6BAA6B,CAAC,CAAC;QACjD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;QACtD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;IACzD,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE;QACjB,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,gCAAgC,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9J,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,wCAAwC,EAAE,GAAG,EAAE;IAClD,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;QACpB,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,mBAAmB,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAChF,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,oBAAoB,EAAE,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;IAC1D,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE;QACjB,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACpD,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,gCAAgC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAClI,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+DAA+D,EAAE,GAAG,EAAE;IACzE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE;QACjB,MAAM,MAAM,GAAG,IAAI,sBAAsB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5D,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,qBAAqB,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;IACpG,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/dist/config.d.ts
CHANGED
|
@@ -136,6 +136,25 @@ export declare function setDefaultSite(siteId: string): void;
|
|
|
136
136
|
*/
|
|
137
137
|
export declare function testConnection(siteId: string): Promise<void>;
|
|
138
138
|
export declare function describeConfigOrigin(): string;
|
|
139
|
+
/**
|
|
140
|
+
* A stable, opaque identity for "which MCP connection is this process serving".
|
|
141
|
+
*
|
|
142
|
+
* Same inputs as describeConfigOrigin (RESPIRA_CONFIG_B64 > RESPIRA_CONFIG_FILE >
|
|
143
|
+
* the default file), plus the RESPIRA_SITES scope filter, because two client
|
|
144
|
+
* entries pointing at the same config file but scoped to different hosts are
|
|
145
|
+
* different connections in every way the customer cares about.
|
|
146
|
+
*
|
|
147
|
+
* Used to namespace ~/.respira/state.json. That file is machine-global: before
|
|
148
|
+
* this, a switch_site made in one Respira connection re-pointed EVERY other
|
|
149
|
+
* Respira connection on the machine at next start, across accounts and clients
|
|
150
|
+
* (ticket 5004a473). Keying the persisted active site by this value keeps a
|
|
151
|
+
* connection's intent inside that connection.
|
|
152
|
+
*
|
|
153
|
+
* The b64 blob carries API tokens, so only the truncated SHA-256 digest ever
|
|
154
|
+
* leaves this function; the raw value is never written to disk or logged.
|
|
155
|
+
* 64 bits of digest is ample for distinguishing a handful of local configs.
|
|
156
|
+
*/
|
|
157
|
+
export declare function configOriginKey(env?: NodeJS.ProcessEnv): string;
|
|
139
158
|
export declare function describeEffectiveConfig(sites: Array<{
|
|
140
159
|
id?: string;
|
|
141
160
|
url?: string;
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import { readFileSync, existsSync, writeFileSync, mkdirSync } from 'fs';
|
|
5
5
|
import { join, dirname } from 'path';
|
|
6
6
|
import { homedir } from 'os';
|
|
7
|
+
import { createHash } from 'node:crypto';
|
|
7
8
|
export const CONFIG_DIR = join(homedir(), '.respira');
|
|
8
9
|
export const CONFIG_FILE = join(CONFIG_DIR, 'config.json');
|
|
9
10
|
/**
|
|
@@ -766,6 +767,45 @@ export function describeConfigOrigin() {
|
|
|
766
767
|
}
|
|
767
768
|
return `This server read its sites from ${expandHomePath('~/.respira/config.json')}. If you edited a different file, or set RESPIRA_CONFIG_B64 in your client entry, this is not the config in effect.`;
|
|
768
769
|
}
|
|
770
|
+
/**
|
|
771
|
+
* A stable, opaque identity for "which MCP connection is this process serving".
|
|
772
|
+
*
|
|
773
|
+
* Same inputs as describeConfigOrigin (RESPIRA_CONFIG_B64 > RESPIRA_CONFIG_FILE >
|
|
774
|
+
* the default file), plus the RESPIRA_SITES scope filter, because two client
|
|
775
|
+
* entries pointing at the same config file but scoped to different hosts are
|
|
776
|
+
* different connections in every way the customer cares about.
|
|
777
|
+
*
|
|
778
|
+
* Used to namespace ~/.respira/state.json. That file is machine-global: before
|
|
779
|
+
* this, a switch_site made in one Respira connection re-pointed EVERY other
|
|
780
|
+
* Respira connection on the machine at next start, across accounts and clients
|
|
781
|
+
* (ticket 5004a473). Keying the persisted active site by this value keeps a
|
|
782
|
+
* connection's intent inside that connection.
|
|
783
|
+
*
|
|
784
|
+
* The b64 blob carries API tokens, so only the truncated SHA-256 digest ever
|
|
785
|
+
* leaves this function; the raw value is never written to disk or logged.
|
|
786
|
+
* 64 bits of digest is ample for distinguishing a handful of local configs.
|
|
787
|
+
*/
|
|
788
|
+
export function configOriginKey(env = process.env) {
|
|
789
|
+
const b64 = env.RESPIRA_CONFIG_B64?.trim();
|
|
790
|
+
const explicitFile = env.RESPIRA_CONFIG_FILE?.trim();
|
|
791
|
+
let source;
|
|
792
|
+
if (b64) {
|
|
793
|
+
source = `b64:${b64}`;
|
|
794
|
+
}
|
|
795
|
+
else if (explicitFile) {
|
|
796
|
+
source = `file:${expandHomePath(explicitFile)}`;
|
|
797
|
+
}
|
|
798
|
+
else {
|
|
799
|
+
source = `file:${CONFIG_FILE}`;
|
|
800
|
+
}
|
|
801
|
+
const scope = (env.RESPIRA_SITES || '')
|
|
802
|
+
.split(',')
|
|
803
|
+
.map((s) => s.trim().toLowerCase())
|
|
804
|
+
.filter(Boolean)
|
|
805
|
+
.sort()
|
|
806
|
+
.join(',');
|
|
807
|
+
return createHash('sha256').update(`${source}\n${scope}`).digest('hex').slice(0, 16);
|
|
808
|
+
}
|
|
769
809
|
export function describeEffectiveConfig(sites) {
|
|
770
810
|
const b64 = process.env.RESPIRA_CONFIG_B64?.trim();
|
|
771
811
|
const explicitFile = process.env.RESPIRA_CONFIG_FILE?.trim();
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts
CHANGED
|
@@ -4,6 +4,38 @@
|
|
|
4
4
|
* Provides tools for AI coding assistants to interact with WordPress sites
|
|
5
5
|
*/
|
|
6
6
|
import type { WordPressSiteConfig } from './types/index.js';
|
|
7
|
+
export type RespiraMcpState = {
|
|
8
|
+
/** Legacy / cross-version compatibility. Prefer active_site_by_config. */
|
|
9
|
+
last_active_site_id?: string;
|
|
10
|
+
/** configOriginKey() of the connection that wrote last_active_site_id. */
|
|
11
|
+
last_active_config?: string;
|
|
12
|
+
/** configOriginKey() -> site id. The authoritative store since 5004a473. */
|
|
13
|
+
active_site_by_config?: Record<string, string>;
|
|
14
|
+
schema_version?: number;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Which site should this connection restore, given the state file contents?
|
|
18
|
+
*
|
|
19
|
+
* Pure so it can be tested without touching the real ~/.respira/state.json.
|
|
20
|
+
*
|
|
21
|
+
* 1. This connection's own namespaced entry always wins.
|
|
22
|
+
* 2. Otherwise fall back to the legacy top-level key ONLY when no other
|
|
23
|
+
* connection has claimed it. A file written before this change has no
|
|
24
|
+
* `last_active_config`, so a single-connection customer upgrading keeps
|
|
25
|
+
* the site they had picked. A file written by another connection is
|
|
26
|
+
* ignored, which is the whole point of the fix.
|
|
27
|
+
* 3. Returning an id is not the same as using it: the caller still requires
|
|
28
|
+
* that the id exists in ITS OWN site map and passes the RESPIRA_SITES
|
|
29
|
+
* filter before restoring, so a stale or foreign id degrades to the
|
|
30
|
+
* configured default rather than routing anywhere unexpected.
|
|
31
|
+
*/
|
|
32
|
+
export declare function pickActiveSiteIdForConfig(state: RespiraMcpState, namespace: string): string | null;
|
|
33
|
+
/**
|
|
34
|
+
* The write half of the namespacing. Returns the patch to persist: the
|
|
35
|
+
* connection's own entry, plus the legacy pair kept in sync so older server
|
|
36
|
+
* versions and the migration path above both stay correct.
|
|
37
|
+
*/
|
|
38
|
+
export declare function applyActiveSiteIdForConfig(state: RespiraMcpState, namespace: string, siteId: string): RespiraMcpState;
|
|
7
39
|
/**
|
|
8
40
|
* v7.2.1: hoist plugin-side dropped-styling warnings to the TOP of a build
|
|
9
41
|
* write result so the agent sees them before it inspects anything else.
|
|
@@ -51,6 +83,12 @@ export declare class RespiraWordPressServer {
|
|
|
51
83
|
private lastSiteRefreshAt;
|
|
52
84
|
/** Dedupe concurrent self-heals so parallel list_sites calls share one fetch. */
|
|
53
85
|
private siteRefreshInFlight;
|
|
86
|
+
/**
|
|
87
|
+
* 5004a473: key under which this connection's active site is persisted in
|
|
88
|
+
* the machine-global ~/.respira/state.json. Derived from the config origin,
|
|
89
|
+
* so a switch_site in another connection can never re-point this one.
|
|
90
|
+
*/
|
|
91
|
+
private readonly stateNamespace;
|
|
54
92
|
private static readonly MCP_SERVER_VERSION;
|
|
55
93
|
/**
|
|
56
94
|
* Normalize a tool name: respira_* → wordpress_* for switch dispatch.
|
|
@@ -177,8 +215,11 @@ export declare class RespiraWordPressServer {
|
|
|
177
215
|
* after the user notices the wrong page changed. C.J. 2026-05-29 reported
|
|
178
216
|
* exactly this ("the token for the new site is resolving to the first one").
|
|
179
217
|
*
|
|
180
|
-
*
|
|
181
|
-
*
|
|
218
|
+
* Explicit-site_id calls get no notice. Writes always get one. Reads get one
|
|
219
|
+
* only for the small DEFAULT_SITE_NOTICE_READ_TOOLS allowlist — the calls that
|
|
220
|
+
* report site identity or list a site's content, where answering from the
|
|
221
|
+
* wrong site is invisible (ticket 5004a473). Every other read stays silent so
|
|
222
|
+
* the notice keeps its signal.
|
|
182
223
|
*/
|
|
183
224
|
private buildDefaultSiteRoutingNotice;
|
|
184
225
|
/**
|