@cyanheads/openalex-mcp-server 0.10.0 → 0.11.0

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 (64) hide show
  1. package/AGENTS.md +30 -15
  2. package/CLAUDE.md +30 -15
  3. package/Dockerfile +6 -0
  4. package/README.md +55 -116
  5. package/changelog/0.10.x/0.10.1.md +28 -0
  6. package/changelog/0.11.x/0.11.0.md +41 -0
  7. package/dist/config/server-config.d.ts.map +1 -1
  8. package/dist/config/server-config.js +1 -1
  9. package/dist/config/server-config.js.map +1 -1
  10. package/dist/index.js +2 -1
  11. package/dist/index.js.map +1 -1
  12. package/dist/mcp-server/prompts/definitions/literature-review.prompt.js +1 -1
  13. package/dist/mcp-server/prompts/definitions/research-landscape.prompt.js +1 -1
  14. package/dist/mcp-server/tools/definitions/analyze-trends.tool.d.ts +1 -0
  15. package/dist/mcp-server/tools/definitions/analyze-trends.tool.d.ts.map +1 -1
  16. package/dist/mcp-server/tools/definitions/analyze-trends.tool.js +10 -5
  17. package/dist/mcp-server/tools/definitions/analyze-trends.tool.js.map +1 -1
  18. package/dist/mcp-server/tools/definitions/citation-graph.tool.d.ts +6 -9
  19. package/dist/mcp-server/tools/definitions/citation-graph.tool.d.ts.map +1 -1
  20. package/dist/mcp-server/tools/definitions/citation-graph.tool.js +43 -33
  21. package/dist/mcp-server/tools/definitions/citation-graph.tool.js.map +1 -1
  22. package/dist/mcp-server/tools/definitions/describe-fields.tool.d.ts +1 -0
  23. package/dist/mcp-server/tools/definitions/describe-fields.tool.d.ts.map +1 -1
  24. package/dist/mcp-server/tools/definitions/describe-fields.tool.js +25 -1
  25. package/dist/mcp-server/tools/definitions/describe-fields.tool.js.map +1 -1
  26. package/dist/mcp-server/tools/definitions/resolve-name.tool.d.ts.map +1 -1
  27. package/dist/mcp-server/tools/definitions/resolve-name.tool.js +44 -16
  28. package/dist/mcp-server/tools/definitions/resolve-name.tool.js.map +1 -1
  29. package/dist/mcp-server/tools/definitions/search-entities.tool.d.ts +22 -18
  30. package/dist/mcp-server/tools/definitions/search-entities.tool.d.ts.map +1 -1
  31. package/dist/mcp-server/tools/definitions/search-entities.tool.js +194 -85
  32. package/dist/mcp-server/tools/definitions/search-entities.tool.js.map +1 -1
  33. package/dist/mcp-server/tools/escape-markdown.d.ts +26 -11
  34. package/dist/mcp-server/tools/escape-markdown.d.ts.map +1 -1
  35. package/dist/mcp-server/tools/escape-markdown.js +95 -26
  36. package/dist/mcp-server/tools/escape-markdown.js.map +1 -1
  37. package/dist/mcp-server/tools/page-size.d.ts +38 -7
  38. package/dist/mcp-server/tools/page-size.d.ts.map +1 -1
  39. package/dist/mcp-server/tools/page-size.js +37 -11
  40. package/dist/mcp-server/tools/page-size.js.map +1 -1
  41. package/dist/mcp-server/tools/record-page.d.ts +174 -0
  42. package/dist/mcp-server/tools/record-page.d.ts.map +1 -0
  43. package/dist/mcp-server/tools/record-page.js +392 -0
  44. package/dist/mcp-server/tools/record-page.js.map +1 -0
  45. package/dist/mcp-server/tools/render-entity-record.d.ts +3 -1
  46. package/dist/mcp-server/tools/render-entity-record.d.ts.map +1 -1
  47. package/dist/mcp-server/tools/render-entity-record.js +7 -2
  48. package/dist/mcp-server/tools/render-entity-record.js.map +1 -1
  49. package/dist/services/openalex/field-catalog.json +107 -0
  50. package/dist/services/openalex/openalex-service.d.ts +18 -7
  51. package/dist/services/openalex/openalex-service.d.ts.map +1 -1
  52. package/dist/services/openalex/openalex-service.js +84 -63
  53. package/dist/services/openalex/openalex-service.js.map +1 -1
  54. package/dist/services/openalex/types.d.ts +13 -2
  55. package/dist/services/openalex/types.d.ts.map +1 -1
  56. package/dist/services/openalex/types.js +28 -1
  57. package/dist/services/openalex/types.js.map +1 -1
  58. package/package.json +7 -6
  59. package/server.json +5 -5
  60. package/skills/openalex-guide/SKILL.md +77 -0
  61. package/dist/mcp-server/tools/response-budget.d.ts +0 -159
  62. package/dist/mcp-server/tools/response-budget.d.ts.map +0 -1
  63. package/dist/mcp-server/tools/response-budget.js +0 -509
  64. package/dist/mcp-server/tools/response-budget.js.map +0 -1
