@cyanheads/mcp-ts-core 0.6.5 → 0.6.7

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 (44) hide show
  1. package/CLAUDE.md +2 -2
  2. package/README.md +19 -27
  3. package/changelog/0.6.x/0.6.6.md +29 -0
  4. package/changelog/0.6.x/0.6.7.md +22 -0
  5. package/changelog/{unreleased.md → template.md} +12 -1
  6. package/dist/cli/init.js +1 -2
  7. package/dist/cli/init.js.map +1 -1
  8. package/dist/config/index.d.ts +3 -0
  9. package/dist/config/index.d.ts.map +1 -1
  10. package/dist/config/index.js +11 -0
  11. package/dist/config/index.js.map +1 -1
  12. package/dist/core/serverManifest.d.ts +8 -0
  13. package/dist/core/serverManifest.d.ts.map +1 -1
  14. package/dist/core/serverManifest.js +1 -0
  15. package/dist/core/serverManifest.js.map +1 -1
  16. package/dist/core/worker.d.ts +1 -0
  17. package/dist/core/worker.d.ts.map +1 -1
  18. package/dist/core/worker.js +1 -0
  19. package/dist/core/worker.js.map +1 -1
  20. package/dist/mcp-server/transports/http/landing-page.d.ts.map +1 -1
  21. package/dist/mcp-server/transports/http/landing-page.js +1 -2
  22. package/dist/mcp-server/transports/http/landing-page.js.map +1 -1
  23. package/dist/mcp-server/transports/http/protectedResourceMetadata.js +1 -1
  24. package/dist/mcp-server/transports/http/protectedResourceMetadata.js.map +1 -1
  25. package/dist/mcp-server/transports/http/serverCard.js +1 -1
  26. package/dist/mcp-server/transports/http/serverCard.js.map +1 -1
  27. package/package.json +2 -2
  28. package/scripts/build-changelog.ts +1 -1
  29. package/scripts/tree.ts +1 -1
  30. package/skills/add-tool/SKILL.md +11 -1
  31. package/skills/design-mcp-server/SKILL.md +147 -48
  32. package/skills/field-test/SKILL.md +3 -3
  33. package/skills/polish-docs-meta/SKILL.md +5 -5
  34. package/skills/polish-docs-meta/references/readme.md +7 -7
  35. package/skills/release/SKILL.md +4 -4
  36. package/templates/.env.example +1 -0
  37. package/templates/.github/ISSUE_TEMPLATE/bug_report.yml +1 -1
  38. package/templates/AGENTS.md +2 -2
  39. package/templates/CLAUDE.md +2 -2
  40. package/templates/_.dockerignore +2 -1
  41. package/templates/_.gitignore +3 -2
  42. package/templates/changelog/{unreleased.md → template.md} +1 -1
  43. package/templates/package.json +1 -1
  44. package/templates/src/index.ts +4 -2
@@ -101,9 +101,9 @@ Seven tools for working with Acme data:
101
101
 
102
102
  | Tool Name | Description |
103
103
  |:----------|:------------|
104
- | `search_projects` | Search projects by name, status, or team. |
105
- | `create_task` | Create a new task in a project. |
106
- | `get_task` | Fetch one or more tasks by ID, with full or summary data. |
104
+ | `acme_search_projects` | Search projects by name, status, or team. |
105
+ | `acme_create_task` | Create a new task in a project. |
106
+ | `acme_get_task` | Fetch one or more tasks by ID, with full or summary data. |
107
107
  ```
108
108
 
109
109
  **Per-tool subsections:**
@@ -115,7 +115,7 @@ Below the table, add a `### tool_name` subsection for each tool that has meaning
115
115
  - Separate subsections with `---` horizontal rules
116
116
 
