@cyanheads/libofcongress-mcp-server 0.2.2 → 0.2.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/AGENTS.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Developer Protocol
2
2
 
3
3
  **Server:** libofcongress-mcp-server
4
- **Version:** 0.2.2
4
+ **Version:** 0.2.3
5
5
  **Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) `^0.9.9`
6
6
  **Engines:** Bun ≥1.3.0, Node ≥24.0.0
7
7
  **MCP SDK:** `@modelcontextprotocol/sdk` ^1.29.0
@@ -113,7 +113,7 @@ import { z } from '@cyanheads/mcp-ts-core';
113
113
  import { parseEnvConfig } from '@cyanheads/mcp-ts-core/config';
114
114
 
115
115
  const ServerConfigSchema = z.object({
116
- userAgent: z.string().default('libofcongress-mcp-server/0.2.2').describe('User-Agent header for LOC API requests.'),
116
+ userAgent: z.string().default('libofcongress-mcp-server/0.2.3').describe('User-Agent header for LOC API requests.'),
117
117
  requestDelayMs: z.coerce.number().default(3100).describe('Delay in ms between LOC API requests.'),
118
118
  });
119
119
 
package/CLAUDE.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # Developer Protocol
2
2
 
3
3
  **Server:** libofcongress-mcp-server
4
- **Version:** 0.2.2
4
+ **Version:** 0.2.3
5
5
  **Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) `^0.9.9`
6
6
  **Engines:** Bun ≥1.3.0, Node ≥24.0.0
7
7
  **MCP SDK:** `@modelcontextprotocol/sdk` ^1.29.0
@@ -113,7 +113,7 @@ import { z } from '@cyanheads/mcp-ts-core';
113
113
  import { parseEnvConfig } from '@cyanheads/mcp-ts-core/config';
114
114
 
115
115
  const ServerConfigSchema = z.object({
116
- userAgent: z.string().default('libofcongress-mcp-server/0.2.2').describe('User-Agent header for LOC API requests.'),
116
+ userAgent: z.string().default('libofcongress-mcp-server/0.2.3').describe('User-Agent header for LOC API requests.'),
117
117
  requestDelayMs: z.coerce.number().default(3100).describe('Delay in ms between LOC API requests.'),
118
118
  });
119
119
 
package/Dockerfile CHANGED
@@ -1,24 +1,24 @@
1
1
  # ==============================================================================
2
2
  # Build Stage
3
3
  #
4
- # Uses Node.js to compile TypeScript (tsx requires Node; Bun 1.3 intercepts tsx
5
- # and runs it natively, which breaks tsx's CJS compatibility shim on Linux).
4
+ # This stage installs all dependencies (including dev), builds the TypeScript
5
+ # source code into JavaScript, and prepares the production assets.
6
6
  # ==============================================================================
7
- FROM node:24-slim AS build
7
+ FROM oven/bun:1.3 AS build
8
8
 
9
9
  WORKDIR /usr/src/app
10
10
 
11
- # Copy dependency manifests
11
+ # Copy dependency manifests for optimized layer caching
12
12
  COPY package.json bun.lock ./
13
13
 
14
- # Install all dependencies using npm (bun.lock is readable by npm for lockfile-aware install)
15
- RUN npm install --include=dev
14
+ # Install all dependencies (including dev dependencies for building)
15
+ RUN bun install --frozen-lockfile
16
16
 
17
17
  # Copy the rest of the source code
18
18
  COPY . .
19
19
 
20
20
  # Build the application
21
- RUN npx tsx scripts/build.ts
21
+ RUN bun run build
22
22
 
23
23
 
24
24
  # ==============================================================================
@@ -34,9 +34,10 @@ WORKDIR /usr/src/app
34
34
  ENV NODE_ENV=production
35
35
 
36
36
  # OCI image metadata (https://github.com/opencontainers/image-spec/blob/main/annotations.md)
37
- LABEL org.opencontainers.image.title="libofcongress-mcp-server"
38
- LABEL org.opencontainers.image.description=""
37
+ LABEL org.opencontainers.image.title="@cyanheads/libofcongress-mcp-server"
38
+ LABEL org.opencontainers.image.description="Search LOC digital collections, browse Chronicling America newspapers with full OCR text, and look up LC Subject Headings via MCP."
39
39
  LABEL org.opencontainers.image.licenses="Apache-2.0"
40
+ LABEL org.opencontainers.image.source="https://github.com/cyanheads/libofcongress-mcp-server"
40
41
 
41
42
  # Copy dependency manifests
42
43
  COPY package.json bun.lock ./
package/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
 
8
8
  <div align="center">
9
9
 
