@map-audio/pam-mcp-server 1.22.0 → 1.27.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 (52) hide show
  1. package/README.md +33 -6
  2. package/dist/audioAnalysis.d.ts +1 -1
  3. package/dist/audioAnalysis.js +3 -4
  4. package/dist/audioAnalysis.js.map +1 -1
  5. package/dist/bridge.d.ts +4 -0
  6. package/dist/bridge.js +53 -160
  7. package/dist/bridge.js.map +1 -1
  8. package/dist/drumSynth.js +1 -1
  9. package/dist/drumSynth.js.map +1 -1
  10. package/dist/drumSynthEngines.json +1 -1
  11. package/dist/fgemma-runner.js +20 -4
  12. package/dist/fgemma-runner.js.map +1 -1
  13. package/dist/generated/kvWriteOptions.d.ts +20 -0
  14. package/dist/generated/kvWriteOptions.js +45 -0
  15. package/dist/generated/kvWriteOptions.js.map +1 -0
  16. package/dist/generated/variationSnapshot.d.ts +8 -4
  17. package/dist/generated/variationSnapshot.js +6 -23
  18. package/dist/generated/variationSnapshot.js.map +1 -1
  19. package/dist/generativePlayerPresets.json +70 -0
  20. package/dist/generativePlayers.json +134 -0
  21. package/dist/manifest-cell1.json +2 -2
  22. package/dist/manifest-mfx.json +178 -37
  23. package/dist/manifest-msq.json +9564 -0
  24. package/dist/manifest.d.ts +1 -1
  25. package/dist/manifest.js +17 -9
  26. package/dist/manifest.js.map +1 -1
  27. package/dist/manifest.json +11227 -2841
  28. package/dist/mfxCombos.js +1 -1
  29. package/dist/mfxCombos.js.map +1 -1
  30. package/dist/midiFile.d.ts +21 -0
  31. package/dist/midiFile.js +108 -0
  32. package/dist/midiFile.js.map +1 -0
  33. package/dist/mixAssist.d.ts +35 -0
  34. package/dist/mixAssist.js +247 -19
  35. package/dist/mixAssist.js.map +1 -1
  36. package/dist/patternLanes.d.ts +40 -0
  37. package/dist/patternLanes.js +108 -0
  38. package/dist/patternLanes.js.map +1 -0
  39. package/dist/players.d.ts +89 -0
  40. package/dist/players.js +235 -0
  41. package/dist/players.js.map +1 -0
  42. package/dist/presetSave.d.ts +8 -0
  43. package/dist/presetSave.js +35 -0
  44. package/dist/presetSave.js.map +1 -1
  45. package/dist/sampleSlicing.d.ts +12 -0
  46. package/dist/sampleSlicing.js +78 -0
  47. package/dist/sampleSlicing.js.map +1 -0
  48. package/dist/server.js +1828 -525
  49. package/dist/server.js.map +1 -1
  50. package/dist/targetDenylist.json +20 -0
  51. package/dist/variationSessionKeys.json +34 -1
  52. package/package.json +5 -4
