dodo-mcp 1.1.0 → 1.2.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 (69) hide show
  1. package/README.md +55 -14
  2. package/dist/cli/main.js +92 -28
  3. package/dist/cli/main.js.map +1 -1
  4. package/dist/cli/menu.js +2 -2
  5. package/dist/cli/menu.js.map +1 -1
  6. package/dist/config/globalConfig.js +6 -2
  7. package/dist/config/globalConfig.js.map +1 -1
  8. package/dist/config/tunnelConfig.js +2 -1
  9. package/dist/config/tunnelConfig.js.map +1 -1
  10. package/dist/projects/ownerAdmin.js +86 -0
  11. package/dist/projects/ownerAdmin.js.map +1 -0
  12. package/dist/projects/registry.js +90 -9
  13. package/dist/projects/registry.js.map +1 -1
  14. package/dist/security/projectAccess.js +69 -0
  15. package/dist/security/projectAccess.js.map +1 -0
  16. package/dist/security/projectAuthority.js +5 -1
  17. package/dist/security/projectAuthority.js.map +1 -1
  18. package/dist/server/appServer.js +23 -9
  19. package/dist/server/appServer.js.map +1 -1
  20. package/dist/server/bootstrap.js +5 -1
  21. package/dist/server/bootstrap.js.map +1 -1
  22. package/dist/server/configUi/app.css +8 -0
  23. package/dist/server/configUi/app.js +93 -18
  24. package/dist/server/configUi/index.html +22 -13
  25. package/dist/server/installationRuntime.js +6 -2
  26. package/dist/server/installationRuntime.js.map +1 -1
  27. package/dist/server/instructions.js +1 -1
  28. package/dist/server/instructions.js.map +1 -1
  29. package/dist/server/ipcDispatch.js.map +1 -1
  30. package/dist/server/localConfig.js +55 -13
  31. package/dist/server/localConfig.js.map +1 -1
  32. package/dist/services/ai/subagents.js +1 -1
  33. package/dist/services/ai/subagents.js.map +1 -1
  34. package/dist/services/multimodal/storage.js +10 -1
  35. package/dist/services/multimodal/storage.js.map +1 -1
  36. package/dist/services/schedules/scheduleService.js +8 -1
  37. package/dist/services/schedules/scheduleService.js.map +1 -1
  38. package/dist/store/db.js +14 -0
  39. package/dist/store/db.js.map +1 -1
  40. package/dist/tools/agentRuntimeTools.js +2 -3
  41. package/dist/tools/agentRuntimeTools.js.map +1 -1
  42. package/dist/tools/context.js +85 -5
  43. package/dist/tools/context.js.map +1 -1
  44. package/dist/tools/surface.js +2 -6
  45. package/dist/tools/surface.js.map +1 -1
  46. package/dist/tunnel/control.js +11 -4
  47. package/dist/tunnel/control.js.map +1 -1
  48. package/dist/tunnel/log.js +32 -0
  49. package/dist/tunnel/log.js.map +1 -1
  50. package/dist/tunnel/supervisor.js +103 -24
  51. package/dist/tunnel/supervisor.js.map +1 -1
  52. package/docs/ARCHITECTURE.md +12 -4
  53. package/docs/AUTH.md +6 -0
  54. package/docs/COMPATIBILITY.md +3 -2
  55. package/docs/MANUAL_ACCEPTANCE.md +22 -6
  56. package/docs/PROJECTS.md +73 -2
  57. package/docs/RELEASE_1.2.0.md +75 -0
  58. package/docs/RELEASE_NOTES.md +15 -0
  59. package/docs/SECURITY.md +27 -6
  60. package/docs/TEST_REPORT.md +74 -0
  61. package/docs/TUNNEL.md +79 -16
  62. package/docs/adr/048-persistent-connection-mode.md +3 -1
  63. package/docs/adr/050-cloudflare-local-and-project-access.md +67 -0
  64. package/docs/adr/README.md +1 -0
  65. package/package.json +2 -1
  66. package/schemas/global-config.schema.json +1 -0
  67. package/schemas/tools.compact.json +123 -3
  68. package/schemas/tools.hybrid.json +297 -3
  69. package/schemas/tools.json +828 -0