10
- [![Version](https://img.shields.io/badge/Version-0.2.2-blue.svg?style=flat-square)](./CHANGELOG.md) [![License](https://img.shields.io/badge/License-Apache%202.0-orange.svg?style=flat-square)](./LICENSE) [![Docker](https://img.shields.io/badge/Docker-ghcr.io-2496ED?style=flat-square&logo=docker&logoColor=white)](https://github.com/users/cyanheads/packages/container/package/libofcongress-mcp-server) [![MCP SDK](https://img.shields.io/badge/MCP%20SDK-^1.29.0-green.svg?style=flat-square)](https://modelcontextprotocol.io/) [![npm](https://img.shields.io/npm/v/%40cyanheads%2Flibofcongress-mcp-server?style=flat-square&logo=npm&logoColor=white)](https://www.npmjs.com/package/@cyanheads/libofcongress-mcp-server) [![TypeScript](https://img.shields.io/badge/TypeScript-^5.9.3-3178C6.svg?style=flat-square)](https://www.typescriptlang.org/) [![Bun](https://img.shields.io/badge/Bun-v1.3.11-blueviolet.svg?style=flat-square)](https://bun.sh/)
10
+ [![Version](https://img.shields.io/badge/Version-0.2.3-blue.svg?style=flat-square)](./CHANGELOG.md) [![License](https://img.shields.io/badge/License-Apache%202.0-orange.svg?style=flat-square)](./LICENSE) [![Docker](https://img.shields.io/badge/Docker-ghcr.io-2496ED?style=flat-square&logo=docker&logoColor=white)](https://github.com/users/cyanheads/packages/container/package/libofcongress-mcp-server) [![MCP SDK](https://img.shields.io/badge/MCP%20SDK-^1.29.0-green.svg?style=flat-square)](https://modelcontextprotocol.io/) [![npm](https://img.shields.io/npm/v/%40cyanheads%2Flibofcongress-mcp-server?style=flat-square&logo=npm&logoColor=white)](https://www.npmjs.com/package/@cyanheads/libofcongress-mcp-server) [![TypeScript](https://img.shields.io/badge/TypeScript-^5.9.3-3178C6.svg?style=flat-square)](https://www.typescriptlang.org/) [![Bun](https://img.shields.io/badge/Bun-v1.3.11-blueviolet.svg?style=flat-square)](https://bun.sh/)
11
11
 
12
12
  </div>
13
13
 
@@ -0,0 +1,18 @@
1
+ ---
2
+ summary: "Drop tsx devDependency, align all scripts to bun-native execution, revert Dockerfile build stage from node:24-slim to oven/bun:1.3."
3
+ breaking: false
4
+ security: false
5
+ ---
6
+
7
+ # 0.2.3 — 2026-05-24
8
+
9
+ ## Changed
10
+
11
+ - **Build scripts** switched from `tsx` invocation to `bun run scripts/*.ts` across all `package.json` scripts (`build`, `rebuild`, `clean`, `devcheck`, `tree`, `list-skills`, `lint:mcp`, `lint:packaging`, `changelog:build`, `changelog:check`).
12
+ - **`test` script** changed from `vitest run` to `bunx vitest run`; `start:stdio` and `start:http` changed from `node dist/index.js` to `bun ./dist/index.js`.
13
+ - **Dockerfile build stage** reverted from `node:24-slim` (with `npm install` + `npx tsx`) back to `oven/bun:1.3` with `bun install --frozen-lockfile` and `bun run build`.
14
+ - **`funding` block** added to `package.json` (GitHub Sponsors + Buy Me a Coffee).
15
+
16
+ ## Removed
17
+
18
+ - **`tsx`** removed from `devDependencies` — no longer needed now that all scripts run natively under Bun.
@@ -7,7 +7,7 @@ import { parseEnvConfig } from '@cyanheads/mcp-ts-core/config';
7
7
  const ServerConfigSchema = z.object({
8
8
  userAgent: z
9
9
  .string()
10
- .default('libofcongress-mcp-server/0.2.2')
10
+ .default('libofcongress-mcp-server/0.2.3')
11
11
  .describe('User-Agent header sent with LOC API requests. LOC recommends a descriptive value for polite access.'),
12
12
  requestDelayMs: z.coerce
13
13
  .number()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cyanheads/libofcongress-mcp-server",
3
- "version": "0.2.2",
3
+ "version": "0.2.3",
4
4
  "mcpName": "io.github.cyanheads/libofcongress-mcp-server",
5
5
  "description": "Search LOC digital collections, browse Chronicling America newspapers with full OCR text, and look up LC Subject Headings via MCP. STDIO or Streamable HTTP.",
6
6
  "type": "module",
@@ -20,24 +20,23 @@
20
20
  "server.json"
21
21
  ],
22
22
  "scripts": {
23
- "build": "tsx scripts/build.ts",
24
- "rebuild": "tsx scripts/clean.ts && tsx scripts/build.ts",
25
- "clean": "tsx scripts/clean.ts",
26
- "devcheck": "tsx scripts/devcheck.ts",
23
+ "build": "bun run scripts/build.ts",
24
+ "rebuild": "bun run scripts/clean.ts && bun run build",
25
+ "clean": "bun run scripts/clean.ts",
26
+ "devcheck": "bun run scripts/devcheck.ts",
27
27
  "audit:refresh": "rm -f bun.lock && bun install && bun audit",
28
- "tree": "tsx scripts/tree.ts",
29
- "list-skills": "tsx scripts/list-skills.ts",
28
+ "tree": "bun run scripts/tree.ts",
29
+ "list-skills": "bun run scripts/list-skills.ts",
30
30
  "format": "biome check --write --unsafe .",
31
- "lint:mcp": "tsx scripts/lint-mcp.ts",
32
- "lint:packaging": "tsx scripts/lint-packaging.ts",
31
+ "lint:mcp": "bun run scripts/lint-mcp.ts",
32
+ "lint:packaging": "bun run scripts/lint-packaging.ts",
33
33
  "publish-mcp": "mcp-publisher login github -token \"$(security find-generic-password -a \"$USER\" -s mcp-publisher-github-pat -w)\" && mcp-publisher publish",
34
34
  "bundle": "bun run build && npx -y @anthropic-ai/mcpb pack . dist/libofcongress-mcp-server.mcpb",
35
- "changelog:build": "tsx scripts/build-changelog.ts",
36
- "changelog:check": "tsx scripts/build-changelog.ts --check",
37
- "test": "vitest run",
38
- "start": "node dist/index.js",
39
- "start:stdio": "MCP_TRANSPORT_TYPE=stdio node dist/index.js",
40
- "start:http": "MCP_TRANSPORT_TYPE=http node dist/index.js"
35
+ "changelog:build": "bun run scripts/build-changelog.ts",
36
+ "changelog:check": "bun run scripts/build-changelog.ts --check",
37
+ "test": "bunx vitest run",
38
+ "start:stdio": "MCP_TRANSPORT_TYPE=stdio bun ./dist/index.js",
39
+ "start:http": "MCP_TRANSPORT_TYPE=http bun ./dist/index.js"
41
40
  },
42
41
  "keywords": [
43
42
  "mcp",
@@ -65,6 +64,16 @@
65
64
  "type": "git",
66
65
  "url": "git+https://github.com/cyanheads/libofcongress-mcp-server.git"
67
66
  },
67
+ "funding": [
68
+ {
69
+ "type": "github",
70
+ "url": "https://github.com/sponsors/cyanheads"
71
+ },
72
+ {
73
+ "type": "buy_me_a_coffee",
74
+ "url": "https://www.buymeacoffee.com/cyanheads"
75
+ }
76
+ ],
68
77
  "license": "Apache-2.0",
69
78
  "packageManager": "bun@1.3.11",
70
79
  "engines": {
@@ -85,7 +94,6 @@
85
94
  "depcheck": "^1.4.7",
86
95
  "ignore": "^7.0.5",
87
96
  "tsc-alias": "^1.8.16",
88
- "tsx": "^4.19.0",
89
97
  "typescript": "^5.9.3",
90
98
  "vitest": "^4.1.0"
91
99
  }
package/server.json CHANGED
@@ -6,14 +6,14 @@
6
6
  "url": "https://github.com/cyanheads/libofcongress-mcp-server",
7
7
  "source": "github"
8
8
  },
9
- "version": "0.2.2",
9
+ "version": "0.2.3",
10
10
  "packages": [
11
11
  {
12
12
  "registryType": "npm",
13
13
  "registryBaseUrl": "https://registry.npmjs.org",
14
14
  "identifier": "@cyanheads/libofcongress-mcp-server",
15
15
  "runtimeHint": "bun",
16
- "version": "0.2.2",
16
+ "version": "0.2.3",
17
17
  "packageArguments": [
18
18
  {
19
19
  "type": "positional",
@@ -30,7 +30,7 @@
30
30
  "description": "User-Agent header sent with LOC API requests. LOC recommends a descriptive value for polite access.",
31
31
  "format": "string",
32
32
  "isRequired": false,
33
- "default": "libofcongress-mcp-server/0.2.2"
33
+ "default": "libofcongress-mcp-server/0.2.3"
34
34
  },
35
35
  {
36
36
  "name": "LOC_REQUEST_DELAY_MS",
@@ -56,7 +56,7 @@
56
56
  "registryBaseUrl": "https://registry.npmjs.org",
57
57
  "identifier": "@cyanheads/libofcongress-mcp-server",
58
58
  "runtimeHint": "bun",
59
- "version": "0.2.2",
59
+ "version": "0.2.3",
60
60
  "packageArguments": [
61
61
  {
62
62
  "type": "positional",
@@ -73,7 +73,7 @@
73
73
  "description": "User-Agent header sent with LOC API requests. LOC recommends a descriptive value for polite access.",
74
74
  "format": "string",
75
75
  "isRequired": false,
76
- "default": "libofcongress-mcp-server/0.2.2"
76
+ "default": "libofcongress-mcp-server/0.2.3"
77
77
  },
78
78
  {
79
79
  "name": "LOC_REQUEST_DELAY_MS",