@cyanheads/mcp-ts-core 0.6.3 → 0.6.6
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/README.md +19 -17
- package/changelog/0.6.x/0.6.4.md +26 -0
- package/changelog/0.6.x/0.6.5.md +20 -0
- package/changelog/0.6.x/0.6.6.md +29 -0
- package/changelog/{unreleased.md → template.md} +12 -1
- package/dist/config/index.d.ts +3 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +11 -0
- package/dist/config/index.js.map +1 -1
- package/dist/core/serverManifest.d.ts +8 -0
- package/dist/core/serverManifest.d.ts.map +1 -1
- package/dist/core/serverManifest.js +1 -0
- package/dist/core/serverManifest.js.map +1 -1
- package/dist/core/worker.d.ts +1 -0
- package/dist/core/worker.d.ts.map +1 -1
- package/dist/core/worker.js +1 -0
- package/dist/core/worker.js.map +1 -1
- package/dist/mcp-server/transports/http/landing-page.d.ts.map +1 -1
- package/dist/mcp-server/transports/http/landing-page.js +16 -17
- package/dist/mcp-server/transports/http/landing-page.js.map +1 -1
- package/dist/mcp-server/transports/http/protectedResourceMetadata.js +1 -1
- package/dist/mcp-server/transports/http/protectedResourceMetadata.js.map +1 -1
- package/dist/mcp-server/transports/http/serverCard.js +1 -1
- package/dist/mcp-server/transports/http/serverCard.js.map +1 -1
- package/package.json +7 -7
- package/scripts/build-changelog.ts +1 -1
- package/scripts/tree.ts +1 -1
- package/skills/add-tool/SKILL.md +11 -1
- package/skills/design-mcp-server/SKILL.md +147 -48
- package/skills/field-test/SKILL.md +3 -3
- package/skills/polish-docs-meta/SKILL.md +5 -5
- package/skills/polish-docs-meta/references/readme.md +7 -7
- package/skills/release/SKILL.md +4 -4
- package/templates/.env.example +1 -0
- package/templates/AGENTS.md +1 -1
- package/templates/CLAUDE.md +1 -1
- package/templates/changelog/{unreleased.md → template.md} +1 -1
|
@@ -4,7 +4,7 @@ description: >
|
|
|
4
4
|
Finalize documentation and project metadata for a ship-ready MCP server. Use after implementation is complete, tests pass, and devcheck is clean. Safe to run at any stage — each step checks current state and only acts on what still needs work.
|
|
5
5
|
metadata:
|
|
6
6
|
author: cyanheads
|
|
7
|
-
version: "1.
|
|
7
|
+
version: "1.7"
|
|
8
8
|
audience: external
|
|
9
9
|
type: workflow
|
|
10
10
|
---
|
|
@@ -129,13 +129,13 @@ Two patterns are supported — pick one and stay consistent.
|
|
|
129
129
|
|
|
130
130
|
Both are acceptable. The template scaffolds the directory-based structure by default; collapse to monolithic only if the rollup tooling is pure ceremony for this project.
|
|
131
131
|
|
|
132
|
-
**Directory-based** — per-version files live at `changelog/<major.minor>.x/<version>.md` (e.g. `changelog/0.1.x/0.1.0.md`), and `CHANGELOG.md` is a rollup regenerated by `bun run changelog:build`. Devcheck's `Changelog Sync` step enforces drift protection. `changelog/
|
|
132
|
+
**Directory-based** — per-version files live at `changelog/<major.minor>.x/<version>.md` (e.g. `changelog/0.1.x/0.1.0.md`), and `CHANGELOG.md` is a rollup regenerated by `bun run changelog:build`. Devcheck's `Changelog Sync` step enforces drift protection. `changelog/template.md` is a **pristine format reference** — never edited, never moved, never renamed. Read it to remember the frontmatter + section layout when scaffolding a new per-version file.
|
|
133
133
|
|
|
134
134
|
If the structure doesn't exist yet:
|
|
135
135
|
|
|
136
136
|
1. Make the `changelog/` directory
|
|
137
|
-
2. Create `changelog/
|
|
138
|
-
3. If the server already has a shipped version (e.g. 0.1.0), create the series directory and initial entry: `changelog/0.1.x/0.1.0.md` with H1 `# 0.1.0 — YYYY-MM-DD`, concrete version and date — do **not** rename or move `
|
|
137
|
+
2. Create `changelog/template.md` once from the template (frontmatter stub + H1 `# <version> — YYYY-MM-DD` placeholder + empty Added/Changed/Fixed sections) — this file is a format reference only and stays as-is after creation
|
|
138
|
+
3. If the server already has a shipped version (e.g. 0.1.0), create the series directory and initial entry: `changelog/0.1.x/0.1.0.md` with H1 `# 0.1.0 — YYYY-MM-DD`, concrete version and date — do **not** rename or move `template.md` to create the version file; author the per-version file directly
|
|
139
139
|
4. Run `bun run changelog:build` to generate `CHANGELOG.md`
|
|
140
140
|
|
|
141
141
|
Per-version file format:
|
|
@@ -157,7 +157,7 @@ Optional narrative intro (1-3 sentences).
|
|
|
157
157
|
|
|
158
158
|
**Frontmatter:** `summary` is required (powers the CHANGELOG.md index), `breaking` is optional and defaults to `false` (set `true` for releases requiring consumer code changes).
|
|
159
159
|
|
|
160
|
-
Never hand-edit `CHANGELOG.md` when using this pattern — it's a build artifact. Never edit `changelog/
|
|
160
|
+
Never hand-edit `CHANGELOG.md` when using this pattern — it's a build artifact. Never edit `changelog/template.md` — it's the format reference. Never use `[Unreleased]` as a version header in a released file.
|
|
161
161
|
|
|
162
162
|
**Monolithic** — maintain `CHANGELOG.md` directly in [Keep a Changelog](https://keepachangelog.com/) format. To collapse from the template default: delete the `changelog/` directory, remove `changelog:build` and `changelog:check` from `package.json` scripts (and from `devcheck.config.json` if referenced), and drop `"changelog/"` from the `files` array. The `release` skill's directory-specific steps then don't apply — just edit `CHANGELOG.md` and bump version at release time.
|
|
163
163
|
|
|
@@ -101,9 +101,9 @@ Seven tools for working with Acme data:
|
|
|
101
101
|
|
|
102
102
|
| Tool Name | Description |
|
|
103
103
|
|:----------|:------------|
|
|
104
|
-
| `
|
|
105
|
-
| `
|
|
106
|
-
| `
|
|
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
|
-
### `
|
|
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/
|
|
127
|
+
[View detailed examples](./examples/acme_search_projects.md)
|
|
128
128
|
|
|
129
129
|
---
|
|
130
130
|
|
|
131
|
-
### `
|
|
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.,
|
|
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
|
|
package/skills/release/SKILL.md
CHANGED
|
@@ -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/
|
|
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/
|
|
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/
|
|
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/
|
|
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)
|
package/templates/.env.example
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)
|
package/templates/AGENTS.md
CHANGED
|
@@ -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/
|
|
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
|
|
package/templates/CLAUDE.md
CHANGED
|
@@ -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/
|
|
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
|
|