117
117
  ```markdown
118
- ### `search_projects`
118
+ ### `acme_search_projects`
119
119
 
120
120
  Search for projects using free-text queries and filters.
121
121
 
@@ -124,11 +124,11 @@ Search for projects using free-text queries and filters.
124
124
  - Pagination (up to 100 per page) and sorting
125
125
  - Field selection to limit response size
126
126
 
127
- [View detailed examples](./examples/search_projects.md)
127
+ [View detailed examples](./examples/acme_search_projects.md)
128
128
 
129
129
  ---
130
130
 
131
- ### `get_task`
131
+ ### `acme_get_task`
132
132
 
133
133
  Fetch one or more tasks by ID, with full data or concise summaries.
134
134
 
@@ -137,7 +137,7 @@ Fetch one or more tasks by ID, with full data or concise summaries.
137
137
  - Partial success reporting when some tasks in a batch fail
138
138
  ```
139
139
 
140
- Skip the per-tool subsection for simple tools where the table description says everything (e.g., a `get_field_values` lookup tool).
140
+ Skip the per-tool subsection for simple tools where the table description says everything (e.g., an `acme_get_field_values` lookup tool).
141
141
 
142
142
  ### Resources and Prompts (combined)
143
143
 
@@ -36,12 +36,12 @@ Fix any mismatches. A grep for the **old** version is the fastest way to find st
36
36
 
37
37
  ### 3. Finalize the Per-Version Changelog File
38
38
 
39
- The changelog is directory-based, grouped by minor series using the `.x` semver-wildcard convention: per-version files live at `changelog/<major.minor>.x/<version>.md` (e.g. `changelog/0.5.x/0.5.4.md`), and `CHANGELOG.md` is an auto-generated rollup (`bun run changelog:build`). `changelog/unreleased.md` is a **pristine format reference** — never edited, never moved, never renamed. At release time, you're authoring (or finalizing) the per-version file for the version being shipped.
39
+ The changelog is directory-based, grouped by minor series using the `.x` semver-wildcard convention: per-version files live at `changelog/<major.minor>.x/<version>.md` (e.g. `changelog/0.5.x/0.5.4.md`), and `CHANGELOG.md` is an auto-generated rollup (`bun run changelog:build`). `changelog/template.md` is a **pristine format reference** — never edited, never moved, never renamed. At release time, you're authoring (or finalizing) the per-version file for the version being shipped.
40
40
 
41
41
  Create or finalize `changelog/<series>/<version>.md`:
42
42
 
43
43
  1. Determine the series: `0.5.5` → `0.5.x/`. Create the directory if it doesn't exist: `mkdir -p changelog/<series>`
44
- 2. If the file doesn't exist yet, scaffold it by copying the structure of `changelog/unreleased.md` into the new path. Do **not** `git mv` or otherwise rename `unreleased.md` itself — it stays where it is.
44
+ 2. If the file doesn't exist yet, scaffold it by copying the structure of `changelog/template.md` into the new path. Do **not** `git mv` or otherwise rename `template.md` itself — it stays where it is.
45
45
  3. Set the H1: `# <version> — <date>` (em-dash, ISO date)
46
46
  4. **Fill in the frontmatter** at the top of the file:
47
47
  - `summary:` — one-line headline, ≤250 chars, no markdown. Write it like a GitHub Release title. Required.
@@ -53,7 +53,7 @@ Create or finalize `changelog/<series>/<version>.md`:
53
53
  - **Issue/PR references use full URLs**, not bare `#NN`. GitHub's auto-link only renders inside its own UI; these files are read from `node_modules` too, where bare `#NN` is dead text. Use `[#38](https://github.com/<owner>/<repo>/issues/38)` (or `/pull/NN` for PRs). Only link numbers verified via `gh issue view NN` / `gh pr view NN` — never speculate on future numbers, since GitHub will happily resolve `#42` to whatever unrelated item already owns 42 and pull its title into timeline previews.
54
54
  6. Regenerate the rollup: `bun run changelog:build` — warnings about missing summaries are expected during the legacy-file backfill period but should not include this release
55
55
 
56
- Never hand-edit `CHANGELOG.md` — it's a build artifact. Devcheck's `Changelog Sync` step will fail if it drifts. Never edit `changelog/unreleased.md` — it's the format reference, not a worksheet.
56
+ Never hand-edit `CHANGELOG.md` — it's a build artifact. Devcheck's `Changelog Sync` step will fail if it drifts. Never edit `changelog/template.md` — it's the format reference, not a worksheet.
57
57
 
