fa-mcp-sdk 0.4.41 → 0.4.42

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.
@@ -153,23 +153,77 @@ Identify:
153
153
 
154
154
  ### 4.3 Analyze changes in cli-template files
155
155
 
156
- These directories in the SDK template may have changed:
156
+ The SDK ships a project template at `node_modules/fa-mcp-sdk/cli-template/` (after `yarn add fa-mcp-sdk@<TO>`). This is the **canonical source** for any template files in the project — when generating instructions for the user, always point to this path as the place to copy the latest version from.
157
+
158
+ Map of template file → project file (the CLI `bin/fa-mcp.js` applies these transformations when creating new projects — upgrades must respect the same mapping):
159
+
160
+ | Template (source of truth) | Project (destination) | Notes |
161
+ |-------------------------------------------------------------------|---------------------------------------------|-------|
162
+ | `node_modules/fa-mcp-sdk/cli-template/package.json` | `package.json` | **Merge carefully** — see rule below |
163
+ | `node_modules/fa-mcp-sdk/cli-template/tsconfig.json` | `tsconfig.json` | overwrite (unless customized) |
164
+ | `node_modules/fa-mcp-sdk/cli-template/eslint.config.js` | `eslint.config.js` | overwrite (unless customized) |
165
+ | `node_modules/fa-mcp-sdk/cli-template/CLAUDE.md` | `CLAUDE.md` | merge — project may add custom sections |
166
+ | `node_modules/fa-mcp-sdk/cli-template/jest.config.js` | `jest.config.js` | overwrite (unless customized) |
167
+ | `node_modules/fa-mcp-sdk/cli-template/deploy/` | `deploy/` | merge per file |
168
+ | `node_modules/fa-mcp-sdk/cli-template/.claude/skills/<skill>/` | `.claude/skills/<skill>/` | overwrite unless locally customized |
169
+ | `node_modules/fa-mcp-sdk/cli-template/r/<name>.xml` | `.run/<name>.run.xml` | **Renamed** — see rule below |
170
+ | `node_modules/fa-mcp-sdk/cli-template/gitignore` | `.gitignore` | source has no leading dot |
171
+ | `node_modules/fa-mcp-sdk/cli-template/FA-MCP-SDK-DOC/` | `FA-MCP-SDK-DOC/` | auto-updated by `update-doc.js` |
172
+
173
+ #### Rule: package.json — ADD ONLY new dependencies, do NOT touch anything else
174
+
175
+ The project's `package.json` has evolved since generation (project-specific name, version, scripts, dependencies the team has added). When the SDK's template `package.json` changes:
176
+
177
+ 1. Diff `node_modules/fa-mcp-sdk/cli-template/package.json` (TO) against the same file at the FROM version.
178
+ 2. Identify ONLY dependencies/devDependencies that were **added** (not changed versions of existing ones, not removed).
179
+ 3. The generated guide must instruct the user: "Add these NEW entries to your `package.json` `dependencies`/`devDependencies` sections. Do NOT touch any other field — name, version, scripts, existing deps stay as they are."
180
+ 4. If a dep was **removed** from the template, mention it as informational only — do not instruct deletion from the project (it may still be in use).
181
+ 5. Do NOT suggest overwriting `scripts`, `engines`, `type`, or any other field.
182
+
183
+ Provide a copy-pasteable JSON snippet with only the new keys:
184
+ ```json
185
+ {
186
+ "dependencies": {
187
+ "<new-dep>": "<version>"
188
+ }
189
+ }
190
+ ```
191
+
192
+ #### Rule: `r/` → `.run/` with filename transformation
193
+
194
+ The project has no `r/` directory — it was renamed to `.run/` at project generation, and each `<name>.xml` inside was
195
+ renamed to `<name>.run.xml`. When the SDK template ships new or changed files in `cli-template/r/`:
196
+
197
+ - Source: `node_modules/fa-mcp-sdk/cli-template/r/<name>.xml`
198
+ - Destination: `.run/<name>.run.xml`
199
+ - Action for NEW files: copy `<name>.xml` → `.run/<name>.run.xml`
200
+ - Action for CHANGED files: copy with the same rename, overwriting the existing `.run.xml` file (warn the user to back up any customizations)
201
+ - Action for REMOVED files: informational only — do not delete the project's `.run/<name>.run.xml` automatically
157
202
 
158
- - `node_modules/fa-mcp-sdk/cli-template/` the project template
203
+ The generated guide must show the exact source → destination mapping for each changed file, with the filename transformation applied.
159
204
 
160
- Compare template files with their project counterparts. Key files to check:
205
+ #### Rule: `.claude/skills/<skill>/SKILL.md`
161
206
 