@@ -0,0 +1,20 @@
1
+ {
2
+ "exact": [
3
+ "pitchShift",
4
+ "slice",
5
+ "stretch",
6
+ "patternSwing",
7
+ "patternDirection",
8
+ "envAttack",
9
+ "envRelease",
10
+ "envGain"
11
+ ],
12
+ "prefixes": [
13
+ "patternLength",
14
+ "patternSpeed",
15
+ "plugin_",
16
+ "pluginFx_",
17
+ "ccOut"
18
+ ],
19
+ "unreachable": []
20
+ }
@@ -1,5 +1,5 @@
1
1
  {
2
- "_doc": "GENERATED by scripts/generate-variation-session-keys.mjs from interface/src/dsp/variationSessionKeys.ts — do not hand-edit. Keys a variation snapshot must NOT carry. Every producer of a variation (UI, MCP, MIDI, Song Mode) excludes this set, so a variation saved through any path holds the same bytes. Generated for 8 cells; a subset product over-excludes, which is safe.",
2
+ "_doc": "GENERATED by scripts/generate-variation-session-keys.mjs from interface/src/utils/variationSessionKeys.ts — do not hand-edit. Keys a variation snapshot must NOT carry. Every producer of a variation (UI, MCP, MIDI, Song Mode) excludes this set, so a variation saved through any path holds the same bytes. `transientDispatchKeys` is the separate in-flight dispatch group (fade shape, render control, delta origin) — never persisted, in a slot or a preset file. Generated for 8 cells; a subset product over-excludes, which is safe.",
3
3
  "schema": 1,
4
4
  "maxCellCount": 8,
5
5
  "visualParamIds": [
@@ -23,6 +23,19 @@
23
23
  "visualWaveModulate"
24
24
  ],
25
25
  "lfoGeneratorCount": 6,
26
+ "transientDispatchKeys": [
27
+ "__allowStandaloneRoutingChange",
28
+ "__deltaOrigin__",
29
+ "__fadeInMs__",
30
+ "__fadeMs__",
31
+ "__forceRender__",
32
+ "__hostedPluginParamInfo",
33
+ "__isLooperVariationDelta__",
34
+ "__noRender__",
35
+ "__skipRender__",
36
+ "__variationApply__",
37
+ "__variationDiff__"
38
+ ],
26
39
  "looper": [
27
40
  "looperCrossfade",
28
41
  "looperCrossfadeMode",
@@ -44,6 +57,14 @@
44
57
  "loopers"
45
58
  ],
46
59
  "global": [
60
+ "cell1_patternSelect",
61
+ "cell2_patternSelect",
62
+ "cell3_patternSelect",
63
+ "cell4_patternSelect",
64
+ "cell5_patternSelect",
65
+ "cell6_patternSelect",
66
+ "cell7_patternSelect",
67
+ "cell8_patternSelect",
47
68
  "hqMode",
48
69
  "interfaceCache",
49
70
  "modMatrixSimd",
@@ -51,8 +72,10 @@
51
72
  "previewSamplePath",
52
73
  "snapshotRateHz",
53
74
  "songMode",
75
+ "variationFadeMs",
54
76
  "variationMorphBars",
55
77
  "variationMorphMode",
78
+ "variationSelect",
56
79
  "variationTransition",
57
80
  "variations",
58
81
  "volume"
@@ -68,6 +91,14 @@
68
91
  "masterMixRideSpeed"
69
92
  ],
70
93
  "all": [
94
+ "cell1_patternSelect",
95
+ "cell2_patternSelect",
96
+ "cell3_patternSelect",
97
+ "cell4_patternSelect",
98
+ "cell5_patternSelect",
99
+ "cell6_patternSelect",
100
+ "cell7_patternSelect",
101
+ "cell8_patternSelect",
71
102
  "hqMode",
72
103
  "interfaceCache",
73
104
  "looperCrossfade",
@@ -101,8 +132,10 @@
101
132
  "previewSamplePath",
102
133
  "snapshotRateHz",
103
134
  "songMode",
135
+ "variationFadeMs",
104
136
  "variationMorphBars",
105
137
  "variationMorphMode",
138
+ "variationSelect",
106
139
  "variationTransition",
107
140
  "variations",
108
141
  "volume"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@map-audio/pam-mcp-server",
3
- "version": "1.22.0",
3
+ "version": "1.27.0",
4
4
  "description": "MCP server for controlling the PAM audio plugin from AI agents (Claude Desktop, Claude Code, Cursor, etc.)",
5
5
  "license": "MIT",
6
6
  "author": "Can Ince <can@ince.io>",
@@ -28,7 +28,7 @@
28
28
  ],
29
29
  "type": "module",
30
30
  "bin": {
31
- "pam-mcp": "./dist/server.js"
31
+ "pam-mcp": "dist/server.js"
32
32
  },
33
33
  "files": [
34
34
  "dist",
@@ -47,12 +47,13 @@
47
47
  "check:fgemma": "node scripts/check-fgemma-format.mjs",
48
48
  "check:surface": "node scripts/check-tool-surface.mjs",
49
49
  "check:mfx-surface": "node scripts/check-mfx-surface.mjs",
50
- "prepublishOnly": "npm run build && npm run check:surface && npm run check:mfx-surface && npm run check:effects && npm run check:parity && npm run check:fgemma",
50
+ "prepublishOnly": "npm run build && npm run check:surface && npm run check:mfx-surface && npm run test:tools && npm run check:effects && npm run check:parity && npm run check:fgemma",
51
51
  "check:effects": "node scripts/check-effect-catalog.mjs",
52
52
  "check:parity": "node scripts/check-parity.mjs",
53
53
  "corpus-ranges": "node scripts/derive-corpus-ranges.mjs",
54
54
  "corpus-fingerprints": "npx tsx scripts/derive-corpus-fingerprints.ts",
55
- "score-batch": "npx tsx scripts/score-preset-batch.ts"
55
+ "score-batch": "npx tsx scripts/score-preset-batch.ts",
56
+ "test:tools": "node --import tsx --test scripts/test-bridge.mjs scripts/test-agent-tools.mjs scripts/test-mfx-tools.mjs scripts/test-msq-tools.mjs scripts/test-preset-save-tools.mjs scripts/test-player-tools.mjs scripts/test-sampler-tools.mjs scripts/test-contract-tools.mjs scripts/test-pattern-lanes.mjs"
56
57
  },
57
58
  "dependencies": {
58
59
  "@modelcontextprotocol/sdk": "^1.29.0",