@aborruso/ckan-mcp-server 0.4.59 → 0.4.60

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 (3) hide show
  1. package/LOG.md +4 -0
  2. package/dist/index.js +17 -9
  3. package/package.json +1 -1
package/LOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # LOG
2
2
 
3
+ ## 2026-03-04
4
+
5
+ - fix(http): add AbortController 30s timeout to Workers fetch — prevents hang when CKAN server is slow (root cause of Worker timeout errors)
6
+
3
7
  ## 2026-03-03 (v0.4.59)
4
8
 
5
9
  - packaging: add DXT one-click install support — `manifest.json` + `npm run pack:dxt` script produces `ckan-mcp-server.dxt` for Claude Desktop
package/dist/index.js CHANGED
@@ -368,14 +368,22 @@ async function makeCkanRequest(serverUrl, action, params = {}) {
368
368
  searchParams.set(key, String(value));
369
369
  }
370
370
  const fetchUrl = searchParams.toString() ? `${url}?${searchParams.toString()}` : url;
371
- const response = await fetch(fetchUrl, {
372
- method: "GET",
373
- headers: {
374
- Accept: "application/json, text/plain, */*",
375
- "Accept-Encoding": "identity",
376
- "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
377
- }
378
- });
371
+ const controller = new AbortController();
372
+ const timeoutId = setTimeout(() => controller.abort(), 3e4);
373
+ let response;
374
+ try {
375
+ response = await fetch(fetchUrl, {
376
+ method: "GET",
377
+ signal: controller.signal,
378
+ headers: {
379
+ Accept: "application/json, text/plain, */*",
380
+ "Accept-Encoding": "identity",
381
+ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
382
+ }
383
+ });
384
+ } finally {
385
+ clearTimeout(timeoutId);
386
+ }
379
387
  if (!response.ok) {
380
388
  throw new Error(`CKAN API error (${response.status}): ${response.statusText}`);
381
389
  }
@@ -4363,7 +4371,7 @@ var registerAllPrompts = (server2) => {
4363
4371
  function createServer() {
4364
4372
  return new McpServer({
4365
4373
  name: "ckan-mcp-server",
4366
- version: "0.4.53"
4374
+ version: "0.4.60"
4367
4375
  });
4368
4376
  }
4369
4377
  function registerAll(server2) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aborruso/ckan-mcp-server",
3
- "version": "0.4.59",
3
+ "version": "0.4.60",
4
4
  "description": "MCP server for interacting with CKAN open data portals",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",