58
58
  ### 4. Verify README.md
59
59
 
@@ -130,7 +130,7 @@ mcp-publisher publish
130
130
 
131
131
  - [ ] Version consistent across all files (package.json, server.json ×3, CLAUDE.md, README.md, templates)
132
132
  - [ ] No stale old-version references found in repo
133
- - [ ] `changelog/<major.minor>.x/<version>.md` created/finalized with concrete version, date, and frontmatter; `CHANGELOG.md` regenerated via `bun run changelog:build`; `changelog/unreleased.md` untouched
133
+ - [ ] `changelog/<major.minor>.x/<version>.md` created/finalized with concrete version, date, and frontmatter; `CHANGELOG.md` regenerated via `bun run changelog:build`; `changelog/template.md` untouched
134
134
  - [ ] README.md current — feature counts, badges, descriptions, examples
135
135
  - [ ] Modified skill versions bumped in YAML frontmatter
136
136
  - [ ] `docs/tree.md` current (if structure changed)
@@ -3,6 +3,7 @@
3
3
  # MCP_HTTP_PORT=3010 # HTTP port (default: 3010)
4
4
  # MCP_HTTP_HOST=localhost # HTTP host (default: localhost)
5
5
  # MCP_HTTP_ENDPOINT_PATH=/mcp # HTTP endpoint path (default: /mcp)
6
+ # MCP_PUBLIC_URL= # Public origin behind a TLS-terminating proxy (e.g. https://mcp.example.com)
6
7
 
7
8
  # ── Auth ──────────────────────────────────────────────────────────────
8
9
  # MCP_AUTH_MODE=none # none | jwt | oauth (default: none)
@@ -19,7 +19,7 @@ body:
19
19
  id: framework-version
20
20
  attributes:
21
21
  label: mcp-ts-core version
22
- placeholder: "0.1.29"
22
+ placeholder: "0.x.y"
23
23
  validations:
24
24
  required: true
25
25
 
@@ -1,7 +1,7 @@
1
1
  # Agent Protocol
2
2
 
3
3
  **Server:** {{PACKAGE_NAME}}
4
- **Version:** 0.1.1
4
+ **Version:** 0.1.0
5
5
  **Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core)
6
6
 
7
7
  > **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.
@@ -279,7 +279,7 @@ When you complete a skill's checklist, check the boxes and add a completion time
279
279
 
280
280
  ## Changelog
281
281
 
282
- Directory-based, grouped by minor series using the `.x` semver-wildcard convention. Source of truth is `changelog/<major.minor>.x/<version>.md` (e.g. `changelog/0.1.x/0.1.0.md`) — one file per released version, shipped in the npm package. At release time, author the per-version file with a concrete version and date, then run `npm run changelog:build` to regenerate the rollup. `changelog/unreleased.md` is a **pristine format reference** — never edited, never renamed, never moved. Read it to remember the frontmatter + section layout when scaffolding a new per-version file. `CHANGELOG.md` is a **navigation index** (header + link + one-line summary per version), regenerated by `npm run changelog:build`. Devcheck hard-fails on drift. Never hand-edit `CHANGELOG.md`.
282
+ Directory-based, grouped by minor series using the `.x` semver-wildcard convention. Source of truth is `changelog/<major.minor>.x/<version>.md` (e.g. `changelog/0.1.x/0.1.0.md`) — one file per released version, shipped in the npm package. At release time, author the per-version file with a concrete version and date, then run `npm run changelog:build` to regenerate the rollup. `changelog/template.md` is a **pristine format reference** — never edited, never renamed, never moved. Read it to remember the frontmatter + section layout when scaffolding a new per-version file. `CHANGELOG.md` is a **navigation index** (header + link + one-line summary per version), regenerated by `npm run changelog:build`. Devcheck hard-fails on drift. Never hand-edit `CHANGELOG.md`.
283
283
 
284
284
  Each per-version file opens with YAML frontmatter:
285
285
 
@@ -1,7 +1,7 @@
1
1
  # Agent Protocol
2
2
 
3
3
  **Server:** {{PACKAGE_NAME}}