@@ -21,15 +21,15 @@
21
21
  "stats": {
22
22
  "compact": {
23
23
  "toolCount": 20,
24
- "schemaBytes": 55373
24
+ "schemaBytes": 59073
25
25
  },
26
26
  "hybrid": {
27
27
  "toolCount": 49,
28
- "schemaBytes": 125901
28
+ "schemaBytes": 134966
29
29
  },
30
30
  "full": {
31
31
  "toolCount": 138,
32
- "schemaBytes": 475008
32
+ "schemaBytes": 500538
33
33
  }
34
34
  },
35
35
  "tools": [
@@ -53,6 +53,12 @@
53
53
  "type": "string",
54
54
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
55
55
  },
56
+ "targetProject": {
57
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
58
+ "type": "string",
59
+ "minLength": 1,
60
+ "maxLength": 120
61
+ },
56
62
  "projectId": {
57
63
  "description": "Optional owner-registered project ID for read-only federation; omit to use the active workspace",
58
64
  "type": "string",
@@ -178,6 +184,12 @@
178
184
  "type": "string",
179
185
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
180
186
  },
187
+ "targetProject": {
188
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
189
+ "type": "string",
190
+ "minLength": 1,
191
+ "maxLength": 120
192
+ },
181
193
  "workspaceId": {
182
194
  "type": "string",
183
195
  "minLength": 1,
@@ -374,6 +386,12 @@
374
386
  "type": "string",
375
387
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
376
388
  },
389
+ "targetProject": {
390
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
391
+ "type": "string",
392
+ "minLength": 1,
393
+ "maxLength": 120
394
+ },
377
395
  "workspaceId": {
378
396
  "type": "string",
379
397
  "minLength": 1,
@@ -563,6 +581,12 @@
563
581
  "type": "string",
564
582
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
565
583
  },
584
+ "targetProject": {
585
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
586
+ "type": "string",
587
+ "minLength": 1,
588
+ "maxLength": 120
589
+ },
566
590
  "workspaceId": {
567
591
  "type": "string",
568
592
  "minLength": 1,
@@ -743,6 +767,12 @@
743
767
  "type": "string",
744
768
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
745
769
  },
770
+ "targetProject": {
771
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
772
+ "type": "string",
773
+ "minLength": 1,
774
+ "maxLength": 120
775
+ },
746
776
  "workspaceId": {
747
777
  "type": "string",
748
778
  "minLength": 1,
@@ -911,6 +941,12 @@
911
941
  "type": "string",
912
942
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
913
943
  },
944
+ "targetProject": {
945
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
946
+ "type": "string",
947
+ "minLength": 1,
948
+ "maxLength": 120
949
+ },
914
950
  "workspaceId": {
915
951
  "type": "string",
916
952
  "minLength": 1,
@@ -1071,6 +1107,12 @@
1071
1107
  "type": "string",
1072
1108
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
1073
1109
  },
1110
+ "targetProject": {
1111
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
1112
+ "type": "string",
1113
+ "minLength": 1,
1114
+ "maxLength": 120
1115
+ },
1074
1116
  "workspaceId": {
1075
1117
  "type": "string",
1076
1118
  "minLength": 1,
@@ -1232,6 +1274,12 @@
1232
1274
  "type": "string",
1233
1275
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
1234
1276
  },
1277
+ "targetProject": {
1278
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
1279
+ "type": "string",
1280
+ "minLength": 1,
1281
+ "maxLength": 120
1282
+ },
1235
1283
  "workspaceId": {
1236
1284
  "type": "string",
1237
1285
  "minLength": 1,
@@ -1393,6 +1441,12 @@
1393
1441
  "type": "string",
1394
1442
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
1395
1443
  },
1444
+ "targetProject": {
1445
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
1446
+ "type": "string",
1447
+ "minLength": 1,
1448
+ "maxLength": 120
1449
+ },
1396
1450
  "workspaceId": {
1397
1451
  "type": "string",
1398
1452
  "minLength": 1,
@@ -1575,6 +1629,12 @@
1575
1629
  "type": "string",
1576
1630
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
1577
1631
  },
1632
+ "targetProject": {
1633
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
1634
+ "type": "string",
1635
+ "minLength": 1,
1636
+ "maxLength": 120
1637
+ },
1578
1638
  "workspaceId": {
1579
1639
  "type": "string",
1580
1640
  "minLength": 1,
@@ -1775,6 +1835,12 @@
1775
1835
  "type": "string",
1776
1836
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
1777
1837
  },