@@ -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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"}
@@ -2,7 +2,18 @@
2
2
  * @fileoverview Domain types for OpenAlex API interactions.
3
3
  * @module services/openalex/types
4
4
  */
5
- export declare const ENTITY_TYPES: readonly ['works', 'authors', 'sources', 'institutions', 'topics', 'keywords', 'publishers', 'funders'];
5
+ /**
6
+ * The entity types OpenAlex autocompletes by name: `/autocomplete/<type>` serves each, and
7
+ * cross-entity `/autocomplete` returns matches of these types only.
8
+ */
9
+ export declare const AUTOCOMPLETE_ENTITY_TYPES: readonly ['works', 'authors', 'sources', 'institutions', 'topics', 'keywords', 'publishers', 'funders'];
10
+ export type AutocompleteEntityType = (typeof AUTOCOMPLETE_ENTITY_TYPES)[number];
11
+ /**
12
+ * Every entity type the server reads. `awards` (grants, keyed by `G…` IDs) has list, filter,
13
+ * group_by, and by-ID endpoints but no autocomplete — `/autocomplete/awards` 404s — so it sits
14
+ * outside `AUTOCOMPLETE_ENTITY_TYPES`.
15
+ */
16
+ export declare const ENTITY_TYPES: readonly ["works", "authors", "sources", "institutions", "topics", "keywords", "publishers", "funders", "awards"];
6
17
  export type EntityType = (typeof ENTITY_TYPES)[number];
7
18
  /**
8
19
  * Default `select` fields applied to searches and single-entity lookups alike when the caller
@@ -66,7 +77,7 @@ export interface AnalyzeResult {
66
77
  };
67
78
  }
68
79
  export interface AutocompleteParams {
69
- entityType?: EntityType | undefined;
80
+ entityType?: AutocompleteEntityType | undefined;
70
81
  filters?: Record<string, string> | undefined;
71
82
  query: string;
72
83
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/openalex/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/openalex/types.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,11 @@
2
2
  * @fileoverview Domain types for OpenAlex API interactions.
3
3
  * @module services/openalex/types
4
4
  */