162
- - `package.json` new scripts, dependency changes
163
- - `tsconfig.json` — compiler option changes
164
- - `eslint.config.js` linting rule changes
165
- - `CLAUDE.md` — project instructions updates
166
- - `deploy/` deployment configuration changes
167
- - `jest.config.js` test configuration changes
168
- - `.claude/skills/` new or updated skills
207
+ This is a Claude Code skill that the project owns a copy of. If the SDK ships an updated version, instruct the user to
208
+ overwrite their local copy from `node_modules/fa-mcp-sdk/cli-template/.claude/skills/<skill>/SKILL.md` — unless they've
209
+ customized it locally, in which case manual merge.
210
+
211
+ For any other changed template file, the generated guide must include:
212
+ - The exact source path under `node_modules/fa-mcp-sdk/cli-template/...`
213
+ - The exact destination path in the project
214
+ - Whether to **overwrite** or **merge carefully** (because the project may have local customizations)
169
215
 
170
216
  ### 4.4 Analyze changes in scripts
171
217
 
172
- Check `node_modules/fa-mcp-sdk/scripts/` for new or modified scripts that may need to be copied or adapted in the project.
218
+ The CLI copies scripts from `node_modules/fa-mcp-sdk/scripts/` (NOT from `cli-template/scripts/`) into the project's
219
+ `scripts/` directory, and then removes `copy-static.js` and `publish.sh` (SDK-internal, not needed in downstream projects).
220
+
221
+ - Canonical source: `node_modules/fa-mcp-sdk/scripts/<name>.js`
222
+ - Project destination: `scripts/<name>.js`
223
+ - Exclude from upgrade suggestions: `copy-static.js`, `publish.sh` (SDK-only)
224
+
225
+ The generated guide must specify the exact source path under `node_modules/fa-mcp-sdk/scripts/...` for any script the
226
+ user should copy into their project's `scripts/` directory, and skip the excluded SDK-only scripts.
173
227
 
174
228
  ### 4.5 Analyze changes in core library exports
175
229
 
@@ -242,13 +296,32 @@ Generated: <timestamp>
242
296
 
243
297
  ## Template File Changes
244
298
 
299
+ > **Source of truth**: all updated template files live under `node_modules/fa-mcp-sdk/cli-template/` (after `yarn add fa-mcp-sdk@<TO>`). Copy from there into the project.
300
+
245
301
  ### package.json
246
302
 
247
- <New scripts, changed dependencies, etc.>
303
+ > **Only ADD new dependencies. Do NOT touch anything else** (name, version, scripts, existing deps — all stay untouched). Source: `node_modules/fa-mcp-sdk/cli-template/package.json`.
304
+
305
+ <List only dependencies/devDependencies that were newly added in the SDK template. Provide a copy-pasteable JSON snippet
306
+ with only the new keys. Mention removed deps as informational only — do not instruct deletion.>
307
+
308
+ ### `.run/` (from `cli-template/r/`)
309
+
310
+ <For each changed `cli-template/r/<name>.xml`, show the mapping:>
311
+ - Source: `node_modules/fa-mcp-sdk/cli-template/r/<name>.xml`
312
+ - Destination: `.run/<name>.run.xml` (note the rename)
313
+ - Action: copy + rename (overwrite, warn about local customizations)
314
+
315
+ ### Claude Code Skills (`.claude/skills/`)
316
+
317
+ <For each updated skill, e.g. `upgrade-guide`:>
318
+ - Source: `node_modules/fa-mcp-sdk/cli-template/.claude/skills/<skill-name>/SKILL.md`
319
+ - Destination: `.claude/skills/<skill-name>/SKILL.md`
320
+ - Action: overwrite (unless locally customized — then manual merge)
248
321
 
249
322
  ### Other Template Files
250
323
 
251
- <Changes in tsconfig.json, eslint.config.js, deploy/, etc.>
324
+ <For each: source path under `node_modules/fa-mcp-sdk/cli-template/...`, destination, overwrite or merge.>
252
325
 
253
326
  ## New Features
254
327
 
@@ -272,7 +345,8 @@ Generated: <timestamp>
272
345
 
273
346
  ## Step 6: Assess Impact on the Project
274
347
 
275
- After generating the guide, scan the current project's source code (`src/`, `config/`, `tests/`) to evaluate how the changes specifically affect THIS project. Add a section to the guide:
348
+ After generating the guide, scan the current project's source code (`src/`, `config/`, `tests/`) to evaluate how the
349
+ changes specifically affect THIS project. Add a section to the guide:
276
350
 
277
351
  ```markdown
278
352
  ## Impact Assessment for This Project
@@ -50,7 +50,7 @@
50
50
  "dependencies": {
51
51
  "@modelcontextprotocol/sdk": "^1.29.0",
52
52
  "dotenv": "^17.4.1",
53
- "fa-mcp-sdk": "^0.4.41"
53
+ "fa-mcp-sdk": "^0.4.42"
54
54
  },
55
55
  "devDependencies": {
56
56
  "@types/express": "^5.0.6",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "fa-mcp-sdk",
3
3
  "productName": "FA MCP SDK",
4
- "version": "0.4.41",
4
+ "version": "0.4.42",
5
5
  "description": "Core infrastructure and templates for building Model Context Protocol (MCP) servers with TypeScript",
6
6
  "type": "module",
7
7
  "main": "dist/core/index.js",