1838
+ "targetProject": {
1839
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
1840
+ "type": "string",
1841
+ "minLength": 1,
1842
+ "maxLength": 120
1843
+ },
1778
1844
  "workspaceId": {
1779
1845
  "type": "string",
1780
1846
  "minLength": 1,
@@ -1968,6 +2034,12 @@
1968
2034
  "type": "string",
1969
2035
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
1970
2036
  },
2037
+ "targetProject": {
2038
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
2039
+ "type": "string",
2040
+ "minLength": 1,
2041
+ "maxLength": 120
2042
+ },
1971
2043
  "workspaceId": {
1972
2044
  "type": "string",
1973
2045
  "minLength": 1,
@@ -2146,6 +2218,12 @@
2146
2218
  "type": "string",
2147
2219
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
2148
2220
  },
2221
+ "targetProject": {
2222
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
2223
+ "type": "string",
2224
+ "minLength": 1,
2225
+ "maxLength": 120
2226
+ },
2149
2227
  "workspaceId": {
2150
2228
  "type": "string",
2151
2229
  "minLength": 1,
@@ -2308,6 +2386,12 @@
2308
2386
  "type": "string",
2309
2387
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
2310
2388
  },
2389
+ "targetProject": {
2390
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
2391
+ "type": "string",
2392
+ "minLength": 1,
2393
+ "maxLength": 120
2394
+ },
2311
2395
  "workspaceId": {
2312
2396
  "type": "string",
2313
2397
  "minLength": 1,
@@ -2467,6 +2551,12 @@
2467
2551
  "type": "string",
2468
2552
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
2469
2553
  },
2554
+ "targetProject": {
2555
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
2556
+ "type": "string",
2557
+ "minLength": 1,
2558
+ "maxLength": 120
2559
+ },
2470
2560
  "workspaceId": {
2471
2561
  "type": "string",
2472
2562
  "minLength": 1,
@@ -2625,6 +2715,12 @@
2625
2715
  "type": "string",
2626
2716
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
2627
2717
  },
2718
+ "targetProject": {
2719
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
2720
+ "type": "string",
2721
+ "minLength": 1,
2722
+ "maxLength": 120
2723
+ },
2628
2724
  "workspaceId": {
2629
2725
  "type": "string",
2630
2726
  "minLength": 1,
@@ -2783,6 +2879,12 @@
2783
2879
  "type": "string",
2784
2880
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
2785
2881
  },
2882
+ "targetProject": {
2883
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
2884
+ "type": "string",
2885
+ "minLength": 1,
2886
+ "maxLength": 120
2887
+ },
2786
2888
  "workspaceId": {
2787
2889
  "type": "string",
2788
2890
  "minLength": 1,
@@ -2941,6 +3043,12 @@
2941
3043
  "type": "string",
2942
3044
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
2943
3045
  },
3046
+ "targetProject": {
3047
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
3048
+ "type": "string",
3049
+ "minLength": 1,
3050
+ "maxLength": 120
3051
+ },
2944
3052
  "workspaceId": {
2945
3053
  "type": "string",
2946
3054
  "minLength": 1,
@@ -3099,6 +3207,12 @@
3099
3207
  "type": "string",
3100
3208
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
3101
3209
  },
3210
+ "targetProject": {
3211
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
3212
+ "type": "string",
3213
+ "minLength": 1,
3214
+ "maxLength": 120
3215
+ },
3102
3216
  "workspaceId": {
3103
3217
  "type": "string",
3104
3218
  "minLength": 1,
@@ -3269,6 +3383,12 @@
3269
3383
  "type": "string",
3270
3384
  "pattern": "^prj_[0-9a-hjkmnp-tv-z]{8,64}$"
3271
3385
  },
3386
+ "targetProject": {
3387
+ "description": "Owner-registered project NAME to target (alternative to targetProjectId; must match exactly one project)",
3388
+ "type": "string",
3389
+ "minLength": 1,
3390
+ "maxLength": 120
3391
+ },
3272
3392
  "workspaceId": {
3273
3393
  "type": "string",
3274
3394
  "minLength": 1,