5
- export const ENTITY_TYPES = [
5
+ /**
6
+ * The entity types OpenAlex autocompletes by name: `/autocomplete/<type>` serves each, and
7
+ * cross-entity `/autocomplete` returns matches of these types only.
8
+ */
9
+ export const AUTOCOMPLETE_ENTITY_TYPES = [
6
10
  'works',
7
11
  'authors',
8
12
  'sources',
@@ -12,6 +16,12 @@ export const ENTITY_TYPES = [
12
16
  'publishers',
13
17
  'funders',
14
18
  ];
19
+ /**
20
+ * Every entity type the server reads. `awards` (grants, keyed by `G…` IDs) has list, filter,
21
+ * group_by, and by-ID endpoints but no autocomplete — `/autocomplete/awards` 404s — so it sits
22
+ * outside `AUTOCOMPLETE_ENTITY_TYPES`.
23
+ */
24
+ export const ENTITY_TYPES = [...AUTOCOMPLETE_ENTITY_TYPES, 'awards'];
15
25
  /**
16
26
  * Default `select` fields applied to searches and single-entity lookups alike when the caller
17
27
  * doesn't specify `select`. Prevents 20-70KB-per-record responses from blowing up context windows.
@@ -78,5 +88,22 @@ export const DEFAULT_SELECT = {
78
88
  keywords: ['id', 'display_name', 'works_count', 'cited_by_count'],
79
89
  publishers: ['id', 'display_name', 'works_count', 'cited_by_count', 'country_codes'],
80
90
  funders: ['id', 'display_name', 'works_count', 'cited_by_count', 'country_code'],
91
+ /**
92
+ * Awards carry no `cited_by_count` or `works_count`. `description` (several KB) and
93
+ * `funded_outputs` (at most 100 work IDs, however many the award funded) stay out; the full
94
+ * output set is works filtered by `awards.id`.
95
+ */
96
+ awards: [
97
+ 'id',
98
+ 'display_name',
99
+ 'funder',
100
+ 'funder_award_id',
101
+ 'amount_usd',
102
+ 'start_date',
103
+ 'end_date',
104
+ 'lead_investigator',
105
+ 'institution_awarded',
106
+ 'funded_outputs_count',
107
+ ],
81
108
  };
82
109
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/services/openalex/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,OAAO;IACP,SAAS;IACT,SAAS;IACT,cAAc;IACd,QAAQ;IACR,UAAU;IACV,YAAY;IACZ,SAAS;CACD,CAAC;AAIX;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,cAAc,GAAiC;IAC1D,KAAK,EAAE;QACL,IAAI;QACJ,KAAK;QACL,cAAc;QACd,kBAAkB;QAClB,MAAM;QACN,gBAAgB;QAChB,aAAa;QACb,eAAe;QACf,kBAAkB;QAClB,kBAAkB;KACnB;IACD,OAAO,EAAE;QACP,IAAI;QACJ,cAAc;QACd,OAAO;QACP,aAAa;QACb,gBAAgB;QAChB,yBAAyB;QACzB,eAAe;QACf,QAAQ;KACT;IACD,YAAY,EAAE;QACZ,IAAI;QACJ,cAAc;QACd,KAAK;QACL,cAAc;QACd,MAAM;QACN,aAAa;QACb,gBAAgB;KACjB;IACD,OAAO,EAAE;QACP,IAAI;QACJ,cAAc;QACd,QAAQ;QACR,MAAM;QACN,OAAO;QACP,aAAa;QACb,gBAAgB;QAChB,wBAAwB;KACzB;IACD,MAAM,EAAE;QACN,IAAI;QACJ,cAAc;QACd,aAAa;QACb,UAAU;QACV,UAAU;QACV,OAAO;QACP,QAAQ;QACR,aAAa;QACb,gBAAgB;KACjB;IACD,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,CAAC;IACjE,UAAU,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,CAAC;IACpF,OAAO,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,cAAc,CAAC;CACjF,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/services/openalex/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,OAAO;IACP,SAAS;IACT,SAAS;IACT,cAAc;IACd,QAAQ;IACR,UAAU;IACV,YAAY;IACZ,SAAS;CACD,CAAC;AAIX;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAG,yBAAyB,EAAE,QAAQ,CAAU,CAAC;AAI9E;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,cAAc,GAAiC;IAC1D,KAAK,EAAE;QACL,IAAI;QACJ,KAAK;QACL,cAAc;QACd,kBAAkB;QAClB,MAAM;QACN,gBAAgB;QAChB,aAAa;QACb,eAAe;QACf,kBAAkB;QAClB,kBAAkB;KACnB;IACD,OAAO,EAAE;QACP,IAAI;QACJ,cAAc;QACd,OAAO;QACP,aAAa;QACb,gBAAgB;QAChB,yBAAyB;QACzB,eAAe;QACf,QAAQ;KACT;IACD,YAAY,EAAE;QACZ,IAAI;QACJ,cAAc;QACd,KAAK;QACL,cAAc;QACd,MAAM;QACN,aAAa;QACb,gBAAgB;KACjB;IACD,OAAO,EAAE;QACP,IAAI;QACJ,cAAc;QACd,QAAQ;QACR,MAAM;QACN,OAAO;QACP,aAAa;QACb,gBAAgB;QAChB,wBAAwB;KACzB;IACD,MAAM,EAAE;QACN,IAAI;QACJ,cAAc;QACd,aAAa;QACb,UAAU;QACV,UAAU;QACV,OAAO;QACP,QAAQ;QACR,aAAa;QACb,gBAAgB;KACjB;IACD,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,CAAC;IACjE,UAAU,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,CAAC;IACpF,OAAO,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,cAAc,CAAC;IAChF;;;;OAIG;IACH,MAAM,EAAE;QACN,IAAI;QACJ,cAAc;QACd,QAAQ;QACR,iBAAiB;QACjB,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,mBAAmB;QACnB,qBAAqB;QACrB,sBAAsB;KACvB;CACF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cyanheads/openalex-mcp-server",
3
- "version": "0.10.0",
3
+ "version": "0.11.0",
4
4
  "description": "Access the OpenAlex academic research catalog — 270M+ publications — via MCP. STDIO or Streamable HTTP.",
5
5
  "mcpName": "io.github.cyanheads/openalex-mcp-server",
6
6
  "type": "module",
@@ -18,7 +18,8 @@
18
18
  "CLAUDE.md",
19
19
  "AGENTS.md",
20
20
  "Dockerfile",
21
- "server.json"
21
+ "server.json",
22
+ "skills/"
22
23
  ],