4
- **Version:** 0.1.1
4
+ **Version:** 0.1.0
5
5
  **Framework:** [@cyanheads/mcp-ts-core](https://www.npmjs.com/package/@cyanheads/mcp-ts-core)
6
6
 
7
7
  > **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.
@@ -279,7 +279,7 @@ When you complete a skill's checklist, check the boxes and add a completion time
279
279
 
280
280
  ## Changelog
281
281
 
282
- Directory-based, grouped by minor series using the `.x` semver-wildcard convention. Source of truth is `changelog/<major.minor>.x/<version>.md` (e.g. `changelog/0.1.x/0.1.0.md`) — one file per released version, shipped in the npm package. At release time, author the per-version file with a concrete version and date, then run `npm run changelog:build` to regenerate the rollup. `changelog/unreleased.md` is a **pristine format reference** — never edited, never renamed, never moved. Read it to remember the frontmatter + section layout when scaffolding a new per-version file. `CHANGELOG.md` is a **navigation index** (header + link + one-line summary per version), regenerated by `npm run changelog:build`. Devcheck hard-fails on drift. Never hand-edit `CHANGELOG.md`.
282
+ Directory-based, grouped by minor series using the `.x` semver-wildcard convention. Source of truth is `changelog/<major.minor>.x/<version>.md` (e.g. `changelog/0.1.x/0.1.0.md`) — one file per released version, shipped in the npm package. At release time, author the per-version file with a concrete version and date, then run `npm run changelog:build` to regenerate the rollup. `changelog/template.md` is a **pristine format reference** — never edited, never renamed, never moved. Read it to remember the frontmatter + section layout when scaffolding a new per-version file. `CHANGELOG.md` is a **navigation index** (header + link + one-line summary per version), regenerated by `npm run changelog:build`. Devcheck hard-fails on drift. Never hand-edit `CHANGELOG.md`.
283
283
 
284
284
  Each per-version file opens with YAML frontmatter:
285
285
 
@@ -194,4 +194,5 @@ docs/api/
194
194
  # =============================================================================
195
195
  repomix-output*
196
196
  duckdata/
197
- .claude
197
+ .claude
198
+ .agents
@@ -8,8 +8,9 @@ Thumbs.db
8
8
  # IDE AND EDITOR FILES
9
9
  # =============================================================================
10
10
  .idea/
11
- .vscode/!settings.json
12
- .vscode/!extensions.json
11
+ .vscode/*
12
+ !.vscode/settings.json
13
+ !.vscode/extensions.json
13
14
  *.swp
14
15
  *.swo
15
16
  *~
@@ -16,7 +16,7 @@ summary: ""
16
16
  breaking: false
17
17
  ---
18
18
 
19
- # Unreleased
19
+ # <version> — YYYY-MM-DD
20
20
 
21
21
  <!--
22
22
  FORMAT REFERENCE — do not edit this file. It exists so the per-version file
@@ -56,7 +56,7 @@
56
56
  },
57
57
  "devDependencies": {
58
58
  "@biomejs/biome": "^2.4.7",
59
- "@types/node": "^25.5.0",
59
+ "@types/node": "^25.6.0",
60
60
  "ignore": "^7.0.5",
61
61
  "tsc-alias": "^1.8.16",
62
62
  "tsx": "^4.19.0",
@@ -6,11 +6,13 @@
6
6
 
7
7
  import { createApp } from '@cyanheads/mcp-ts-core';
8
8
  import { echoTool } from './mcp-server/tools/definitions/echo.tool.js';
9
+ import { echoAppTool } from './mcp-server/tools/definitions/echo-app.app-tool.js';
9
10
  import { echoResource } from './mcp-server/resources/definitions/echo.resource.js';
11
+ import { echoAppUiResource } from './mcp-server/resources/definitions/echo-app-ui.app-resource.js';
10
12
  import { echoPrompt } from './mcp-server/prompts/definitions/echo.prompt.js';
11
13
 
12
14
  await createApp({
13
- tools: [echoTool],
14
- resources: [echoResource],
15
+ tools: [echoTool, echoAppTool],
16
+ resources: [echoResource, echoAppUiResource],
15
17
  prompts: [echoPrompt],
16
18
  });