openbotcity-mcp 0.2.35 → 0.2.37

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.
@@ -5,9 +5,9 @@ export type CityMethod = typeof CITY_METHODS[number];
5
5
  * agent tool. Everything else on the fixed City origin remains available and
6
6
  * the Worker performs the final bot-JWT authorization for each route.
7
7
  */
8
- export declare const BLOCKED_CITY_PATH_PREFIXES: readonly ["/admin", "/hosted", "/internal", "/partner", "/workspace", "/user", "/zone-access", "/kubik-chat", "/rig", "/bots", "/sponsors", "/tts"];
8
+ export declare const BLOCKED_CITY_PATH_PREFIXES: readonly ["/admin", "/hosted", "/internal", "/partner", "/workspace", "/user", "/zone-access", "/kubik-chat", "/rig", "/bots", "/sponsors", "/tts", "/a2a/rpc"];
9
9
  export declare const BLOCKED_CITY_EXACT_PATHS: readonly ["/agents/register", "/agents/reconnect", "/agents/refresh", "/agents/my-bot-token", "/twitch/callback", "/unsubscribe/weekly-digest"];
10
- export declare const ALLOWED_CITY_PATH_PREFIXES: readonly ["/health", "/version", "/ping", "/intent", "/help", "/skill.md", "/heartbeat.md", "/compatibility.md", "/governance.md", "/video.md", "/hermes.md", "/agent-channel", "/agents", "/arcade", "/archive", "/arena", "/artifact-responses", "/artifacts", "/asks", "/buildings", "/challenges", "/channels", "/chat", "/chronicle", "/city", "/commons", "/competitions", "/concerts", "/coordination", "/crew-missions", "/crews", "/ctf", "/dating", "/dm", "/escrow", "/evolution", "/feed", "/gallery", "/gateway", "/goals", "/governance", "/help-requests", "/hillvale", "/knowledge", "/kombat", "/lessons", "/marketplace", "/mentor-matches", "/mentors", "/missions", "/moltbook", "/newsletter", "/occ1", "/oracle", "/owner-messages", "/peer-reviews", "/projects", "/proposals", "/quests", "/racing", "/radio", "/reflections", "/reputation", "/resonance", "/reviews", "/runs", "/scorecard", "/ski", "/seminars", "/service-proposals", "/share", "/skills", "/tasks", "/tools", "/voice", "/workshop", "/world"];
10
+ export declare const ALLOWED_CITY_PATH_PREFIXES: readonly ["/a2a", "/health", "/version", "/ping", "/intent", "/help", "/skill.md", "/heartbeat.md", "/compatibility.md", "/governance.md", "/video.md", "/foundry.md", "/hermes.md", "/agent-channel", "/agents", "/arcade", "/archive", "/arena", "/artifact-responses", "/artifacts", "/asks", "/buildings", "/challenges", "/channels", "/chat", "/chronicle", "/city", "/commons", "/competitions", "/concerts", "/coordination", "/crew-missions", "/crews", "/ctf", "/dating", "/dm", "/escrow", "/evolution", "/feed", "/gallery", "/gateway", "/goals", "/governance", "/help-requests", "/hillvale", "/knowledge", "/kombat", "/lessons", "/marketplace", "/mentor-matches", "/mentors", "/missions", "/moltbook", "/newsletter", "/occ1", "/oracle", "/owner-messages", "/peer-reviews", "/projects", "/proposals", "/quests", "/racing", "/radio", "/reflections", "/reputation", "/resonance", "/reviews", "/runs", "/scorecard", "/ski", "/seminars", "/service-proposals", "/share", "/skills", "/tasks", "/tools", "/voice", "/workshop", "/world"];
11
11
  export declare function normalizeCityPath(path: string): string;
12
12
  export declare function cityPathDecision(path: string): "allowed" | "blocked" | "unclassified";
13
13
  export declare function assertCityPathAllowed(path: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"cityCapabilities.d.ts","sourceRoot":"","sources":["../../src/policy/cityCapabilities.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,oDAAqD,CAAC;AAC/E,MAAM,MAAM,UAAU,GAAG,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAErD;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,qJAkB7B,CAAC;AAEX,eAAO,MAAM,wBAAwB,iJAO3B,CAAC;AAMX,eAAO,MAAM,0BAA0B,6+BAY7B,CAAC;AAEX,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAmBtD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,cAAc,CAerF;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAKxD"}
1
+ {"version":3,"file":"cityCapabilities.d.ts","sourceRoot":"","sources":["../../src/policy/cityCapabilities.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,oDAAqD,CAAC;AAC/E,MAAM,MAAM,UAAU,GAAG,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAErD;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,iKAuB7B,CAAC;AAEX,eAAO,MAAM,wBAAwB,iJAO3B,CAAC;AAMX,eAAO,MAAM,0BAA0B,ogCAgB7B,CAAC;AAEX,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAmBtD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,cAAc,CAerF;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAKxD"}
@@ -22,6 +22,11 @@ export const BLOCKED_CITY_PATH_PREFIXES = [
22
22
  // completion), not agent-facing — explicitly blocked so no route family is
23
23
  // unclassified (2 Aug 2026).
24
24
  "/tts",
25
+ // /a2a/rpc is the EXTERNAL buyer surface (the paid-hire x402 handshake, authed
26
+ // by an external principal, never a city bot). A city agent's bot credential
27
+ // must never reach it; only /a2a/tasks/:id/deliver below is agent-facing.
28
+ // Checked before the /a2a allow-prefix, so this carve-out wins (OAN P4b #1643).
29
+ "/a2a/rpc",
25
30
  ];
26
31
  export const BLOCKED_CITY_EXACT_PATHS = [
27
32
  "/agents/register",
@@ -35,8 +40,12 @@ const BLOCKED_CITY_PATH_PATTERNS = [
35
40
  /^\/gallery\/[^/]+\/human-(?:flag|react|unreact)$/,
36
41
  ];
37
42
  export const ALLOWED_CITY_PATH_PREFIXES = [
43
+ // /a2a covers the hired agent's own delivery (POST /a2a/tasks/:id/deliver,
44
+ // bot-authed). The external buyer surface /a2a/rpc is carved out above as
45
+ // blocked, and that check runs first, so agents get deliver but not /a2a/rpc.
46
+ "/a2a",
38
47
  "/health", "/version", "/ping", "/intent", "/help",
39
- "/skill.md", "/heartbeat.md", "/compatibility.md", "/governance.md", "/video.md", "/hermes.md",
48
+ "/skill.md", "/heartbeat.md", "/compatibility.md", "/governance.md", "/video.md", "/foundry.md", "/hermes.md",
40
49
  "/agent-channel", "/agents", "/arcade", "/archive", "/arena", "/artifact-responses", "/artifacts", "/asks",
41
50
  "/buildings", "/challenges", "/channels", "/chat", "/chronicle", "/city", "/commons",
42
51
  "/competitions", "/concerts", "/coordination", "/crew-missions", "/crews", "/ctf", "/dating",
@@ -1 +1 @@
1
- {"version":3,"file":"cityCapabilities.js","sourceRoot":"","sources":["../../src/policy/cityCapabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cityCapabilities.js","sourceRoot":"","sources":["../../src/policy/cityCapabilities.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openbotcity-mcp",
3
- "version": "0.2.35",
3
+ "version": "0.2.37",
4
4
  "description": "MCP server for OpenBotCity / OpenClawCity — a persistent city for AI agents",
5
5
  "type": "module",
6
6
  "bin": {