23
24
  "scripts": {
24
25
  "build": "bun scripts/build.ts",
@@ -92,20 +93,20 @@
92
93
  },
93
94
  "trustedDependencies": ["@socketsecurity/bun-security-scanner"],
94
95
  "dependencies": {
95
- "@cyanheads/mcp-ts-core": "^0.13.15",
96
+ "@cyanheads/mcp-ts-core": "^0.13.18",
96
97
  "pino-pretty": "^13.2.0",
97
98
  "zod": "^4.6.7"
98
99
  },
99
100
  "devDependencies": {
100
- "@biomejs/biome": "^2.5.15",
101
+ "@biomejs/biome": "^2.6.3",
101
102
  "@socketsecurity/bun-security-scanner": "^1.1.3",
102
103
  "@types/node": "^26.6.5",
103
104
  "depcheck": "^1.4.7",
104
- "ignore": "^7.0.13",
105
+ "ignore": "^7.0.14",
105
106
  "mdast-util-from-markdown": "^2.1.0",
106
107
  "mdast-util-gfm": "^3.1.0",
107
108
  "micromark-extension-gfm": "^3.0.0",
108
- "tsc-alias": "^1.9.8",
109
+ "tsc-alias": "^1.9.9",
109
110
  "typescript": "^7.0.2",
110
111
  "vitest": "^5.0.5"
111
112
  }
package/server.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "url": "https://github.com/cyanheads/openalex-mcp-server",
7
7
  "source": "github"
8
8
  },
