@cyanheads/openalex-mcp-server 0.6.12 → 0.6.13

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 CHANGED
@@ -1,8 +1,9 @@
1
1
  # Agent Protocol
2
2
 
3
3
  **Server:** openalex-mcp-server
4
- **Version:** 0.6.10
5
- **Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core)
4
+ **Version:** 0.6.13
5
+ **Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) `^0.9.6`
6
+ **Engines:** Bun ≥1.3.0, Node ≥24.0.0
6
7
 
7
8
  > **Read the framework docs first:** `node_modules/@cyanheads/mcp-ts-core/CLAUDE.md` contains the full API reference — builders, Context, error codes, exports, patterns. This file covers server-specific conventions only.
8
9
 
@@ -10,7 +11,7 @@
10
11
 
11
12
  ## Domain
12
13
 
13
- [OpenAlex](https://openalex.org) is a fully open catalog of the global research system — 270M+ works, 90M+ authors, 100K+ sources. CC0 data, free API key required.
14
+ [OpenAlex](https://openalex.org) is a fully open catalog of the global research system — 270M+ works, 90M+ authors, 100K+ sources. CC0 data, no API key required (email address optional for polite pool access).
14
15
 
15
16
  **Entity types:** works, authors, sources, institutions, topics, keywords, publishers, funders. All share a uniform API (list/filter, search, get-by-ID, group-by, autocomplete).
16
17
 
@@ -34,21 +35,27 @@ No resources — entity lookups need `select` for payload control, which fits to
34
35
 
35
36
  | Env Var | Required | Description |
36
37
  |:--------|:---------|:------------|
37
- | `OPENALEX_API_KEY` | Yes | API key from openalex.org |
38
+ | `OPENALEX_API_KEY` | No | Email for the OpenAlex polite pool (10x faster rate limits); omit for anonymous access |
38
39
  | `OPENALEX_BASE_URL` | No | Default: `https://api.openalex.org` |
39
40
 
40
41
  ---
41
42
 
42
43
  ## What's Next?
43
44
 
44
- When the user asks what to do next, what's left, or needs direction, suggest relevant options based on the current project state:
45
+ When the user asks what's next or needs direction, suggest options based on the current project state. Common next steps:
45
46
 
46
- 1. **Add tests** — scaffold tests for existing definitions using the `add-test` skill
47
- 2. **Field-test definitions** — exercise tools/resources/prompts with real inputs using the `field-test` skill
48
- 3. **Run `devcheck`** — lint, format, typecheck, and security audit
49
- 4. **Run the `security-pass` skill** — audit handlers for MCP-specific security gaps: output injection, scope blast radius, input sinks, tenant isolation
50
- 5. **Run the `polish-docs-meta` skill** — finalize README, CHANGELOG, metadata, and agent protocol for shipping
51
- 6. **Run the `maintenance` skill** — sync skills and dependencies after framework updates
47
+ 1. **Re-run the `setup` skill** — ensures CLAUDE.md, skills, structure, and metadata are populated and up to date with the current codebase
48
+ 2. **Run the `design-mcp-server` skill** — if the tool/resource surface hasn't been mapped yet, work through domain design
49
+ 3. **Add tools/resources/prompts** — scaffold new definitions using the `add-tool`, `add-app-tool`, `add-resource`, `add-prompt` skills
50
+ 4. **Add services** — scaffold domain service integrations using the `add-service` skill
51
+ 5. **Add tests** — scaffold tests for existing definitions using the `add-test` skill
52
+ 6. **Field-test definitions** — exercise tools/resources/prompts with real inputs using the `field-test` skill, get a report of issues and pain points
53
+ 7. **Run `devcheck`** — lint, format, typecheck, and security audit
54
+ 8. **Run the `security-pass` skill** — audit handlers for MCP-specific security gaps: output injection, scope blast radius, input sinks, tenant isolation
55
+ 9. **Run the `polish-docs-meta` skill** — finalize README, CHANGELOG, metadata, and agent protocol for shipping
56
+ 10. **Run the `maintenance` skill** — investigate changelogs, adopt upstream changes, and sync skills after `bun update --latest`
57
+
58
+ Tailor suggestions to what's actually missing or stale — don't recite the full list every time.
52
59
 
53
60
  ---
54
61
 
@@ -135,8 +142,11 @@ Handlers receive a unified `ctx` object. Key properties:
135
142
  | Property | Description |
136
143
  |:---------|:------------|
137
144
  | `ctx.log` | Request-scoped logger — `.debug()`, `.info()`, `.notice()`, `.warning()`, `.error()`. Auto-correlates requestId, traceId, tenantId. |
145
+ | `ctx.state` | Tenant-scoped KV — `.get(key)`, `.set(key, value, { ttl? })`, `.delete(key)`, `.list(prefix, { cursor, limit })`. Accepts any serializable value. |
146
+ | `ctx.elicit` | Ask user for structured input. **Check for presence first:** `if (ctx.elicit) { ... }` |
147
+ | `ctx.sample` | Request LLM completion from the client. **Check for presence first:** `if (ctx.sample) { ... }` |
138
148
  | `ctx.signal` | `AbortSignal` for cancellation. Passed to `fetch()` in the OpenAlex service. |
139
- | `ctx.state` | Tenant-scoped KV — `.get(key)`, `.set(key, value, { ttl? })`, `.delete(key)`, `.list(prefix, { cursor, limit })`. Not currently used but available. |
149
+ | `ctx.progress` | Task progress (present when `task: true`) — `.setTotal(n)`, `.increment()`, `.update(message)`. |
140
150
  | `ctx.fail` | Typed throw keyed by a declared `errors[]` contract — `ctx.fail(reason, msg?, data?)`. Auto-populates `data.reason` and resolves `code` from the contract. |
141
151
  | `ctx.recoveryFor` | Opt-in resolver returning `{ recovery: { hint } }` for a declared reason. Spread into `data` at throw site to surface contract recovery on the wire. |
142
152
  | `ctx.requestId` | Unique request ID. |
@@ -264,13 +274,32 @@ When you complete a skill's checklist, check the boxes and add a completion time
264
274
  | `bun run build` | Compile TypeScript |
265
275
  | `bun run rebuild` | Clean + build |
266
276
  | `bun run clean` | Remove build artifacts |
267
- | `bun run devcheck` | Lint + format + typecheck + security |
277
+ | `bun run devcheck` | Lint + format + typecheck + security + changelog sync |
278
+ | `bun run audit:refresh` | Delete `bun.lock`, reinstall, re-audit. Use when `devcheck` flags a transitive advisory — stale lockfile can mask already-patched deps. If advisory survives, it's real. |
268
279
  | `bun run tree` | Generate directory structure doc |
269
280
  | `bun run format` | Auto-fix formatting |
270
281
  | `bun run lint:mcp` | Validate MCP tool/prompt definitions |
282
+ | `bun run list-skills` | List available skills |
271
283
  | `bun run test` | Run tests |
272
284
  | `bun run start:stdio` | Production mode (stdio, after `rebuild`) |
273
285
  | `bun run start:http` | Production mode (HTTP, after `rebuild`) |
286
+ | `bun run changelog:build` | Regenerate `CHANGELOG.md` from `changelog/*.md` |
287
+ | `bun run changelog:check` | Verify `CHANGELOG.md` is in sync (used by devcheck) |
288
+ | `bun run bundle` | Build and pack as `.mcpb` for one-click Claude Desktop install |
289
+
290
+ ---
291
+
292
+ ## Bundling
293
+
294
+ `bun run bundle` produces a `.mcpb` extension bundle for one-click install in Claude Desktop. MCPB is stdio-only — HTTP deployments are unaffected. Consumers who don't need it can delete `manifest.json` and `.mcpbignore`; `lint:packaging` skips cleanly.
295
+
296
+ **Adding an env var requires both files:** `server.json` (registry discovery, `environmentVariables[]`) and `manifest.json` (bundle install UX, `mcp_config.env` + `user_config`). `lint:packaging` (run by `devcheck`) verifies the env var names match.
297
+
298
+ ---
299
+
300
+ ## Changelog
301
+
302
+ Directory-based, grouped by minor series via the `.x` semver-wildcard convention. Source of truth: `changelog/<major.minor>.x/<version>.md` (e.g. `changelog/0.6.x/0.6.12.md`) — one file per release, shipped in the npm package. At release, author the per-version file with a concrete version and date, then run `bun run changelog:build` to regenerate the rollup. `changelog/template.md` is a **pristine format reference** — never edited or moved. `CHANGELOG.md` is a **navigation index** regenerated by `bun run changelog:build` — devcheck hard-fails on drift; never hand-edit it.
274
303
 
275
304
  ---
276
305
 
@@ -304,7 +333,7 @@ import { getOpenAlexService } from '@/services/openalex/openalex-service.js';
304
333
 
305
334
  ## Checklist
306
335
 
307
- - [ ] Zod schemas: all fields have `.describe()`, only JSON-Schema-serializable types (no `z.custom()`, `z.date()`, `z.transform()`, etc.)
336
+ - [ ] Zod schemas: all fields have `.describe()`, only JSON-Schema-serializable types (no `z.custom()`, `z.date()`, `z.transform()`, `z.bigint()`, `z.symbol()`, `z.void()`, `z.map()`, `z.set()`, `z.function()`, `z.nan()`)
308
337
  - [ ] Optional nested objects: handler guards for empty inner values from form-based clients (`if (input.obj?.field && ...)`, not just `if (input.obj)`). When regex/length constraints matter, use `z.union([z.literal(''), z.string().regex(...).describe(...)])` — literal variants are exempt from `describe-on-fields`.
309
338
  - [ ] `format()` renders every terminal field in `output` — enforced by `format-parity` linter via sentinel injection (locale-aware: digit-group separators stripped before matching)
310
339
  - [ ] JSDoc `@fileoverview` + `@module` on every file
package/README.md CHANGED
@@ -1,12 +1,21 @@
1
1
  <div align="center">
2
2
  <h1>@cyanheads/openalex-mcp-server</h1>
3
- <p><b>Access the OpenAlex academic research catalog - 270M+ publications through MCP. STDIO & Streamable HTTP.</b></p>
4
- <p><b>4 Tools &middot; 2 Prompts</b></p>
3
+ <p><b>Access the OpenAlex academic research catalog - 270M+ publications through MCP. STDIO & Streamable HTTP.</b>
4
+ <div>4 Tools &bull; 2 Prompts</div>
5
+ </p>
5
6
  </div>
6
7
 
7
8
  <div align="center">
8
9
 
9
- [![Version](https://img.shields.io/badge/Version-0.6.12-blue.svg?style=flat-square)](./CHANGELOG.md) [![Framework](https://img.shields.io/badge/Built%20on-@cyanheads/mcp--ts--core-259?style=flat-square)](https://www.npmjs.com/package/@cyanheads/mcp-ts-core) [![MCP SDK](https://img.shields.io/badge/MCP%20SDK-^1.29.0-green.svg?style=flat-square)](https://modelcontextprotocol.io/) [![License](https://img.shields.io/badge/License-Apache%202.0-orange.svg?style=flat-square)](./LICENSE) [![TypeScript](https://img.shields.io/badge/TypeScript-^6.0.3-3178C6.svg?style=flat-square)](https://www.typescriptlang.org/)
10
+ [![Version](https://img.shields.io/badge/Version-0.6.13-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/openalex-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/@cyanheads/openalex-mcp-server?style=flat-square&logo=npm&logoColor=white)](https://www.npmjs.com/package/@cyanheads/openalex-mcp-server) [![TypeScript](https://img.shields.io/badge/TypeScript-^6.0.3-3178C6.svg?style=flat-square)](https://www.typescriptlang.org/) [![Bun](https://img.shields.io/badge/Bun-v1.3.0-blueviolet.svg?style=flat-square)](https://bun.sh/)
11
+
12
+ </div>
13
+
14
+ <div align="center">
15
+
16
+ [![Install in Claude Desktop](https://img.shields.io/badge/Install_in-Claude_Desktop-D97757?style=for-the-badge&logo=anthropic&logoColor=white)](https://github.com/cyanheads/openalex-mcp-server/releases/latest/download/openalex-mcp-server.mcpb) [![Install in Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en/install-mcp?name=openalex-mcp-server&config=eyJtY3BTZXJ2ZXJzIjp7Im9wZW5hbGV4LW1jcC1zZXJ2ZXIiOnsiY29tbWFuZCI6Im5weCIsImFyZ3MiOlsiLXkiLCJAY3lhbmhlYWRzL29wZW5hbGV4LW1jcC1zZXJ2ZXJAbGF0ZXN0Il0sImVudiI6eyJNQ1BfVFJBTlNQT1JUX1RZUEUiOiJzdGRpbyIsIk1DUF9MT0dfTEVWRUwiOiJpbmZvIn19fX0=) [![Install in VS Code](https://img.shields.io/badge/VS_Code-Install_Server-0098FF?style=for-the-badge&logo=visualstudiocode&logoColor=white)](https://vscode.dev/redirect?url=vscode:mcp/install?%7B%22name%22%3A%22openalex-mcp-server%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40cyanheads%2Fopenalex-mcp-server%40latest%22%5D%2C%22env%22%3A%7B%22MCP_TRANSPORT_TYPE%22%3A%22stdio%22%2C%22MCP_LOG_LEVEL%22%3A%22info%22%7D%7D)
17
+
18
+ [![Framework](https://img.shields.io/badge/Built%20on-@cyanheads/mcp--ts--core-67E8F9?style=flat-square)](https://www.npmjs.com/package/@cyanheads/mcp-ts-core)
10
19
 
11
20
  </div>
12
21
 
@@ -164,7 +173,7 @@ bun install
164
173
 
165
174
  | Variable | Description | Default |
166
175
  |:---------|:------------|:--------|
167
- | `OPENALEX_API_KEY` | **Required.** Email address for the OpenAlex [polite pool](https://docs.openalex.org/how-to-use-the-api/rate-limits-and-authentication#the-polite-pool) (faster rate limits). | — |
176
+ | `OPENALEX_API_KEY` | **Optional.** Email address for the OpenAlex [polite pool](https://docs.openalex.org/how-to-use-the-api/rate-limits-and-authentication#the-polite-pool) (10x faster rate limits). Without it, anonymous rate limits apply. | — |
168
177
  | `OPENALEX_BASE_URL` | OpenAlex API base URL. | `https://api.openalex.org` |
169
178
  | `MCP_TRANSPORT_TYPE` | Transport: `stdio` or `http`. | `stdio` |
170
179
  | `MCP_HTTP_PORT` | Port for HTTP server. | `3010` |
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { z } from '@cyanheads/mcp-ts-core';
6
6
  declare const ServerConfigSchema: z.ZodObject<{
7
- apiKey: z.ZodString;
7
+ apiKey: z.ZodDefault<z.ZodString>;
8
8
  baseUrl: z.ZodDefault<z.ZodString>;
9
9
  }, z.core.$strip>;
10
10
  export type ServerConfig = z.infer<typeof ServerConfigSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"server-config.d.ts","sourceRoot":"","sources":["../../src/config/server-config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAE3C,QAAA,MAAM,kBAAkB;;;iBAGtB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAI9D,wBAAgB,eAAe,IAAI,YAAY,CAM9C"}
1
+ {"version":3,"file":"server-config.d.ts","sourceRoot":"","sources":["../../src/config/server-config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAE3C,QAAA,MAAM,kBAAkB;;;iBAQtB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAI9D,wBAAgB,eAAe,IAAI,YAAY,CAM9C"}
@@ -4,7 +4,10 @@
4
4
  */
5
5
  import { z } from '@cyanheads/mcp-ts-core';
6
6
  const ServerConfigSchema = z.object({
7
- apiKey: z.string().min(1).describe('OpenAlex API key'),
7
+ apiKey: z
8
+ .string()
9
+ .default('')
10
+ .describe('OpenAlex API key or mailto email — optional (without: anonymous rate limits; with: polite pool)'),
8
11
  baseUrl: z.string().url().default('https://api.openalex.org').describe('OpenAlex API base URL'),
9
12
  });
10
13
  let _config;
@@ -1 +1 @@
1
- {"version":3,"file":"server-config.js","sourceRoot":"","sources":["../../src/config/server-config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAE3C,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IACtD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;CAChG,CAAC,CAAC;AAIH,IAAI,OAAiC,CAAC;AAEtC,MAAM,UAAU,eAAe;IAC7B,OAAO,KAAK,kBAAkB,CAAC,KAAK,CAAC;QACnC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;QACpC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;KACvC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"server-config.js","sourceRoot":"","sources":["../../src/config/server-config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAE3C,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CACP,iGAAiG,CAClG;IACH,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;CAChG,CAAC,CAAC;AAIH,IAAI,OAAiC,CAAC;AAEtC,MAAM,UAAU,eAAe;IAC7B,OAAO,KAAK,kBAAkB,CAAC,KAAK,CAAC;QACnC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;QACpC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;KACvC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -374,7 +374,8 @@ class OpenAlexService {
374
374
  const operation = `OpenAlex ${path}`;
375
375
  const requestContext = toRequestContext(ctx, operation);
376
376
  const url = new URL(`${this.baseUrl}${path}`);
377
- url.searchParams.set('mailto', this.apiKey);
377
+ if (this.apiKey)
378
+ url.searchParams.set('mailto', this.apiKey);
378
379
  for (const [key, value] of Object.entries(params)) {
379
380
  if (value)
380
381
  url.searchParams.set(key, value);
@@ -1 +1 @@
1
- {"version":3,"file":"openalex-service.js","sourceRoot":"","sources":["../../../src/services/openalex/openalex-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openalex-service.js","sourceRoot":"","sources":["../../../src/services/openalex/openalex-service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cyanheads/openalex-mcp-server",
3
- "version": "0.6.12",
3
+ "version": "0.6.13",
4
4
  "description": "Access the OpenAlex academic research catalog - 270M+ publications through MCP. STDIO & Streamable HTTP.",
5
5
  "mcpName": "io.github.cyanheads/openalex-mcp-server",
6
6
  "type": "module",
@@ -18,6 +18,10 @@
18
18
  "tree": "bun scripts/tree.ts",
19
19
  "format": "biome check --write --unsafe .",
20
20
  "lint:mcp": "bun scripts/lint-mcp.ts",
21
+ "lint:packaging": "bun scripts/lint-packaging.ts",
22
+ "list-skills": "bun scripts/list-skills.ts",
23
+ "bundle": "bun run build && npx -y @anthropic-ai/mcpb pack . dist/@cyanheads/openalex-mcp-server.mcpb",
24
+ "audit:refresh": "rm -f bun.lock && bun install && bun audit",
21
25
  "changelog:build": "bun scripts/build-changelog.ts",
22
26
  "changelog:check": "bun scripts/build-changelog.ts --check",
23
27
  "test": "vitest run",
@@ -68,8 +72,9 @@
68
72
  "access": "public"
69
73
  },
70
74
  "dependencies": {
71
- "@cyanheads/mcp-ts-core": "^0.9.1",
72
- "pino-pretty": "^13.1.3"
75
+ "@cyanheads/mcp-ts-core": "^0.9.6",
76
+ "pino-pretty": "^13.1.3",
77
+ "zod": "^4.4.3"
73
78
  },
74
79
  "devDependencies": {
75
80
  "@biomejs/biome": "^2.4.15",
package/server.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
3
3
  "name": "io.github.cyanheads/openalex-mcp-server",
4
- "description": "Access the OpenAlex academic research catalog - 270M+ publications via MCP. STDIO & HTTP.",
4
+ "description": "Access the OpenAlex academic research catalog — 270M+ publications.",
5
5
  "repository": {
6
6
  "url": "https://github.com/cyanheads/openalex-mcp-server",
7
7
  "source": "github"
8
8
  },
9
- "version": "0.6.12",
9
+ "version": "0.6.13",
10
10
  "remotes": [
11
11
  {
12
12
  "type": "streamable-http",
@@ -19,7 +19,7 @@
19
19
  "registryBaseUrl": "https://registry.npmjs.org",
20
20
  "identifier": "@cyanheads/openalex-mcp-server",
21
21
  "runtimeHint": "node",
22
- "version": "0.6.12",
22
+ "version": "0.6.13",
23
23
  "packageArguments": [
24
24
  {
25
25
  "type": "positional",
@@ -33,9 +33,9 @@
33
33
  "environmentVariables": [
34
34
  {
35
35
  "name": "OPENALEX_API_KEY",
36
- "description": "API key from openalex.org (free).",
36
+ "description": "OpenAlex API key or mailto email \u2014 optional. Without: anonymous rate limits. With: polite pool access.",
37
37
  "format": "string",
38
- "isRequired": true
38
+ "isRequired": false
39
39
  },
40
40
  {
41
41
  "name": "OPENALEX_BASE_URL",
@@ -61,7 +61,7 @@
61
61
  "registryBaseUrl": "https://registry.npmjs.org",
62
62
  "identifier": "@cyanheads/openalex-mcp-server",
63
63
  "runtimeHint": "node",
64
- "version": "0.6.12",
64
+ "version": "0.6.13",
65
65
  "packageArguments": [
66
66
  {
67
67
  "type": "positional",
@@ -75,9 +75,9 @@
75
75
  "environmentVariables": [
76
76
  {
77
77
  "name": "OPENALEX_API_KEY",
78
- "description": "API key from openalex.org (free).",
78
+ "description": "OpenAlex API key or mailto email \u2014 optional. Without: anonymous rate limits. With: polite pool access.",
79
79
  "format": "string",
80
- "isRequired": true
80
+ "isRequired": false
81
81
  },
82
82
  {
83
83
  "name": "OPENALEX_BASE_URL",