@cyanheads/mcp-ts-core 0.9.2 → 0.9.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 +3 -3
- package/README.md +1 -1
- package/changelog/0.9.x/0.9.3.md +21 -0
- package/changelog/0.9.x/0.9.4.md +18 -0
- package/dist/config/index.d.ts +3 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +13 -0
- package/dist/config/index.js.map +1 -1
- package/dist/core/app.d.ts.map +1 -1
- package/dist/core/app.js +4 -0
- package/dist/core/app.js.map +1 -1
- package/dist/core/gcPressure.d.ts +28 -0
- package/dist/core/gcPressure.d.ts.map +1 -0
- package/dist/core/gcPressure.js +69 -0
- package/dist/core/gcPressure.js.map +1 -0
- package/dist/logs/combined.log +7 -7
- package/dist/logs/error.log +5 -5
- package/dist/services/canvas/core/CanvasInstance.d.ts +4 -4
- package/dist/services/canvas/core/CanvasInstance.d.ts.map +1 -1
- package/dist/services/canvas/core/CanvasInstance.js +1 -1
- package/dist/services/canvas/core/CanvasInstance.js.map +1 -1
- package/dist/services/canvas/core/CanvasRegistry.d.ts +4 -4
- package/dist/services/canvas/core/CanvasRegistry.d.ts.map +1 -1
- package/dist/services/canvas/core/CanvasRegistry.js.map +1 -1
- package/dist/services/canvas/core/DataCanvas.d.ts +5 -5
- package/dist/services/canvas/core/DataCanvas.d.ts.map +1 -1
- package/dist/services/canvas/core/DataCanvas.js +5 -5
- package/dist/services/canvas/core/DataCanvas.js.map +1 -1
- package/dist/services/canvas/core/IDataCanvasProvider.d.ts +11 -11
- package/dist/services/canvas/core/IDataCanvasProvider.d.ts.map +1 -1
- package/dist/services/canvas/providers/duckdb/DuckdbProvider.d.ts +11 -11
- package/dist/services/canvas/providers/duckdb/DuckdbProvider.d.ts.map +1 -1
- package/dist/services/canvas/providers/duckdb/DuckdbProvider.js.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/internal/requestContext.d.ts +24 -1
- package/dist/utils/internal/requestContext.d.ts.map +1 -1
- package/dist/utils/internal/requestContext.js.map +1 -1
- package/package.json +1 -1
- package/skills/maintenance/SKILL.md +8 -2
- package/skills/multi-server-orchestration/SKILL.md +5 -4
- package/skills/multi-server-orchestration/references/greenfield-buildout.md +4 -3
- package/skills/multi-server-orchestration/references/maintenance-pass.md +9 -6
- package/skills/multi-server-orchestration/references/{release-pass.md → release-and-publish-pass.md} +13 -11
- package/skills/multi-server-orchestration/references/wrapup-pass.md +171 -0
- package/skills/polish-docs-meta/SKILL.md +1 -1
- package/skills/polish-docs-meta/references/readme.md +37 -25
- package/templates/.env.example +4 -0
- package/templates/AGENTS.md +9 -7
- package/templates/CLAUDE.md +9 -7
|
@@ -7,10 +7,11 @@ Structure and content guide for creating or updating a README for an MCP server
|
|
|
7
7
|
Use this section order. Omit sections that don't apply (e.g., skip Docker/Workers if the server doesn't deploy there).
|
|
8
8
|
|
|
9
9
|
```text
|
|
10
|
-
# {Server Name} ← centered HTML block
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
# {Server Name} ← centered HTML block (h1 + tagline + surface count)
|
|
11
|
+
Info badges ← one centered row — Version, License, Docker, MCP SDK, npm, TypeScript, Bun
|
|
12
|
+
Install badges ← one centered row — Claude Desktop, Cursor, VS Code
|
|
13
|
+
Framework badge ← solo spotlight row — `Built on @cyanheads/mcp-ts-core` (cyan-300 #67E8F9)
|
|
14
|
+
[Public hosted callout if present] ← centered HTML block, directly under the Framework badge
|
|
14
15
|
---
|
|
15
16
|
## Tools ← grouping sentence → summary table → per-tool subsections
|
|
16
17
|
## Resources and prompts (if any) ← single combined table (Type / Name / Description)
|
|
@@ -40,38 +41,49 @@ Centered HTML. The `<h1>` is the server name — use the scoped package name if
|
|
|
40
41
|
|
|
41
42
|
<div align="center">
|
|
42
43
|
|
|
43
|
-
[](./CHANGELOG.md) [](./LICENSE) [](https://github.com/users/cyanheads/packages/container/package/my-mcp-server) [](https://modelcontextprotocol.io/) [](https://www.npmjs.com/package/@cyanheads/my-mcp-server) [](https://www.typescriptlang.org/) [](https://bun.sh/)
|
|
44
45
|
|
|
45
|
-
|
|
46
|
+
</div>
|
|
46
47
|
|
|
47
|
-
|
|
48
|
+
<div align="center">
|
|
49
|
+
|
|
50
|
+
[](https://github.com/cyanheads/my-mcp-server/releases/latest/download/my-mcp-server.mcpb) [](https://cursor.com/en/install-mcp?name=my-mcp-server&config=<BASE64_CONFIG>) [](https://vscode.dev/redirect?url=vscode:mcp/install?<URLENCODED_JSON>)
|
|
51
|
+
|
|
52
|
+
[](https://www.npmjs.com/package/@cyanheads/mcp-ts-core)
|
|
48
53
|
|
|
49
54
|
</div>
|
|
50
55
|
```
|
|
51
56
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
**Badge selection:** All badges use `style=flat-square`. Include what applies — don't add badges for things the server doesn't have:
|
|
57
|
+
See the **Bundling** section of `templates/CLAUDE.md` (or `templates/AGENTS.md`) for how to generate the `<BASE64_CONFIG>` and `<URLENCODED_JSON>` payloads. Omit any install badge whose target doesn't apply (e.g. no `.mcpb` bundle → drop the Claude Desktop badge).
|
|
55
58
|
|
|
56
|
-
|
|
57
|
-
|:------|:----------------|
|
|
58
|
-
| Framework | Always — links to `@cyanheads/mcp-ts-core` on npm. Cyan-300 (`67E8F9`) for dark text. **Solo on its own row** as the spotlight badge. |
|
|
59
|
-
| npm | Published to npm |
|
|
60
|
-
| Docker | Published to ghcr.io or Docker Hub |
|
|
61
|
-
| Version | Always — link to CHANGELOG.md |
|
|
62
|
-
| MCP SDK | Always — show the `@modelcontextprotocol/sdk` version |
|
|
63
|
-
| License | Always |
|
|
64
|
-
| TypeScript | Always |
|
|
65
|
-
| Bun | If using Bun (standard for this framework) |
|
|
66
|
-
| MCP Spec | Optional — rarely included; the SDK badge usually suffices |
|
|
67
|
-
| Status | Optional — Stable, Beta, etc. |
|
|
68
|
-
| Code Coverage | If coverage is tracked |
|
|
59
|
+
The header tagline must match the `package.json` `description`.
|
|
69
60
|
|
|
70
|
-
**
|
|
61
|
+
**Badge selection:** All info badges use `style=flat-square`; install badges use `style=for-the-badge`. Include what applies — don't add badges for things the server doesn't have:
|
|
62
|
+
|
|
63
|
+
| Badge | Row | When to include |
|
|
64
|
+
|:------|:----|:----------------|
|
|
65
|
+
| Version | info | Always — link to `CHANGELOG.md` |
|
|
66
|
+
| License | info | Always |
|
|
67
|
+
| Docker | info | Published to ghcr.io or Docker Hub |
|
|
68
|
+
| MCP SDK | info | Always — show the `@modelcontextprotocol/sdk` version |
|
|
69
|
+
| npm | info | Published to npm |
|
|
70
|
+
| TypeScript | info | Always |
|
|
71
|
+
| Bun | info | If using Bun (standard for this framework) |
|
|
72
|
+
| MCP Spec | info | Optional — rarely included; the SDK badge usually suffices |
|
|
73
|
+
| Status | info | Optional — Stable, Beta, etc. |
|
|
74
|
+
| Code Coverage | info | If coverage is tracked |
|
|
75
|
+
| Install in Claude Desktop | install | Repo publishes an `.mcpb` bundle on GitHub Releases (orange `D97757`, anthropic logo) |
|
|
76
|
+
| Install in Cursor | install | Published to npm — uses the official `cursor://` deep link |
|
|
77
|
+
| Install in VS Code | install | Published to npm — uses the official `vscode:mcp/install` deep link |
|
|
78
|
+
| Framework | spotlight | Always — links to `@cyanheads/mcp-ts-core` on npm. Cyan-300 (`67E8F9`) for dark text. **Solo on its own row.** |
|
|
79
|
+
|
|
80
|
+
**Layout:** three centered `<div>` blocks in a fixed order. (1) **Info row** — one line with all info badges in the order above (release/license/distribution first, then SDK/ecosystem/language). (2) **Install + spotlight block** — install badges on one line, then a blank line, then the Framework badge alone on its own line as the brand link back to the framework. (3) **Public hosted callout** if applicable (see next section). Add a `---` horizontal rule after the whole header block.
|
|
81
|
+
|
|
82
|
+
Omit a whole row when nothing in it applies — e.g. a server with no `.mcpb` bundle and not on npm has no install row at all, so the install + spotlight block collapses to just the Framework badge.
|
|
71
83
|
|
|
72
84
|
### Public Hosted Callout (if present)
|
|
73
85
|
|
|
74
|
-
If a public hosted instance is available, **promote it to a top-level callout** immediately below the badge
|
|
86
|
+
If a public hosted instance is available, **promote it to a top-level callout** in its own centered `<div>` immediately below the Framework badge — don't bury it inside Getting Started. This is the highest-value piece of information for a visitor who wants to try the server with zero install.
|
|
75
87
|
|
|
76
88
|
```html
|
|
77
89
|
<div align="center">
|
package/templates/.env.example
CHANGED
|
@@ -15,6 +15,10 @@
|
|
|
15
15
|
# ── Session ──────────────────────────────────────────────────────────
|
|
16
16
|
# MCP_SESSION_MODE=stateful # stateful | stateless (default: stateful)
|
|
17
17
|
|
|
18
|
+
# ── Memory ───────────────────────────────────────────────────────────
|
|
19
|
+
# MCP_GC_PRESSURE_INTERVAL_MS=0 # Opt-in forced Bun.gc(true) interval, ms (Bun only). Drains old-gen backlog
|
|
20
|
+
# under sustained HTTP load (issue #50). Try 60000 if RSS grows. Default: 0.
|
|
21
|
+
|
|
18
22
|
# ── Logging ───────────────────────────────────────────────────────────
|
|
19
23
|
# MCP_LOG_LEVEL=info # debug | info | notice | warning | error
|
|
20
24
|
|
package/templates/AGENTS.md
CHANGED
|
@@ -318,23 +318,25 @@ When you complete a skill's checklist, check the boxes and add a completion time
|
|
|
318
318
|
| Client | Mechanism |
|
|
319
319
|
|:-------|:----------|
|
|
320
320
|
| Claude Desktop | Browser downloads the `.mcpb` from the latest GitHub Release; OS file handler routes it to Claude Desktop, which opens the install dialog. No deep-link URL scheme yet — this is the canonical path. |
|
|
321
|
-
| Cursor | Official `cursor
|
|
322
|
-
| VS Code / Insiders | Official `vscode:mcp/install?...`
|
|
321
|
+
| Cursor | Official `https://cursor.com/en/install-mcp` endpoint with base64 JSON config. |
|
|
322
|
+
| VS Code / Insiders | Official `vscode:mcp/install?...` deep link, wrapped in `https://vscode.dev/redirect?url=` so GitHub-rendered markdown doesn't strip the non-HTTP scheme. |
|
|
323
323
|
| Claude Code / Codex | CLI only (`claude mcp add` / `codex mcp add`); no URL scheme. |
|
|
324
324
|
|
|
325
325
|
```markdown
|
|
326
326
|
[](https://github.com/<OWNER>/<REPO>/releases/latest/download/<PACKAGE_NAME>.mcpb)
|
|
327
|
-
[](cursor
|
|
328
|
-
[](vscode:mcp/install?<URLENCODED_JSON>)
|
|
327
|
+
[](https://cursor.com/en/install-mcp?name=<PACKAGE_NAME>&config=<BASE64_CONFIG>)
|
|
328
|
+
[](https://vscode.dev/redirect?url=vscode:mcp/install?<URLENCODED_JSON>)
|
|
329
329
|
```
|
|
330
330
|
|
|
331
|
+
Both install links route through HTTPS endpoints (`cursor.com/en/install-mcp` and `vscode.dev/redirect`) — GitHub-rendered markdown strips non-HTTP URL schemes from anchors, so a raw `cursor://` or `vscode:` link won't click through from github.com.
|
|
332
|
+
|
|
331
333
|
Generate the encoded configs (replace `<PACKAGE_NAME>` and adjust the install command — `npx -y …` is the standard shape for an npm-published stdio server):
|
|
332
334
|
|
|
333
335
|
```bash
|
|
334
|
-
# Cursor: base64-encoded JSON
|
|
335
|
-
echo -n '{"command":"npx
|
|
336
|
+
# Cursor: base64-encoded JSON. `command` is a single string (the full invocation), not split into command/args.
|
|
337
|
+
echo -n '{"command":"npx -y <PACKAGE_NAME>"}' | base64
|
|
336
338
|
|
|
337
|
-
# VS Code: URL-encoded JSON
|
|
339
|
+
# VS Code: URL-encoded JSON. Split into command + args.
|
|
338
340
|
node -p 'encodeURIComponent(JSON.stringify({name:"<PACKAGE_NAME>",command:"npx",args:["-y","<PACKAGE_NAME>"]}))'
|
|
339
341
|
```
|
|
340
342
|
|
package/templates/CLAUDE.md
CHANGED
|
@@ -318,23 +318,25 @@ When you complete a skill's checklist, check the boxes and add a completion time
|
|
|
318
318
|
| Client | Mechanism |
|
|
319
319
|
|:-------|:----------|
|
|
320
320
|
| Claude Desktop | Browser downloads the `.mcpb` from the latest GitHub Release; OS file handler routes it to Claude Desktop, which opens the install dialog. No deep-link URL scheme yet — this is the canonical path. |
|
|
321
|
-
| Cursor | Official `cursor
|
|
322
|
-
| VS Code / Insiders | Official `vscode:mcp/install?...`
|
|
321
|
+
| Cursor | Official `https://cursor.com/en/install-mcp` endpoint with base64 JSON config. |
|
|
322
|
+
| VS Code / Insiders | Official `vscode:mcp/install?...` deep link, wrapped in `https://vscode.dev/redirect?url=` so GitHub-rendered markdown doesn't strip the non-HTTP scheme. |
|
|
323
323
|
| Claude Code / Codex | CLI only (`claude mcp add` / `codex mcp add`); no URL scheme. |
|
|
324
324
|
|
|
325
325
|
```markdown
|
|
326
326
|
[](https://github.com/<OWNER>/<REPO>/releases/latest/download/<PACKAGE_NAME>.mcpb)
|
|
327
|
-
[](cursor
|
|
328
|
-
[](vscode:mcp/install?<URLENCODED_JSON>)
|
|
327
|
+
[](https://cursor.com/en/install-mcp?name=<PACKAGE_NAME>&config=<BASE64_CONFIG>)
|
|
328
|
+
[](https://vscode.dev/redirect?url=vscode:mcp/install?<URLENCODED_JSON>)
|
|
329
329
|
```
|
|
330
330
|
|
|
331
|
+
Both install links route through HTTPS endpoints (`cursor.com/en/install-mcp` and `vscode.dev/redirect`) — GitHub-rendered markdown strips non-HTTP URL schemes from anchors, so a raw `cursor://` or `vscode:` link won't click through from github.com.
|
|
332
|
+
|
|
331
333
|
Generate the encoded configs (replace `<PACKAGE_NAME>` and adjust the install command — `npx -y …` is the standard shape for an npm-published stdio server):
|
|
332
334
|
|
|
333
335
|
```bash
|
|
334
|
-
# Cursor: base64-encoded JSON
|
|
335
|
-
echo -n '{"command":"npx
|
|
336
|
+
# Cursor: base64-encoded JSON. `command` is a single string (the full invocation), not split into command/args.
|
|
337
|
+
echo -n '{"command":"npx -y <PACKAGE_NAME>"}' | base64
|
|
336
338
|
|
|
337
|
-
# VS Code: URL-encoded JSON
|
|
339
|
+
# VS Code: URL-encoded JSON. Split into command + args.
|
|
338
340
|
node -p 'encodeURIComponent(JSON.stringify({name:"<PACKAGE_NAME>",command:"npx",args:["-y","<PACKAGE_NAME>"]}))'
|
|
339
341
|
```
|
|
340
342
|
|