9
- "version": "0.10.0",
9
+ "version": "0.11.0",
10
10
  "remotes": [
11
11
  {
12
12
  "type": "streamable-http",
@@ -19,11 +19,11 @@
19
19
  "registryBaseUrl": "https://registry.npmjs.org",
20
20
  "identifier": "@cyanheads/openalex-mcp-server",
21
21
  "runtimeHint": "npx",
22
- "version": "0.10.0",
22
+ "version": "0.11.0",
23
23
  "environmentVariables": [
24
24
  {
25
25
  "name": "OPENALEX_CLAMP_PER_PAGE",
26
- "description": "Clamp oversized per_page values with a notice. Set false to restore rejecting maxima.",
26
+ "description": "Clamp oversized count inputs (per_page, semantic-search per_page, sample, slice.limit) to their caps with a notice. Set false to reject them instead.",
27
27
  "format": "string",
28
28
  "isRequired": false,
29
29
  "default": "true"
@@ -71,11 +71,11 @@
71
71
  "registryBaseUrl": "https://registry.npmjs.org",
72
72
  "identifier": "@cyanheads/openalex-mcp-server",
73
73
  "runtimeHint": "npx",
74
- "version": "0.10.0",
74
+ "version": "0.11.0",
75
75
  "environmentVariables": [
76
76
  {
77
77
  "name": "OPENALEX_CLAMP_PER_PAGE",
78
- "description": "Clamp oversized per_page values with a notice. Set false to restore rejecting maxima.",
78
+ "description": "Clamp oversized count inputs (per_page, semantic-search per_page, sample, slice.limit) to their caps with a notice. Set false to reject them instead.",
79
79
  "format": "string",
80
80
  "isRequired": false,
81
81
  "default": "true"
@@ -0,0 +1,77 @@
1
+ ---
2
+ name: openalex-guide
3
+ description: Gates and identifier chains for the openalex_* tools — which filter key answers the question (topic or text, institution or its lineage, venue, funders or awards), how to read group_by counts, where W/A/S/I/T/P/F/G IDs come from, and how to pin an author without picking a namesake. Use when answering literature, citation, bibliometric, author, institution, or research-funding questions with openalex_* tools.
4
+ license: Apache-2.0
5
+ metadata:
6
+ author: cyanheads
7
+ version: "1.0"
8
+ ---
9
+
10
+ ## Scope
11
+
12
+ OpenAlex is a CC0 catalog of scholarly metadata: works, authors, sources (journals, repositories, conferences), institutions, topics, keywords, publishers, funders, and awards (grants). Reach for it to find literature and to count it: who published what, where, with whom, funded by whom, and who cites it.
13
+
14
+ Not here: article full text (a work carries an abstract when OpenAlex has one, and a readable copy's link in `best_oa_location`), trial registries, MeSH indexing, and other databases' citation counts. `cited_by_count` and every count here are OpenAlex's own tallies; cite them as such. Concept IDs (`C…`) are retired; topics replace them.
15
+
16
+ ## Identifiers
17
+
18
+ | ID | Entity | Where it comes from |
19
+ |:---|:-------|:--------------------|
20
+ | `W…` | work | search results, the citation graph, `openalex_resolve_name` on a title, DOI, or PMID |
21
+ | `A…` | author | `openalex_resolve_name` on a name or ORCID; a work's `author_list` or `authorships` |
22
+ | `S…` | source | `openalex_resolve_name` on a name or ISSN; a work's `primary_location.source` |
23
+ | `I…` | institution | `openalex_resolve_name` on a name or ROR; a work's `authorships` |
24
+ | `T…` | topic | `openalex_resolve_name` with entity_type topics; a work's `primary_topic` |
25
+ | field, subfield, domain | topic hierarchy | a topic record's `field`, `subfield`, `domain`; filter with the trailing number (`primary_topic.field.id: "13"`) |
26
+ | slug | keyword | `openalex_resolve_name` with entity_type keywords; keyword IDs are slugs (`groundwater`), never `K…` |
27
+ | `P…` | publisher | `openalex_resolve_name`; a journal's `host_organization` (a repository's names its host institution instead) |
28
+ | `F…` | funder | `openalex_resolve_name` on a name, ROR, or Funder Registry DOI; a work's `funders` |
29
+ | `G…` | award | no name lookup: `openalex_search_entities` on entity_type awards (`query`, or the `funder_award_id` filter); a work's `awards` |
30
+
31
+ ## Gates
32
+
33
+ ### Pick the filter key that matches the question
34
+
35
+ Each pair returns a different population. Choose deliberately, and name the key in the answer.
36
+
37
+ - **Topic or text.** `primary_topic.id` holds works whose main topic is T; `topics.id` holds works carrying T among any of their topics, a much larger set. `query` also matches full text where OpenAlex holds it, so it returns works that only mention a phrase; the `title_and_abstract.search` filter keeps to works about it.
38
+ - **Institution or lineage.** `authorships.institutions.id` counts that exact institution; `authorships.institutions.lineage` adds its child institutions (affiliated hospitals, institutes). Rankings shift between the two.
39
+ - **Venue.** `primary_location.source.id` is where a work was published. `locations.source.id` matches any copy, so a repository or preprint server counts every deposited version: arXiv holds more than twice as many works by `locations` as by `primary_location`.
40
+ - **Funding.** On works, `funders.id` holds works that acknowledge a funder, and `awards.funder_id` the smaller set matched to one of its specific grants. The `awards` entity holds the grants themselves, with amounts, dates, and investigators. An agency and its sub-agencies are separate funders (NIH and each of its institutes has its own `F…` ID, and a work often lists both): OR the IDs when the question means the whole agency.
41
+
42
+ ### Read group_by counts against `meta.count`
43
+
44
+ - A multi-valued field (institutions, countries, authors, topics, funders, sources at any location) counts a work once in every group it belongs to, so the groups can sum past the total; a work with no value falls in no group unless `group_by` ends in `:include_unknown`, so the sum can also fall short. Compute shares with `meta.count` as the denominator, never the group sum. Single-valued fields (`publication_year`, `type`, `oa_status`) partition the total.
45
+ - The current year is partial. Its point on a trend is not a decline; stop at the last full year or label it "to date".
46
+ - On awards, groups count grants, not dollars (Funding behind a topic, step 4).
47
+
48
+ ### Pin the author before listing works
49
+
50
+ 1. Holding an ORCID, skip the name: `openalex_resolve_name` takes the ORCID directly, and the works filter `authorships.author.orcid` takes it without an author ID.
51
+ 2. A name returns at most 10 matches, and a common name has thousands of profiles, so the right person may not be among them. Narrow with `filters` on entity_type authors, `last_known_institutions.id` or `affiliations.institution.id` (any past affiliation), before choosing.
52
+ 3. Matches can include other forms of the name ("W. Wang" for "Wei Wang"), so check `display_name` first. Choose by the `hint` (last institution), `works_count`, and topics, then confirm on one paper you know is theirs: their `A…` ID must appear in its `author_list`.
53
+ 4. A person can have stray or split profiles beside the main one. OR every confirmed `A…` ID in `authorships.author.id`; never add an unconfirmed namesake.
54
+
55
+ ### Reproducible samples
56
+
57
+ A seed reproduces a draw from the same filters, but OpenAlex updates its catalog continuously. Keep the drawn IDs, and record the seed, the exact filters, and the retrieval date with them. For a stratified sample, draw one seeded sample per stratum filter, sized from that stratum's `analyze_trends` count.
58
+
59
+ ## Workflows
60
+
61
+ ### Who leads a field, and how output moved
62
+
63
+ 1. Resolve the topic to `T…` (or take a field or subfield ID from its record for a broader cut).
64
+ 2. `openalex_analyze_trends` on works, `group_by` `authorships.institutions.id` (or `.lineage`), filtered by the topic and a `publication_year` range: the ranking.
65
+ 3. For each leader, group by `publication_year` with the institution ID added to the same filters: its trend.
66
+
67
+ ### Who cites a work, and where
68
+
69
+ - The distribution of citing works by venue, institution, country, or year is one `openalex_analyze_trends` call on works with the `cites` filter set to the `W…` ID, grouped by the field you want. It costs far less than paging the graph.
70
+ - `openalex_get_citation_graph` direction `cites`, sorted `-cited_by_count`, lists the citing works themselves; take venue from `primary_location.source`.
71
+
72
+ ### Funding behind a topic
73
+
74
+ 1. Count funders of the topic's works: `openalex_analyze_trends` on works, `group_by` `funders.id`, filtered by the topic.
75
+ 2. Reach the grants from the works side: group the topic's works by `awards.id`, which ranks grants by how many of those works each funded. Few awards carry a topic classification of their own, so an awards search filtered by topic is a lower bound, not the topic's grants. A work's `awards` field names its `G…` IDs; works filtered by `awards.id` are one grant's outputs.
76
+ 3. A grant number is not unique: one `funder_award_id` can sit on award records of different funders. Narrow with the `funder.id` filter before treating a record as the grant.
77
+ 4. Funding totals: `amount_usd` is converted from `amount` and `currency`; many awards carry none, and some carry 0 or a negative value. Page the awards, sum `amount_usd`, and report how many awards the sum covers. Never present it as the full amount.
@@ -1,159 +0,0 @@
1
- /**
2
- * @fileoverview Response-size budget for the tools that return OpenAlex entity records
3
- * (`openalex_search_entities`, `openalex_get_citation_graph`). Holds each surface — serialized
4
- * `structuredContent` and the summed `content[]` text, enrichment trailer included — to
5
- * 64,000 bytes: a list page loses whole records from its end, a record too large on its own has
6
- * its biggest arrays windowed, and every cut is disclosed with the call that continues it. The
7
- * same pass discloses OpenAlex's 100-author list cap and 5,000-author singleton storage cap.
8
- * @module mcp-server/tools/response-budget
9
- */
10
- import { z } from '@cyanheads/mcp-ts-core';
11
- import type { EntityRecord, EntityType } from '../../services/openalex/types.js';
12
- /** Per-surface ceiling: serialized `structuredContent`, and summed `content[]` text. */
13
- export declare const RESPONSE_BUDGET_BYTES = 64000;
14
- /**
15
- * Bytes reserved on each surface for the `budget` enrichment field. The service writes it from
16
- * OpenAlex's rate-limit headers through `ctx.enrich`, so its value is not in the handler's hands
17
- * when the page is measured. The allowance covers its widest realistic form — every number at
18
- * full double precision, with a prepaid balance — measured at 176 bytes as a JSON member and 108
19
- * as a trailer line with its separator.
20
- */
21
- export declare const BUDGET_FIELD_ALLOWANCE_BYTES = 256;
22
- declare const arrayWindowSchema: z.ZodObject<{
23
- id: z.ZodString;
24
- field: z.ZodString;
25
- offset: z.ZodNumber;
26
- shown: z.ZodNumber;
27
- total: z.ZodNumber;
28
- possibly_capped: z.ZodBoolean;
29
- next: z.ZodNullable<z.ZodObject<{
30
- tool: z.ZodLiteral<"openalex_search_entities">;
31
- arguments: z.ZodObject<{}, z.core.$loose>;
32
- }, z.core.$strip>>;
33
- }, z.core.$strip>;
34
- /** Output field: whole records the budget cut from a list page, and the call returning them. */
35
- export declare const omittedOutputSchema: z.ZodOptional<z.ZodObject<{
36
- ids: z.ZodArray<z.ZodString>;
37
- next: z.ZodObject<{
38
- tool: z.ZodLiteral<"openalex_search_entities">;
39
- arguments: z.ZodObject<{}, z.core.$loose>;
40
- }, z.core.$strip>;
41
- }, z.core.$strip>>;
42
- /** Output field: arrays returned in part, or possibly in part, each with its continuation. */
43
- export declare const windowsOutputSchema: z.ZodOptional<z.ZodArray<z.ZodObject<{
44
- id: z.ZodString;
45
- field: z.ZodString;
46
- offset: z.ZodNumber;
47
- shown: z.ZodNumber;
48
- total: z.ZodNumber;
49
- possibly_capped: z.ZodBoolean;
50
- next: z.ZodNullable<z.ZodObject<{
51
- tool: z.ZodLiteral<"openalex_search_entities">;
52
- arguments: z.ZodObject<{}, z.core.$loose>;
53
- }, z.core.$strip>>;
54
- }, z.core.$strip>>>;
55
- /** Output field: the least this call can return does not fit the budget on its own. */
56
- export declare const overBudgetOutputSchema: z.ZodOptional<z.ZodBoolean>;
57
- type ArrayWindow = z.infer<typeof arrayWindowSchema>;
58
- type Omitted = NonNullable<z.infer<typeof omittedOutputSchema>>;
59
- /** The disclosure fields a budgeted page carries, each present only when it has something to say. */
60
- export interface BudgetDisclosure {
61
- omitted?: Omitted | undefined;
62
- over_budget?: boolean | undefined;
63
- windows?: ArrayWindow[] | undefined;
64
- }
65
- /** A record page as both tools return it: upstream meta, records, and budget disclosure. */
66
- export interface RecordPage extends BudgetDisclosure {
67
- meta: {
68
- count: number;
69
- next_cursor: string | null;
70
- per_page: number;
71
- };
72
- results: readonly EntityRecord[];
73
- }
74
- export interface BudgetedPage {
75
- disclosure: BudgetDisclosure;
76
- /** Sentences for the tool's `notice`; undefined when nothing was cut, windowed, or flagged. */
77
- notice: string | undefined;
78
- results: EntityRecord[];
79
- }
80
- export interface SurfaceBytes {
81
- structured: number;
82
- text: number;
83
- }
84
- /**
85
- * Bytes of both surfaces for the page with no records in it, given the disclosure and the
86
- * budget sentences it would carry. The tool supplies it, since only the tool knows its own
87
- * header, notices, and enrichment.
88
- */
89
- export type FrameMeasure = (disclosure: BudgetDisclosure, budgetNotice: string | undefined) => SurfaceBytes;
90
- /** Enrichment the handler writes, which the framework renders into the `content[]` trailer. */
91
- export interface PageEnrichment {
92
- echo: string;
93
- notice: string | undefined;
94
- totalCount: number;
95
- /** The tool's `enrichmentTrailer.totalCount.label`. */
96
- totalLabel: string;
97
- }
98
- /** `https://openalex.org/W123` → `W123`. Any other form (a keyword URL) passes through whole. */
99
- export declare function bareId(id: string): string;
100
- /** Join notice sentences, dropping empty ones; undefined when none remain. */
101
- export declare function joinNotices(parts: readonly (string | undefined)[]): string | undefined;
102
- /**
103
- * `format()` for a record page: a count header, each record, then the budget disclosure.
104
- * `noun` names what `meta.count` counts ("result(s)", "edge(s)").
105
- */
106
- export declare function formatRecordPage(page: RecordPage, noun: string): {
107
- type: 'text';
108
- text: string;
109
- }[];
110
- /**
111
- * The enrichment trailer's bytes, minus the service-written `budget` line. Fields render as the
112
- * framework renders them for these tools: `echo` under its `Query` label, `totalCount` under
113
- * `totalLabel`, and `notice` as a block quote, joined after a leading blank line.
114
- */
115
- export declare function trailerTextBytes(enrichment: PageEnrichment): number;
116
- /**
117
- * Both surfaces' bytes for a page frame — the page with no records — plus the enrichment the
118
- * handler writes and the allowance for the service's `budget` field.
119
- */
120
- export declare function measurePageFrame(frame: RecordPage, noun: string, enrichment: PageEnrichment): SurfaceBytes;
121
- export interface FitRecordsRequest {
122
- entityType: EntityType;
123
- measureFrame: FrameMeasure;
124
- /**
125
- * `list` pages cut whole records and check the 100-author cap; a `lookup` holds one record
126
- * and checks the 5,000-author storage cap.
127
- */
128
- path: 'list' | 'lookup';
129
- records: readonly EntityRecord[];
130
- /** The caller's `select`, repeated in the omitted-records call. */
131
- select: readonly string[] | undefined;
132
- }
133
- /**
134
- * Fit a page of records to the budget. Keeps the longest prefix whose records, charged
135
- * `max(JSON bytes, rendered bytes)` each, fit beside the page frame; the rest become `omitted`.
136
- * When even the first record does not fit alone, its largest arrays are windowed instead.
137
- * Returns new arrays and, for a windowed record, a new record — never the caller's objects
138
- * mutated.
139
- */
140
- export declare function fitRecordsToBudget(request: FitRecordsRequest): BudgetedPage;
141
- export interface FitSliceRequest {
142
- entityType: EntityType;
143
- /** Record key of the array to page (a `select` alias already resolved); must hold an array. */
144
- field: string;
145
- measureFrame: FrameMeasure;
146
- /** Requested start index; past the end yields an empty, final window. */
147
- offset: number;
148
- /** The record from a one-field projection: `id`, `display_name`, and `field`. */
149
- record: EntityRecord;
150
- }
151
- /**
152
- * Fit one array window of an `id` lookup to the budget: the elements of `field` from `offset`,
153
- * as many as fit. A window holds at least one element whenever any remain, so a caller walking
154
- * the array always advances; when that one element alone does not fit, the response runs over
155
- * the budget and is flagged `over_budget`.
156
- */
157
- export declare function fitSliceToBudget(request: FitSliceRequest): BudgetedPage;
158
- export {};
159
- //# sourceMappingURL=response-budget.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"response-budget.d.ts","sourceRoot":"","sources":["../../../src/mcp-server/tools/response-budget.ts"],"names":[],"mappings":"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"}