@pipeworx/mcp-sciencebase 0.1.2 → 0.1.3

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 CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  USGS ScienceBase catalog MCP.
4
4
 
5
- Part of [Pipeworx](https://pipeworx.io) — an MCP gateway connecting AI agents to 1683+ live data sources.
5
+ Part of [Pipeworx](https://pipeworx.io) — an MCP gateway connecting AI agents to 1684+ live data sources.
6
6
 
7
7
  ## Tools
8
8
 
@@ -56,7 +56,7 @@ directly, instead of just this one's:
56
56
  }
57
57
  ```
58
58
 
59
- Both URLs reach the same gateway and the same 1683+ data sources. The
59
+ Both URLs reach the same gateway and the same 1684+ data sources. The
60
60
  only difference is which pack's tools are listed **directly**; `ask_pipeworx`
61
61
  reaches all of them from either one.
62
62
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pipeworx/mcp-sciencebase",
3
- "version": "0.1.2",
3
+ "version": "0.1.3",
4
4
  "description": "USGS ScienceBase catalog MCP.",
5
5
  "type": "module",
6
6
  "main": "src/index.ts",
@@ -26,7 +26,7 @@
26
26
  "@cloudflare/workers-types": "^4.20260405.1"
27
27
  },
28
28
  "pipeworx": {
29
- "sourceHash": "v1-533583ef0345435f5faf58f916ac958f9e363b0528c84cf8152f6827d0710aff",
30
- "sourceCommit": "6fe8fb3e01138dfc4ebe7d5c246503aab9278d06"
29
+ "sourceHash": "v1-b2e2f72f448fb7906515f7b7bdd0567372bcd833e6a8cac5c6cb9303c906689a",
30
+ "sourceCommit": "fb13c3bcac104b099040ae8d7d93cb800d570afb"
31
31
  }
32
32
  }
package/server.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "name": "io.github.pipeworx-io/sciencebase",
4
4
  "title": "Sciencebase",
5
5
  "description": "USGS ScienceBase catalog MCP.",
6
- "version": "0.1.2",
6
+ "version": "0.1.3",
7
7
  "websiteUrl": "https://pipeworx.io/packs/sciencebase",
8
8
  "repository": {
9
9
  "url": "https://github.com/pipeworx-io/mcp-sciencebase",
package/src/index.ts CHANGED
@@ -859,7 +859,21 @@ async function sbGet(path: string, params: Record<string, string>): Promise<unkn
859
859
  // A 200 that is not JSON is the catalog answering with something other than
860
860
  // its API — report the shape, never let it surface as a parse error.
861
861
  return {
862
- __error: `ScienceBase returned HTTP ${res.status} with a non-JSON body (${body.slice(0, 120)})`,
862
+ // `upstream_down:` is a CLASS TOKEN the gateway strips and classifies on
863
+ // (error-class.ts). Without it this booked plain `error`, which means
864
+ // PIPEWORX BROKE — and a catalog answering HTML where it promises JSON is
865
+ // the upstream's fault, not ours.
866
+ //
867
+ // It also makes the two remaining failure paths tellable apart in
868
+ // telemetry, which is why it is worth the token rather than just better
869
+ // prose. Measured 2026-09-26: `get_item` showed 2 external `error` events
870
+ // (09-22, 09-25) and they were read as "the not-found fix did not land".
871
+ // They are not misses — a miss returns `found:false` above and books
872
+ // `user_error`, verified live. They are THIS branch. With blob5 content
873
+ // redacted there was no way to see that from the class alone, and the
874
+ // callers are in regions where USGS may challenge differently: three
875
+ // probes from here returned clean JSON, so it is not reproducible locally.
876
+ __error: `upstream_down: ScienceBase returned HTTP ${res.status} with a non-JSON body (${body.slice(0, 120)})`,
863
877
  };
864
878
  }
865
879
  }
package/src/server.ts CHANGED
@@ -9,7 +9,7 @@ import { CallToolRequestSchema, ListToolsRequestSchema } from '@modelcontextprot
9
9
  import pack from './index.js';
10
10
 
11
11
  const server = new Server(
12
- { name: '@pipeworx/mcp-sciencebase', version: '0.1.2' },
12
+ { name: '@pipeworx/mcp-sciencebase', version: '0.1.3' },
13
13
  { capabilities: { tools: {} } },
14
14
  );
15
15