@cyanheads/college-scorecard-mcp-server 0.1.3 → 0.1.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/CLAUDE.md +1 -1
- package/Dockerfile +5 -6
- package/README.md +7 -1
- package/changelog/0.1.x/0.1.3.md +11 -0
- package/changelog/0.1.x/0.1.4.md +25 -0
- package/package.json +30 -17
- package/server.json +9 -3
package/CLAUDE.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Developer Protocol
|
|
2
2
|
|
|
3
3
|
**Server:** college-scorecard-mcp-server
|
|
4
|
-
**Version:** 0.1.
|
|
4
|
+
**Version:** 0.1.4
|
|
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
|
package/Dockerfile
CHANGED
|
@@ -4,23 +4,21 @@
|
|
|
4
4
|
# This stage installs all dependencies (including dev), builds the TypeScript
|
|
5
5
|
# source code into JavaScript, and prepares the production assets.
|
|
6
6
|
# ==============================================================================
|
|
7
|
-
FROM
|
|
7
|
+
FROM oven/bun:1.3 AS build
|
|
8
8
|
|
|
9
9
|
WORKDIR /usr/src/app
|
|
10
10
|
|
|
11
11
|
# Copy dependency manifests for optimized layer caching
|
|
12
12
|
COPY package.json bun.lock ./
|
|
13
13
|
|
|
14
|
-
# Install all dependencies (including dev dependencies for building)
|
|
15
|
-
|
|
16
|
-
# required by tsx) correctly for the container's target architecture.
|
|
17
|
-
RUN npm install
|
|
14
|
+
# Install all dependencies (including dev dependencies for building)
|
|
15
|
+
RUN bun install --frozen-lockfile
|
|
18
16
|
|
|
19
17
|
# Copy the rest of the source code
|
|
20
18
|
COPY . .
|
|
21
19
|
|
|
22
20
|
# Build the application
|
|
23
|
-
RUN
|
|
21
|
+
RUN bun run build
|
|
24
22
|
|
|
25
23
|
|
|
26
24
|
# ==============================================================================
|
|
@@ -42,6 +40,7 @@ ENV NODE_ENV=production
|
|
|
42
40
|
LABEL org.opencontainers.image.title="college-scorecard-mcp-server"
|
|
43
41
|
LABEL org.opencontainers.image.description="Search, compare, and analyze U.S. college data — costs, earnings, programs, and outcomes — via MCP."
|
|
44
42
|
LABEL org.opencontainers.image.licenses="Apache-2.0"
|
|
43
|
+
LABEL org.opencontainers.image.source="https://github.com/cyanheads/college-scorecard-mcp-server"
|
|
45
44
|
|
|
46
45
|
# Copy dependency manifests
|
|
47
46
|
COPY package.json bun.lock ./
|
package/README.md
CHANGED
|
@@ -7,7 +7,13 @@
|
|
|
7
7
|
|
|
8
8
|
<div align="center">
|
|
9
9
|
|
|
10
|
-
[](./CHANGELOG.md) [](./LICENSE) [](https://github.com/users/cyanheads/packages/container/package/college-scorecard-mcp-server) [](https://modelcontextprotocol.io/) [](https://www.npmjs.com/package/@cyanheads/college-scorecard-mcp-server) [](https://www.typescriptlang.org/) [](https://bun.sh/)
|
|
11
|
+
|
|
12
|
+
</div>
|
|
13
|
+
|
|
14
|
+
<div align="center">
|
|
15
|
+
|
|
16
|
+
[](https://github.com/cyanheads/college-scorecard-mcp-server/releases/latest/download/college-scorecard-mcp-server.mcpb) [](https://cursor.com/en/install-mcp?name=college-scorecard-mcp-server&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBjeWFuaGVhZHMvY29sbGVnZS1zY29yZWNhcmQtbWNwLXNlcnZlciJdLCJlbnYiOnsiU0NPUkVDQVJEX0FQSV9LRVkiOiJ5b3VyLWFwaS1rZXkifX0=) [](https://vscode.dev/redirect?url=vscode:mcp/install?%7B%22name%22%3A%22college-scorecard-mcp-server%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40cyanheads%2Fcollege-scorecard-mcp-server%22%5D%2C%22env%22%3A%7B%22SCORECARD_API_KEY%22%3A%22your-api-key%22%7D%7D)
|
|
11
17
|
|
|
12
18
|
[](https://www.npmjs.com/package/@cyanheads/mcp-ts-core)
|
|
13
19
|
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Dockerfile build stage switched to node:24-slim for tsx compatibility."
|
|
3
|
+
breaking: false
|
|
4
|
+
security: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# 0.1.3 — 2026-05-25
|
|
8
|
+
|
|
9
|
+
## Fixed
|
|
10
|
+
|
|
11
|
+
- **Dockerfile build stage** switched to `node:24-slim` so `tsx` resolves correctly when running `npm run build` inside the container. `oven/bun:1.3` doesn't include Node.js utilities needed by tsx during the build phase.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "Package metadata alignment: author, funding, FUNDING.yml, README install badges, Dockerfile build stage, manifest.json, server.json, scripts use bun run."
|
|
3
|
+
breaking: false
|
|
4
|
+
security: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# 0.1.4 — 2026-05-26
|
|
8
|
+
|
|
9
|
+
## Added
|
|
10
|
+
|
|
11
|
+
- **`.github/FUNDING.yml`** — GitHub Sponsors and Buy Me a Coffee links for `cyanheads`.
|
|
12
|
+
- **README install badges** — Install in Claude Desktop (`.mcpb` download), Install in Cursor (deeplink), Install in VS Code (deeplink) added to the README header.
|
|
13
|
+
- **README badge row** — Docker (ghcr.io), MCP SDK, and npm badges added alongside Version, License, TypeScript, and Bun.
|
|
14
|
+
- **`package.json` `author`** field: `cyanheads <casey@caseyjhand.com>`.
|
|
15
|
+
- **`package.json` `funding`** array: GitHub Sponsors and Buy Me a Coffee URLs.
|
|
16
|
+
- **`package.json` `bugs`** and **`homepage`** fields.
|
|
17
|
+
- **`manifest.json`** `description`, `author`, `repository`, `homepage`, `license` fields; `user_config.scorecard_api_key` entry for Claude Desktop install UX.
|
|
18
|
+
- **`server.json` stdio `environmentVariables`** — `SCORECARD_API_KEY` added as required.
|
|
19
|
+
|
|
20
|
+
## Changed
|
|
21
|
+
|
|
22
|
+
- **`package.json` scripts** — all script commands use `bun run scripts/<name>.ts` pattern (was `tsx scripts/<name>.ts`); `start:stdio` / `start:http` use `bun ./dist/index.js` (was `node`); `bundle` uses `bun run build` (was `npm run build`); `test` uses `bunx vitest run`.
|
|
23
|
+
- **Dockerfile build stage** — switched from `node:24-slim` to `oven/bun:1.3` so `bun run build` resolves correctly; added `org.opencontainers.image.source` OCI label.
|
|
24
|
+
- **`manifest.json` version** — corrected to `0.1.3` (was `0.1.2`); now `0.1.4`.
|
|
25
|
+
- **`tsx` devDependency** removed — no longer needed after build scripts switched to `bun run`.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cyanheads/college-scorecard-mcp-server",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "Search, compare, and analyze U.S. college data — costs, earnings, programs, and outcomes — via MCP. STDIO or Streamable HTTP.",
|
|
5
5
|
"mcpName": "io.github.cyanheads/college-scorecard-mcp-server",
|
|
6
6
|
"type": "module",
|
|
@@ -19,23 +19,22 @@
|
|
|
19
19
|
"server.json"
|
|
20
20
|
],
|
|
21
21
|
"scripts": {
|
|
22
|
-
"build": "
|
|
23
|
-
"rebuild": "
|
|
24
|
-
"clean": "
|
|
25
|
-
"devcheck": "
|
|
22
|
+
"build": "bun run scripts/build.ts",
|
|
23
|
+
"rebuild": "bun run scripts/clean.ts && bun run build",
|
|
24
|
+
"clean": "bun run scripts/clean.ts",
|
|
25
|
+
"devcheck": "bun run scripts/devcheck.ts",
|
|
26
26
|
"audit:refresh": "rm -f bun.lock && bun install && bun audit",
|
|
27
|
-
"tree": "
|
|
28
|
-
"list-skills": "
|
|
27
|
+
"tree": "bun run scripts/tree.ts",
|
|
28
|
+
"list-skills": "bun run scripts/list-skills.ts",
|
|
29
29
|
"format": "biome check --write --unsafe .",
|
|
30
|
-
"lint:mcp": "
|
|
31
|
-
"lint:packaging": "
|
|
32
|
-
"bundle": "
|
|
33
|
-
"changelog:build": "
|
|
34
|
-
"changelog:check": "
|
|
35
|
-
"test": "vitest run",
|
|
36
|
-
"start": "
|
|
37
|
-
"start:
|
|
38
|
-
"start:http": "MCP_TRANSPORT_TYPE=http node dist/index.js",
|
|
30
|
+
"lint:mcp": "bun run scripts/lint-mcp.ts",
|
|
31
|
+
"lint:packaging": "bun run scripts/lint-packaging.ts",
|
|
32
|
+
"bundle": "bun run build && npx -y @anthropic-ai/mcpb pack . dist/college-scorecard-mcp-server.mcpb",
|
|
33
|
+
"changelog:build": "bun run scripts/build-changelog.ts",
|
|
34
|
+
"changelog:check": "bun run scripts/build-changelog.ts --check",
|
|
35
|
+
"test": "bunx vitest run",
|
|
36
|
+
"start:stdio": "MCP_TRANSPORT_TYPE=stdio bun ./dist/index.js",
|
|
37
|
+
"start:http": "MCP_TRANSPORT_TYPE=http bun ./dist/index.js",
|
|
39
38
|
"publish-mcp": "mcp-publisher login github -token \"$(security find-generic-password -a \"$USER\" -s mcp-publisher-github-pat -w)\" && mcp-publisher publish"
|
|
40
39
|
},
|
|
41
40
|
"keywords": [
|
|
@@ -56,6 +55,21 @@
|
|
|
56
55
|
"type": "git",
|
|
57
56
|
"url": "git+https://github.com/cyanheads/college-scorecard-mcp-server.git"
|
|
58
57
|
},
|
|
58
|
+
"bugs": {
|
|
59
|
+
"url": "https://github.com/cyanheads/college-scorecard-mcp-server/issues"
|
|
60
|
+
},
|
|
61
|
+
"homepage": "https://github.com/cyanheads/college-scorecard-mcp-server#readme",
|
|
62
|
+
"author": "cyanheads <casey@caseyjhand.com> (https://github.com/cyanheads/college-scorecard-mcp-server#readme)",
|
|
63
|
+
"funding": [
|
|
64
|
+
{
|
|
65
|
+
"type": "github",
|
|
66
|
+
"url": "https://github.com/sponsors/cyanheads"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"type": "buy_me_a_coffee",
|
|
70
|
+
"url": "https://www.buymeacoffee.com/cyanheads"
|
|
71
|
+
}
|
|
72
|
+
],
|
|
59
73
|
"license": "Apache-2.0",
|
|
60
74
|
"engines": {
|
|
61
75
|
"bun": ">=1.3.0",
|
|
@@ -75,7 +89,6 @@
|
|
|
75
89
|
"depcheck": "^1.4.7",
|
|
76
90
|
"ignore": "^7.0.5",
|
|
77
91
|
"tsc-alias": "^1.8.17",
|
|
78
|
-
"tsx": "^4.22.3",
|
|
79
92
|
"typescript": "^6.0.3",
|
|
80
93
|
"vitest": "^4.1.7"
|
|
81
94
|
}
|
package/server.json
CHANGED
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
"url": "https://github.com/cyanheads/college-scorecard-mcp-server",
|
|
7
7
|
"source": "github"
|
|
8
8
|
},
|
|
9
|
-
"version": "0.1.
|
|
9
|
+
"version": "0.1.4",
|
|
10
10
|
"packages": [
|
|
11
11
|
{
|
|
12
12
|
"registryType": "npm",
|
|
13
13
|
"registryBaseUrl": "https://registry.npmjs.org",
|
|
14
14
|
"identifier": "@cyanheads/college-scorecard-mcp-server",
|
|
15
15
|
"runtimeHint": "node",
|
|
16
|
-
"version": "0.1.
|
|
16
|
+
"version": "0.1.4",
|
|
17
17
|
"packageArguments": [
|
|
18
18
|
{
|
|
19
19
|
"type": "positional",
|
|
@@ -25,6 +25,12 @@
|
|
|
25
25
|
}
|
|
26
26
|
],
|
|
27
27
|
"environmentVariables": [
|
|
28
|
+
{
|
|
29
|
+
"name": "SCORECARD_API_KEY",
|
|
30
|
+
"description": "Required API key for the College Scorecard API. Free registration at https://api.data.gov/signup/. Rate limit: 1,000 requests/hour.",
|
|
31
|
+
"format": "string",
|
|
32
|
+
"isRequired": true
|
|
33
|
+
},
|
|
28
34
|
{
|
|
29
35
|
"name": "MCP_LOG_LEVEL",
|
|
30
36
|
"description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').",
|
|
@@ -42,7 +48,7 @@
|
|
|
42
48
|
"registryBaseUrl": "https://registry.npmjs.org",
|
|
43
49
|
"identifier": "@cyanheads/college-scorecard-mcp-server",
|
|
44
50
|
"runtimeHint": "node",
|
|
45
|
-
"version": "0.1.
|
|
51
|
+
"version": "0.1.4",
|
|
46
52
|
"packageArguments": [
|
|
47
53
|
{
|
|
48
54
|
"type": "positional",
|