@terreno/mcp 57.19.2 → 57.20.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.
- package/CHANGELOG.md +393 -0
- package/README.md +32 -269
- package/dist/bootstrap.d.ts +12 -0
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/bootstrap.js +77 -122
- package/dist/bootstrap.js.map +1 -1
- package/dist/docs/guidelines/ui/guidelines/core.md +1 -1
- package/dist/docs/resources/overview.md +4 -2
- package/dist/docs/resources/patterns.md +237 -176
- package/dist/docs/resources/ui.md +48 -17
- package/dist/docs/templates/bootstrap/frontend/app/(tabs)/profile.template.tsx +0 -26
- package/dist/docs/templates/bootstrap/frontend/app/_layout.template.tsx +3 -2
- package/dist/docs/templates/bootstrap/frontend/app/login.template.tsx +1 -1
- package/dist/docs/upgrades/57.20.0.md +238 -0
- package/dist/docs/versioned/next/approval-rubric.md +30 -12
- package/dist/docs/versioned/next/explanation/README.md +5 -0
- package/dist/docs/versioned/next/explanation/account-linking.md +169 -0
- package/dist/docs/versioned/next/explanation/admin-interface.md +1 -1
- package/dist/docs/versioned/next/explanation/agent-guidelines.md +173 -0
- package/dist/docs/versioned/next/explanation/ai-development-loop.md +196 -0
- package/dist/docs/versioned/next/explanation/authentication.md +45 -1
- package/dist/docs/versioned/next/explanation/consent-forms.md +105 -0
- package/dist/docs/versioned/next/explanation/example-coverage.md +1 -0
- package/dist/docs/versioned/next/explanation/local-first-data.md +1 -1
- package/dist/docs/versioned/next/explanation/organizations.md +37 -0
- package/dist/docs/versioned/next/explanation/planning-plugins.md +4 -0
- package/dist/docs/versioned/next/explanation/responsive-design.md +143 -0
- package/dist/docs/versioned/next/explanation/roadmap-seed-issues.md +11 -0
- package/dist/docs/versioned/next/explanation/schema-metadata.md +5 -0
- package/dist/docs/versioned/next/how-to/README.md +7 -2
- package/dist/docs/versioned/next/how-to/audit-log.md +22 -3
- package/dist/docs/versioned/next/how-to/automate-terreno-upgrades.md +169 -0
- package/dist/docs/versioned/next/how-to/build-list-detail-screens.md +160 -0
- package/dist/docs/versioned/next/how-to/circleci.md +15 -5
- package/dist/docs/versioned/next/how-to/configure-better-auth.md +673 -53
- package/dist/docs/versioned/next/how-to/create-a-terreno-app.md +8 -5
- package/dist/docs/versioned/next/how-to/debug-with-mcp.md +393 -23
- package/dist/docs/versioned/next/how-to/enable-mcp-oauth.md +54 -3
- package/dist/docs/versioned/next/how-to/migrate-rtk-to-syncdb.md +9 -0
- package/dist/docs/versioned/next/how-to/password-reset.md +1 -1
- package/dist/docs/versioned/next/how-to/recover-locked-out-user.md +112 -0
- package/dist/docs/versioned/next/how-to/run-tests-locally.md +37 -8
- package/dist/docs/versioned/next/how-to/set-up-social-login.md +424 -0
- package/dist/docs/versioned/next/how-to/set-up-terreno-mcp.md +241 -36
- package/dist/docs/versioned/next/how-to/sign-consent-on-behalf.md +139 -0
- package/dist/docs/versioned/next/how-to/upgrade-terreno.md +4 -0
- package/dist/docs/versioned/next/implementationPlans/ai-dev-loop-boost.md +47 -32
- package/dist/docs/versioned/next/implementationPlans/auth-experience.md +952 -0
- package/dist/docs/versioned/next/implementationPlans/consent-forms.md +8 -0
- package/dist/docs/versioned/next/implementationPlans/list-detail-layout.md +297 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/HANDOFF.md +211 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/boards/AnotherWay.html +121 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/boards/BackupCode.html +72 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/boards/Cancelled.html +87 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/boards/ContinueEmail.html +64 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/boards/FirstVisit.html +81 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/boards/Main.html +88 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/boards/ManageAccounts.html +77 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/boards/NotLinked.html +92 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/boards/SigningIn.html +60 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/boards/TwoFactor.html +76 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/boards/TwoFactorError.html +81 -0
- package/dist/docs/versioned/next/implementationPlans/login-redesign/boards/WrongPassword.html +69 -0
- package/dist/docs/versioned/next/implementationPlans/mcp-boost-parity.md +1 -1
- package/dist/docs/versioned/next/plans/2026-10-23-provisional-consent.md +297 -0
- package/dist/docs/versioned/next/plans/2026-10-29-fix-mcp-oauth-native-and-machine.md +68 -0
- package/dist/docs/versioned/next/reference/README.md +1 -0
- package/dist/docs/versioned/next/reference/account-security.md +700 -0
- package/dist/docs/versioned/next/reference/admin-backend.md +3 -1
- package/dist/docs/versioned/next/reference/admin-frontend.md +225 -1
- package/dist/docs/versioned/next/reference/api.md +461 -35
- package/dist/docs/versioned/next/reference/cli.md +1 -1
- package/dist/docs/versioned/next/reference/comms.md +8 -0
- package/dist/docs/versioned/next/reference/create-terreno-app.md +3 -1
- package/dist/docs/versioned/next/reference/environment-variables.md +9 -3
- package/dist/docs/versioned/next/reference/legacy/rtk.md +19 -3
- package/dist/docs/versioned/next/reference/lifecycle-plugin.md +6 -0
- package/dist/docs/versioned/next/reference/mcp-server.md +1158 -441
- package/dist/docs/versioned/next/reference/syncdb.md +8 -1
- package/dist/docs/versioned/next/reference/ui.md +1271 -27
- package/dist/docs/versioned/next/tasks/ai-dev-loop-boost.md +28 -16
- package/dist/docs/versioned/next/tutorials/README.md +4 -0
- package/dist/httpApp.d.ts +14 -0
- package/dist/httpApp.d.ts.map +1 -0
- package/dist/httpApp.js +99 -0
- package/dist/httpApp.js.map +1 -0
- package/dist/index.js +8 -90
- package/dist/index.js.map +1 -1
- package/dist/local/localTools.d.ts.map +1 -1
- package/dist/local/localTools.js +44 -14
- package/dist/local/localTools.js.map +1 -1
- package/dist/local/metro/metroDevSession.d.ts +18 -0
- package/dist/local/metro/metroDevSession.d.ts.map +1 -1
- package/dist/local/metro/metroDevSession.js +42 -3
- package/dist/local/metro/metroDevSession.js.map +1 -1
- package/dist/local/tools/databaseQuery.d.ts.map +1 -1
- package/dist/local/tools/databaseQuery.js +3 -13
- package/dist/local/tools/databaseQuery.js.map +1 -1
- package/dist/local/tools/databaseSchema.d.ts.map +1 -1
- package/dist/local/tools/databaseSchema.js +3 -13
- package/dist/local/tools/databaseSchema.js.map +1 -1
- package/dist/local/tools/localMongo.d.ts +10 -0
- package/dist/local/tools/localMongo.d.ts.map +1 -0
- package/dist/local/tools/localMongo.js +30 -0
- package/dist/local/tools/localMongo.js.map +1 -0
- package/dist/local/tools/runtime.d.ts +18 -2
- package/dist/local/tools/runtime.d.ts.map +1 -1
- package/dist/local/tools/runtime.js +75 -20
- package/dist/local/tools/runtime.js.map +1 -1
- package/dist/local/tools/syncDb.d.ts +11 -0
- package/dist/local/tools/syncDb.d.ts.map +1 -1
- package/dist/local/tools/syncDb.js +15 -3
- package/dist/local/tools/syncDb.js.map +1 -1
- package/dist/rateLimit.d.ts +35 -0
- package/dist/rateLimit.d.ts.map +1 -0
- package/dist/rateLimit.js +112 -0
- package/dist/rateLimit.js.map +1 -0
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +42 -60
- package/dist/tools.js.map +1 -1
- package/package.json +4 -3
- package/src/docs/guidelines/ui/guidelines/core.md +1 -1
- package/src/docs/resources/overview.md +4 -2
- package/src/docs/resources/patterns.md +237 -176
- package/src/docs/resources/ui.md +48 -17
- package/src/docs/templates/bootstrap/frontend/app/(tabs)/profile.template.tsx +0 -26
- package/src/docs/templates/bootstrap/frontend/app/_layout.template.tsx +3 -2
- package/src/docs/templates/bootstrap/frontend/app/login.template.tsx +1 -1
- package/src/docs/upgrades/57.20.0.md +238 -0
- package/src/docs/versioned/next/approval-rubric.md +30 -12
- package/src/docs/versioned/next/explanation/README.md +5 -0
- package/src/docs/versioned/next/explanation/account-linking.md +169 -0
- package/src/docs/versioned/next/explanation/admin-interface.md +1 -1
- package/src/docs/versioned/next/explanation/agent-guidelines.md +173 -0
- package/src/docs/versioned/next/explanation/ai-development-loop.md +196 -0
- package/src/docs/versioned/next/explanation/authentication.md +45 -1
- package/src/docs/versioned/next/explanation/consent-forms.md +105 -0
- package/src/docs/versioned/next/explanation/example-coverage.md +1 -0
- package/src/docs/versioned/next/explanation/local-first-data.md +1 -1
- package/src/docs/versioned/next/explanation/organizations.md +37 -0
- package/src/docs/versioned/next/explanation/planning-plugins.md +4 -0
- package/src/docs/versioned/next/explanation/responsive-design.md +143 -0
- package/src/docs/versioned/next/explanation/roadmap-seed-issues.md +11 -0
- package/src/docs/versioned/next/explanation/schema-metadata.md +5 -0
- package/src/docs/versioned/next/how-to/README.md +7 -2
- package/src/docs/versioned/next/how-to/audit-log.md +22 -3
- package/src/docs/versioned/next/how-to/automate-terreno-upgrades.md +169 -0
- package/src/docs/versioned/next/how-to/build-list-detail-screens.md +160 -0
- package/src/docs/versioned/next/how-to/circleci.md +15 -5
- package/src/docs/versioned/next/how-to/configure-better-auth.md +673 -53
- package/src/docs/versioned/next/how-to/create-a-terreno-app.md +8 -5
- package/src/docs/versioned/next/how-to/debug-with-mcp.md +393 -23
- package/src/docs/versioned/next/how-to/enable-mcp-oauth.md +54 -3
- package/src/docs/versioned/next/how-to/migrate-rtk-to-syncdb.md +9 -0
- package/src/docs/versioned/next/how-to/password-reset.md +1 -1
- package/src/docs/versioned/next/how-to/recover-locked-out-user.md +112 -0
- package/src/docs/versioned/next/how-to/run-tests-locally.md +37 -8
- package/src/docs/versioned/next/how-to/set-up-social-login.md +424 -0
- package/src/docs/versioned/next/how-to/set-up-terreno-mcp.md +241 -36
- package/src/docs/versioned/next/how-to/sign-consent-on-behalf.md +139 -0
- package/src/docs/versioned/next/how-to/upgrade-terreno.md +4 -0
- package/src/docs/versioned/next/implementationPlans/ai-dev-loop-boost.md +47 -32
- package/src/docs/versioned/next/implementationPlans/auth-experience.md +952 -0
- package/src/docs/versioned/next/implementationPlans/consent-forms.md +8 -0
- package/src/docs/versioned/next/implementationPlans/list-detail-layout.md +297 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/HANDOFF.md +211 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/boards/AnotherWay.html +121 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/boards/BackupCode.html +72 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/boards/Cancelled.html +87 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/boards/ContinueEmail.html +64 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/boards/FirstVisit.html +81 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/boards/Main.html +88 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/boards/ManageAccounts.html +77 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/boards/NotLinked.html +92 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/boards/SigningIn.html +60 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/boards/TwoFactor.html +76 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/boards/TwoFactorError.html +81 -0
- package/src/docs/versioned/next/implementationPlans/login-redesign/boards/WrongPassword.html +69 -0
- package/src/docs/versioned/next/implementationPlans/mcp-boost-parity.md +1 -1
- package/src/docs/versioned/next/plans/2026-10-23-provisional-consent.md +297 -0
- package/src/docs/versioned/next/plans/2026-10-29-fix-mcp-oauth-native-and-machine.md +68 -0
- package/src/docs/versioned/next/reference/README.md +1 -0
- package/src/docs/versioned/next/reference/account-security.md +700 -0
- package/src/docs/versioned/next/reference/admin-backend.md +3 -1
- package/src/docs/versioned/next/reference/admin-frontend.md +225 -1
- package/src/docs/versioned/next/reference/api.md +461 -35
- package/src/docs/versioned/next/reference/cli.md +1 -1
- package/src/docs/versioned/next/reference/comms.md +8 -0
- package/src/docs/versioned/next/reference/create-terreno-app.md +3 -1
- package/src/docs/versioned/next/reference/environment-variables.md +9 -3
- package/src/docs/versioned/next/reference/legacy/rtk.md +19 -3
- package/src/docs/versioned/next/reference/lifecycle-plugin.md +6 -0
- package/src/docs/versioned/next/reference/mcp-server.md +1158 -441
- package/src/docs/versioned/next/reference/syncdb.md +8 -1
- package/src/docs/versioned/next/reference/ui.md +1271 -27
- package/src/docs/versioned/next/tasks/ai-dev-loop-boost.md +28 -16
- package/src/docs/versioned/next/tutorials/README.md +4 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncDb.js","sourceRoot":"","sources":["../../../src/local/tools/syncDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAC,kBAAkB,EAAE,sBAAsB,EAAC,MAAM,6BAA6B,CAAC;AAEvF,MAAM,uBAAuB,GAAG,+CAA+C,CAAC;AAChF,MAAM,cAAc,GAAG,YAAY,CAAC;AACpC,MAAM,SAAS,GAAG,GAAG,CAAC;AA+DtB,MAAM,SAAS,GAAG,IAAI,GAAG,EAA0B,CAAC;AACpD,IAAI,cAAc,GAAG,CAAC,CAAC;AAEvB,MAAM,gBAAgB,GAAG,GAAqC,EAAE;IAC9D,OACE,UAGD,CAAC,kBAAkB,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,KAAc,EAAE,GAAY,EAAW,EAAE;IAC5D,IAAI,GAAG,IAAI,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7C,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC;QAC/E,QAAQ;QACR,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC;KAClC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CACnB,QAA8B,EAC9B,aAAsB,EACsB,EAAE;IAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC9B,MAAM,IAAI,GAAG,aAAa,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CACb,wFAAwF,CACzF,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,iBAAiB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC;IAChG,CAAC;IACD,OAAO,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAAG,CAAC,EAC9B,MAAM,EACN,IAAI,EACJ,IAAI,GAKL,EAAU,EAAE;IACX,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC/C,OAAO;;;;;;mBAMU,WAAW;;;;;;oCAMM,aAAa,KAAK,WAAW;;;;;OAK1D,CAAC;AACR,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,KAAK,EAAE,EACxB,MAAM,EACN,IAAI,EACJ,IAAI,GAKL,EAA4C,EAAE;IAC7C,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAgC,CAAC;QACxE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC1C,OAAO,EAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAC,CAAC;IACvC,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,sBAAsB,CAAC,EAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC/F,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,CAAC,KAAK,KAAK,sBAAsB,EAAE,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,MAAM,OAAO,GAAG,SAAS,CAAC,KAEb,CAAC;IACd,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,mCAAmC,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,KAAK,CAAC,KAAK,sBAAsB,EAAE,EAAE,CAC7G,CAAC;IACJ,CAAC;IACD,OAAO,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAC,CAAC;AACtD,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,IAAwB,EAA2B,EAAE,CAAC,CAAC;IAC7E,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnD,GAAG,CAAC,OAAO,IAAI,CAAC,kBAAkB,KAAK,SAAS;QAC9C,CAAC,CAAC,EAAC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,EAAC;QAC/C,CAAC,CAAC,EAAE,CAAC;IACP,GAAG,CAAC,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAC,CAAC,CAAC,CAAC,EAAE,CAAC;CAC/D,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,IAAwB,EAAmB,EAAE;IAChF,IAAI,CAAC;QACH,MAAM,EAAC,MAAM,EAAC,GAAG,MAAM,UAAU,CAAC;YAChC,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC;YAC1B,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,GAAuB,EAAE;IACpD,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,KAAK,MAAM,EAAE,CAAC;QACpF,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,sEAAsE,CAAC;AAChF,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,IAAsB,EAAsD,EAAE;IAChG,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,QAAQ;YACX,OAAO;gBACL,KAAK,EAAE;oBACL,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;iBAC1B;gBACD,MAAM,EAAE,QAAQ;aACjB,CAAC;QACJ,KAAK,gBAAgB;YACnB,OAAO;gBACL,KAAK,EAAE;oBACL,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB;gBACD,MAAM,EAAE,gBAAgB;aACzB,CAAC;QACJ,KAAK,mBAAmB;YACtB,OAAO;gBACL,KAAK,EAAE,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAC;gBACjD,MAAM,EAAE,mBAAmB;aAC5B,CAAC;QACJ,KAAK,OAAO;YACV,OAAO,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAC,CAAC;QACtC,KAAK,WAAW;YACd,OAAO,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAC,CAAC;QAC1C,KAAK,aAAa;YAChB,OAAO,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,aAAa,EAAC,CAAC;QAC5C,KAAK,iBAAiB;YACpB,OAAO;gBACL,KAAK,EAAE,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAC;gBAC7D,MAAM,EAAE,iBAAiB;aAC1B,CAAC;QACJ,KAAK,aAAa;YAChB,OAAO,EAAC,KAAK,EAAE,EAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAC,EAAE,MAAM,EAAE,aAAa,EAAC,CAAC;QACnE,KAAK,WAAW;YACd,OAAO,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAC,CAAC;QAC1C,KAAK,UAAU;YACb,OAAO,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAC,CAAC;QACzC,KAAK,YAAY;YACf,OAAO,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,YAAY,EAAC,CAAC;QAC3C,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9E,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,kCAAkC,IAAI,CAAC,UAAU,IAAI,EAAE,IAAI,CAAC,CAAC;YAC/E,CAAC;YACD,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACnD,MAAM,IAAI,KAAK,CACb,aAAa,QAAQ,CAAC,EAAE,+BAA+B,QAAQ,CAAC,UAAU,WAAW,IAAI,CAAC,IAAI,IAAI,CACnG,CAAC;YACJ,CAAC;YACD,OAAO,EAAC,KAAK,EAAE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAC,CAAC;QAC7D,CAAC;QACD;YACE,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,IAAsB,EAAmB,EAAE;IAC5E,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;IACvC,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,kBAAkB,GACtB,IAAI,CAAC,MAAM,KAAK,eAAe,IAAI,IAAI,CAAC,UAAU;YAChD,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,UAAU;YAC5C,CAAC,CAAC,SAAS,CAAC;QAChB,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC;YACpC,IAAI,EAAE,IAAI,CAAC,KAAK;YAChB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,kBAAkB;SACtC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC;YAC7B,IAAI,EAAE,EAAC,kBAAkB,EAAE,KAAK,EAAC;YACjC,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,YAAY,CAAC,IAAI;SACxB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CACnB,WAAW,CAAC;YACV,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM,EAAE,YAAY,CAAC,IAAI;YACzB,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,KAAK,EAAE,KAAK,CAAC,MAAM;SACpB,CAAC,EACF,IAAI,EACJ,CAAC,CACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,QAAwB,EAA2B,EAAE,CAAC,CAAC;IAClF,UAAU,EAAE,QAAQ,CAAC,UAAU;IAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;IAC/B,EAAE,EAAE,QAAQ,CAAC,EAAE;IACf,KAAK,EAAE,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC;CACnC,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,CAAC,EAClB,IAAI,EACJ,KAAK,EACL,IAAI,GAAG,GAAG,EACV,KAAK,GAMN,EAAQ,EAAE;IACT,IAAI,KAAK,CAAC,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO;IACT,CAAC;IACD,IACE,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACb,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAC5C,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAC,CAAC,CAAC;QACzE,OAAO;IACT,CAAC;IACD,MAAM,UAAU,GAAG,IAA+B,CAAC;IACnD,MAAM,WAAW,GAAG,KAAgC,CAAC;IACrD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAChF,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QACnC,UAAU,CAAC;YACT,KAAK;YACL,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC;YACrB,IAAI,EAAE,GAAG,IAAI,IAAI,GAAG,EAAE;YACtB,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC;SACxB,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,IAAoB,EAAE,KAAqB,EAA2B,EAAE;IAChG,MAAM,KAAK,GAA6D,EAAE,CAAC;IAC3E,UAAU,CAAC,EAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAC,CAAC,CAAC;IAC1D,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,MAAM;QACvB,KAAK;QACL,IAAI,EAAE,EAAC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAC;QAChD,KAAK,EAAE,EAAC,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAC;QACnD,SAAS,EAAE,KAAK,CAAC,MAAM,IAAI,SAAS;KACrC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,IAAwB,EAAmB,EAAE;IAChF,IAAI,CAAC;QACH,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,SAAS,CACnB,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAC,EAAE,EAAE,UAAU,EAAE,UAAU,EAAC,EAAE,EAAE,CAAC,CAAC;gBAC7D,UAAU;gBACV,UAAU;gBACV,EAAE;aACH,CAAC,CAAC,EACH,IAAI,EACJ,CAAC,CACF,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9E,OAAO,QAAQ;gBACb,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxD,CAAC,CAAC,kCAAkC,IAAI,CAAC,UAAU,IAAI,EAAE,IAAI,CAAC;QAClE,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAC5E,OAAO,IAAI,CAAC,SAAS,CAAC,EAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1E,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACrF,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACpB,OAAO,mEAAmE,CAAC;YAC7E,CAAC;YACD,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,OAAO,4BAA4B,IAAI,CAAC,MAAM,IAAI,CAAC;QACrD,CAAC;QAED,MAAM,EAAC,IAAI,EAAE,MAAM,EAAC,GAAG,MAAM,UAAU,CAAC;YACtC,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC;YAC1B,MAAM,EAAE,UAAU;YAClB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC,CAAC;QACH,MAAM,GAAG,GAAG,MAAiC,CAAC;QAC9C,MAAM,gBAAgB,GAAG,GAAG,CAAC,gBAAgB,CAAC;QAC9C,MAAM,KAAK,GAAG,EAAC,GAAG,GAAG,EAAC,CAAC;QACvB,OAAO,KAAK,CAAC,UAAU,CAAC;QACxB,OAAO,KAAK,CAAC,gBAAgB,CAAC;QAC9B,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC;QAC1C,MAAM,EAAE,GAAG,UAAU,UAAU,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,cAAc,EAAE,EAAE,CAAC;QAC7F,MAAM,QAAQ,GAAmB;YAC/B,UAAU;YACV,UAAU,EAAE,IAAI;YAChB,EAAE;YACF,gBAAgB;YAChB,KAAK;SACN,CAAC;QACF,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;AACH,CAAC,CAAC;AAEF,gBAAgB;AAChB,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAS,EAAE;IACrD,SAAS,CAAC,KAAK,EAAE,CAAC;IAClB,cAAc,GAAG,CAAC,CAAC;AACrB,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"syncDb.js","sourceRoot":"","sources":["../../../src/local/tools/syncDb.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { ErrorRequestHandler, RequestHandler } from "express";
|
|
2
|
+
export interface McpRateLimitConfig {
|
|
3
|
+
/** Requests allowed per client IP per window. `0` disables the limit. */
|
|
4
|
+
max: number;
|
|
5
|
+
windowMs: number;
|
|
6
|
+
}
|
|
7
|
+
type Env = Record<string, string | undefined>;
|
|
8
|
+
/**
|
|
9
|
+
* Reads `TERRENO_MCP_RATE_LIMIT_MAX` (0 disables) and `TERRENO_MCP_RATE_LIMIT_WINDOW_MS`.
|
|
10
|
+
* Invalid values throw so a typo never silently leaves the hosted server unlimited.
|
|
11
|
+
*/
|
|
12
|
+
export declare const resolveMcpRateLimitConfig: (env?: Env) => McpRateLimitConfig;
|
|
13
|
+
/**
|
|
14
|
+
* Number of reverse-proxy hops whose `X-Forwarded-For` entries Express may trust.
|
|
15
|
+
*
|
|
16
|
+
* Cloud Run (detected by `K_SERVICE`) puts exactly one hop in front of the container: the
|
|
17
|
+
* Google Front End, which appends the address it saw to `X-Forwarded-For`. Trusting one hop
|
|
18
|
+
* makes `req.ip` that rightmost, GFE-written entry; anything the client wrote further left
|
|
19
|
+
* is ignored, so a forged header cannot rotate buckets. Everywhere else the default is 0
|
|
20
|
+
* (use the socket address), because trusting a proxy that is not there lets any client pick
|
|
21
|
+
* its own IP. Set `TERRENO_MCP_TRUST_PROXY_HOPS` when another proxy layer sits in front
|
|
22
|
+
* (for example 2 behind an external HTTPS load balancer).
|
|
23
|
+
*/
|
|
24
|
+
export declare const resolveTrustProxyHops: (env?: Env) => number;
|
|
25
|
+
/**
|
|
26
|
+
* Middleware pair for the JSON-RPC routes: a per-IP fixed-window limiter (the shared
|
|
27
|
+
* `@terreno/api` route limiter, in-memory per instance) followed by an error handler that
|
|
28
|
+
* renders its 429 as a JSON-RPC error naming the limit and retry window. Returns no
|
|
29
|
+
* middleware when `max` is 0.
|
|
30
|
+
*/
|
|
31
|
+
export declare const createMcpRateLimitMiddleware: ({ max, now, windowMs, }: McpRateLimitConfig & {
|
|
32
|
+
now?: () => number;
|
|
33
|
+
}) => Array<RequestHandler | ErrorRequestHandler>;
|
|
34
|
+
export {};
|
|
35
|
+
//# sourceMappingURL=rateLimit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rateLimit.d.ts","sourceRoot":"","sources":["../src/rateLimit.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,mBAAmB,EAAW,cAAc,EAAC,MAAM,SAAS,CAAC;AAkB1E,MAAM,WAAW,kBAAkB;IACjC,yEAAyE;IACzE,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AAwB9C;;;GAGG;AACH,eAAO,MAAM,yBAAyB,GAAI,MAAK,GAAiB,KAAG,kBAelE,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,qBAAqB,GAAI,MAAK,GAAiB,KAAG,MAO9D,CAAC;AAqBF;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,GAAI,yBAI1C,kBAAkB,GAAG;IAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CAAC,KAAG,KAAK,CAAC,cAAc,GAAG,mBAAmB,CAyBxF,CAAC"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { createRouteRateLimitMiddleware, isAPIError } from "@terreno/api";
|
|
2
|
+
/**
|
|
3
|
+
* Requests per client IP per window on the hosted JSON-RPC endpoint. Search and codegen
|
|
4
|
+
* calls are cheap (in-memory index and string templates), and an agent session makes a
|
|
5
|
+
* few dozen calls per minute at most, so 120 per minute (2/s sustained) leaves room for
|
|
6
|
+
* several agents behind one NAT while capping a single abusive client.
|
|
7
|
+
*/
|
|
8
|
+
const DEFAULT_MCP_RATE_LIMIT_MAX = 120;
|
|
9
|
+
/** Default fixed window: one minute, so a limited client waits seconds, not minutes. */
|
|
10
|
+
const DEFAULT_MCP_RATE_LIMIT_WINDOW_MS = 60_000;
|
|
11
|
+
/**
|
|
12
|
+
* JSON-RPC implementation-defined server error (the -32000..-32099 range), echoing HTTP 429.
|
|
13
|
+
*/
|
|
14
|
+
const MCP_RATE_LIMIT_ERROR_CODE = -32029;
|
|
15
|
+
const parseNonNegativeInteger = ({ env, fallback, minimum, name, }) => {
|
|
16
|
+
const raw = env[name];
|
|
17
|
+
if (raw === undefined || raw.trim() === "") {
|
|
18
|
+
return fallback;
|
|
19
|
+
}
|
|
20
|
+
const value = Number(raw);
|
|
21
|
+
if (!Number.isInteger(value) || value < minimum) {
|
|
22
|
+
throw new Error(`Invalid ${name} value: ${raw} (expected an integer >= ${minimum})`);
|
|
23
|
+
}
|
|
24
|
+
return value;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Reads `TERRENO_MCP_RATE_LIMIT_MAX` (0 disables) and `TERRENO_MCP_RATE_LIMIT_WINDOW_MS`.
|
|
28
|
+
* Invalid values throw so a typo never silently leaves the hosted server unlimited.
|
|
29
|
+
*/
|
|
30
|
+
export const resolveMcpRateLimitConfig = (env = process.env) => {
|
|
31
|
+
return {
|
|
32
|
+
max: parseNonNegativeInteger({
|
|
33
|
+
env,
|
|
34
|
+
fallback: DEFAULT_MCP_RATE_LIMIT_MAX,
|
|
35
|
+
minimum: 0,
|
|
36
|
+
name: "TERRENO_MCP_RATE_LIMIT_MAX",
|
|
37
|
+
}),
|
|
38
|
+
windowMs: parseNonNegativeInteger({
|
|
39
|
+
env,
|
|
40
|
+
fallback: DEFAULT_MCP_RATE_LIMIT_WINDOW_MS,
|
|
41
|
+
minimum: 1,
|
|
42
|
+
name: "TERRENO_MCP_RATE_LIMIT_WINDOW_MS",
|
|
43
|
+
}),
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Number of reverse-proxy hops whose `X-Forwarded-For` entries Express may trust.
|
|
48
|
+
*
|
|
49
|
+
* Cloud Run (detected by `K_SERVICE`) puts exactly one hop in front of the container: the
|
|
50
|
+
* Google Front End, which appends the address it saw to `X-Forwarded-For`. Trusting one hop
|
|
51
|
+
* makes `req.ip` that rightmost, GFE-written entry; anything the client wrote further left
|
|
52
|
+
* is ignored, so a forged header cannot rotate buckets. Everywhere else the default is 0
|
|
53
|
+
* (use the socket address), because trusting a proxy that is not there lets any client pick
|
|
54
|
+
* its own IP. Set `TERRENO_MCP_TRUST_PROXY_HOPS` when another proxy layer sits in front
|
|
55
|
+
* (for example 2 behind an external HTTPS load balancer).
|
|
56
|
+
*/
|
|
57
|
+
export const resolveTrustProxyHops = (env = process.env) => {
|
|
58
|
+
return parseNonNegativeInteger({
|
|
59
|
+
env,
|
|
60
|
+
fallback: env.K_SERVICE ? 1 : 0,
|
|
61
|
+
minimum: 0,
|
|
62
|
+
name: "TERRENO_MCP_TRUST_PROXY_HOPS",
|
|
63
|
+
});
|
|
64
|
+
};
|
|
65
|
+
const jsonRpcRequestId = (req) => {
|
|
66
|
+
const body = req.body;
|
|
67
|
+
if (!body || typeof body !== "object" || Array.isArray(body)) {
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
const id = body.id;
|
|
71
|
+
if (typeof id === "string" || typeof id === "number") {
|
|
72
|
+
return id;
|
|
73
|
+
}
|
|
74
|
+
return null;
|
|
75
|
+
};
|
|
76
|
+
const formatWindow = (windowMs) => {
|
|
77
|
+
if (windowMs % 1000 === 0) {
|
|
78
|
+
return `${windowMs / 1000} seconds`;
|
|
79
|
+
}
|
|
80
|
+
return `${windowMs} ms`;
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* Middleware pair for the JSON-RPC routes: a per-IP fixed-window limiter (the shared
|
|
84
|
+
* `@terreno/api` route limiter, in-memory per instance) followed by an error handler that
|
|
85
|
+
* renders its 429 as a JSON-RPC error naming the limit and retry window. Returns no
|
|
86
|
+
* middleware when `max` is 0.
|
|
87
|
+
*/
|
|
88
|
+
export const createMcpRateLimitMiddleware = ({ max, now, windowMs, }) => {
|
|
89
|
+
if (max === 0) {
|
|
90
|
+
return [];
|
|
91
|
+
}
|
|
92
|
+
const limiter = createRouteRateLimitMiddleware({ max, name: "mcp-jsonrpc", now, windowMs });
|
|
93
|
+
const renderRateLimitError = (error, req, res, next) => {
|
|
94
|
+
if (!isAPIError(error) || error.status !== 429) {
|
|
95
|
+
next(error);
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
// The shared limiter sets Retry-After before raising the 429.
|
|
99
|
+
const retryAfterSeconds = Number(res.getHeader("Retry-After")) || 1;
|
|
100
|
+
res.status(429).json({
|
|
101
|
+
error: {
|
|
102
|
+
code: MCP_RATE_LIMIT_ERROR_CODE,
|
|
103
|
+
data: { limit: max, retryAfterSeconds, windowMs },
|
|
104
|
+
message: `Rate limit exceeded: ${max} requests per ${formatWindow(windowMs)} per client IP. Retry after ${retryAfterSeconds}s.`,
|
|
105
|
+
},
|
|
106
|
+
id: jsonRpcRequestId(req),
|
|
107
|
+
jsonrpc: "2.0",
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
return [limiter, renderRateLimitError];
|
|
111
|
+
};
|
|
112
|
+
//# sourceMappingURL=rateLimit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rateLimit.js","sourceRoot":"","sources":["../src/rateLimit.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,8BAA8B,CAAC;AA+JvD,eAAO,MAAM,KAAK,EAAE,IAAI,EAgPvB,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,KAAG,MAuEH,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE;QACZ,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,KAAG,MAuEH,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,MAAM;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB,KAAG,MA0MH,CAAC;
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,8BAA8B,CAAC;AA+JvD,eAAO,MAAM,KAAK,EAAE,IAAI,EAgPvB,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,KAAG,MAuEH,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE;QACZ,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,KAAG,MAuEH,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,MAAM;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB,KAAG,MA0MH,CAAC;AAKF,eAAO,MAAM,kBAAkB,GAAI,MAAM;IACvC,MAAM,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,OAAO,CAAC,EAAE,KAAK,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAC,CAAC,CAAC;KACjD,CAAC,CAAC;CACJ,KAAG,MAmFH,CAAC;AAKF,iEAAiE;AACjE,eAAO,MAAM,gBAAgB,GAAI,MAAM;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAC,KAAG,MAgB5D,CAAC;AAiBF,eAAO,MAAM,mBAAmB,GAAI,MAAM;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,KAAG,MAgE5D,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,MAAM;IACzC,MAAM,EAAE,KAAK,CAAC;QACZ,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,EAAE,CAAC;KACtB,CAAC,CAAC;CACJ,KAAG,MAsMH,CAAC;AAqBF,eAAO,MAAM,cAAc,GACzB,MAAM,MAAM,EACZ,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC5B,OAAO,CAAC;IAAC,OAAO,EAAE,KAAK,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,CAAC,CAAA;CAAC,CAiJxD,CAAC"}
|
package/dist/tools.js
CHANGED
|
@@ -708,6 +708,9 @@ const ${name}Screen: React.FC = () => {
|
|
|
708
708
|
export default ${name}Screen;
|
|
709
709
|
`;
|
|
710
710
|
};
|
|
711
|
+
// Prop names follow @terreno/ui's field interfaces (TextFieldProps, SelectFieldProps,
|
|
712
|
+
// BooleanFieldProps, DateTimeFieldProps, NumberFieldProps): `title`, `onChange`, `errorText`.
|
|
713
|
+
// formFieldsTypecheck.test.ts compiles this output against @terreno/ui to catch drift.
|
|
711
714
|
export const generateFormFields = (args) => {
|
|
712
715
|
const { fields } = args;
|
|
713
716
|
const imports = new Set(["Box"]);
|
|
@@ -716,100 +719,68 @@ export const generateFormFields = (args) => {
|
|
|
716
719
|
const label = field.label ?? field.name.charAt(0).toUpperCase() + field.name.slice(1);
|
|
717
720
|
const stateName = field.name;
|
|
718
721
|
const setterName = `set${field.name.charAt(0).toUpperCase() + field.name.slice(1)}`;
|
|
722
|
+
const errorProp = field.required ? `\n errorText={errors.${field.name}}` : "";
|
|
723
|
+
const renderField = (component, extraProps = "") => ` <${component}
|
|
724
|
+
title="${label}"${extraProps}
|
|
725
|
+
value={${stateName}}
|
|
726
|
+
onChange={${setterName}}${errorProp}
|
|
727
|
+
/>`;
|
|
719
728
|
switch (field.type) {
|
|
720
729
|
case "text":
|
|
721
730
|
imports.add("TextField");
|
|
722
|
-
fieldComponents.push(
|
|
723
|
-
label="${label}"
|
|
724
|
-
value={${stateName}}
|
|
725
|
-
onChangeText={${setterName}}
|
|
726
|
-
${field.required ? `error={errors.${field.name}}` : ""}
|
|
727
|
-
/>`);
|
|
731
|
+
fieldComponents.push(renderField("TextField"));
|
|
728
732
|
break;
|
|
729
733
|
case "email":
|
|
730
734
|
imports.add("EmailField");
|
|
731
|
-
fieldComponents.push(
|
|
732
|
-
label="${label}"
|
|
733
|
-
value={${stateName}}
|
|
734
|
-
onChangeText={${setterName}}
|
|
735
|
-
${field.required ? `error={errors.${field.name}}` : ""}
|
|
736
|
-
/>`);
|
|
735
|
+
fieldComponents.push(renderField("EmailField"));
|
|
737
736
|
break;
|
|
738
737
|
case "password":
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
value={${stateName}}
|
|
743
|
-
onChangeText={${setterName}}
|
|
744
|
-
${field.required ? `error={errors.${field.name}}` : ""}
|
|
745
|
-
/>`);
|
|
738
|
+
// PasswordField is a placeholder without props; TextField type="password" masks input.
|
|
739
|
+
imports.add("TextField");
|
|
740
|
+
fieldComponents.push(renderField("TextField", '\n type="password"'));
|
|
746
741
|
break;
|
|
747
742
|
case "number":
|
|
748
743
|
imports.add("NumberField");
|
|
749
|
-
fieldComponents.push(
|
|
750
|
-
label="${label}"
|
|
751
|
-
value={${stateName}}
|
|
752
|
-
onChangeValue={${setterName}}
|
|
753
|
-
${field.required ? `error={errors.${field.name}}` : ""}
|
|
754
|
-
/>`);
|
|
744
|
+
fieldComponents.push(renderField("NumberField", '\n type="number"'));
|
|
755
745
|
break;
|
|
756
746
|
case "textarea":
|
|
757
747
|
imports.add("TextArea");
|
|
758
|
-
fieldComponents.push(
|
|
759
|
-
label="${label}"
|
|
760
|
-
value={${stateName}}
|
|
761
|
-
onChangeText={${setterName}}
|
|
762
|
-
${field.required ? `error={errors.${field.name}}` : ""}
|
|
763
|
-
/>`);
|
|
748
|
+
fieldComponents.push(renderField("TextArea"));
|
|
764
749
|
break;
|
|
765
750
|
case "select": {
|
|
766
751
|
imports.add("SelectField");
|
|
767
752
|
const optionsStr = field.options
|
|
768
753
|
? JSON.stringify(field.options, null, 2).replace(/\n/g, "\n ")
|
|
769
754
|
: "[]";
|
|
770
|
-
fieldComponents.push(`
|
|
771
|
-
label="${label}"
|
|
772
|
-
value={${stateName}}
|
|
773
|
-
onChangeValue={${setterName}}
|
|
774
|
-
options={${optionsStr}}
|
|
775
|
-
${field.required ? `error={errors.${field.name}}` : ""}
|
|
776
|
-
/>`);
|
|
755
|
+
fieldComponents.push(renderField("SelectField", `\n options={${optionsStr}}`));
|
|
777
756
|
break;
|
|
778
757
|
}
|
|
779
758
|
case "boolean":
|
|
780
759
|
imports.add("BooleanField");
|
|
781
|
-
fieldComponents.push(
|
|
782
|
-
label="${label}"
|
|
783
|
-
value={${stateName}}
|
|
784
|
-
onChangeValue={${setterName}}
|
|
785
|
-
/>`);
|
|
760
|
+
fieldComponents.push(renderField("BooleanField"));
|
|
786
761
|
break;
|
|
787
762
|
case "date":
|
|
788
763
|
case "datetime":
|
|
789
764
|
imports.add("DateTimeField");
|
|
790
|
-
fieldComponents.push(`
|
|
791
|
-
label="${label}"
|
|
792
|
-
value={${stateName}}
|
|
793
|
-
onChange={${setterName}}
|
|
794
|
-
mode="${field.type === "date" ? "date" : "datetime"}"
|
|
795
|
-
/>`);
|
|
765
|
+
fieldComponents.push(renderField("DateTimeField", `\n type="${field.type}"`));
|
|
796
766
|
break;
|
|
797
767
|
}
|
|
798
768
|
}
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
const defaultValue = f.type === "boolean" ? "false" :
|
|
769
|
+
// Every field value is a string (NumberField and DateTimeField included) except BooleanField.
|
|
770
|
+
const stateLines = fields.map((f) => {
|
|
771
|
+
const defaultValue = f.type === "boolean" ? "false" : '""';
|
|
802
772
|
return ` const [${f.name}, set${f.name.charAt(0).toUpperCase() + f.name.slice(1)}] = useState(${defaultValue});`;
|
|
803
|
-
})
|
|
804
|
-
|
|
805
|
-
|
|
773
|
+
});
|
|
774
|
+
if (fields.some((f) => f.required)) {
|
|
775
|
+
stateLines.push(' // Set a message to show it under a field, e.g. setErrors({title: "Title is required"}).', " const [errors, setErrors] = useState<Record<string, string | undefined>>({});");
|
|
776
|
+
}
|
|
777
|
+
return `import { useState } from "react";
|
|
806
778
|
import { ${Array.from(imports).join(", ")} } from "@terreno/ui";
|
|
807
779
|
|
|
808
780
|
// State declarations (add to your component):
|
|
809
|
-
${
|
|
781
|
+
${stateLines.join("\n")}
|
|
810
782
|
|
|
811
783
|
// Form fields (add inside your component's return):
|
|
812
|
-
{/* Form Fields */}
|
|
813
784
|
<Box gap={3}>
|
|
814
785
|
${fieldComponents.join("\n")}
|
|
815
786
|
</Box>
|
|
@@ -834,6 +805,16 @@ export const validateUiBlocks = (args) => {
|
|
|
834
805
|
}
|
|
835
806
|
return `${validated.warnings.map(formatBlockIssue).join("\n")}\n`;
|
|
836
807
|
};
|
|
808
|
+
const NAMED_IMPORT_PATTERN = /import\s+(?:type\s+)?(?:\w+\s*,\s*)?\{([^}]*)\}\s*from\s*["']([^"']+)["']/g;
|
|
809
|
+
const MODEL_DOCUMENT_TYPE_PATTERN = /\b\w+Document\b/;
|
|
810
|
+
// True when the source declares a `<Name>Document` type or imports one from the app's type files.
|
|
811
|
+
// mongoose's own Document types (Document, HydratedDocument) do not count.
|
|
812
|
+
const hasModelDocumentType = (source) => {
|
|
813
|
+
if (/^\s*(?:export\s+)?(?:interface|type)\s+\w+Document\b/m.test(source)) {
|
|
814
|
+
return true;
|
|
815
|
+
}
|
|
816
|
+
return Array.from(source.matchAll(NAMED_IMPORT_PATTERN)).some(([, names, from]) => from !== "mongoose" && MODEL_DOCUMENT_TYPE_PATTERN.test(names));
|
|
817
|
+
};
|
|
837
818
|
export const validateModelSchema = (args) => {
|
|
838
819
|
const { schema } = args;
|
|
839
820
|
const issues = [];
|
|
@@ -854,10 +835,11 @@ export const validateModelSchema = (args) => {
|
|
|
854
835
|
issues.push("Missing default plugins");
|
|
855
836
|
suggestions.push("Add addDefaultPlugins(schema) or manually add createdUpdatedPlugin");
|
|
856
837
|
}
|
|
857
|
-
// Check for
|
|
858
|
-
|
|
838
|
+
// Check for the model's Document type: declared inline, or imported from where Terreno keeps
|
|
839
|
+
// model types (src/modelInterfaces.ts or src/types/models/).
|
|
840
|
+
if (!hasModelDocumentType(schema)) {
|
|
859
841
|
issues.push("Missing TypeScript interfaces");
|
|
860
|
-
suggestions.push("Define
|
|
842
|
+
suggestions.push("Define Document and Model types in src/modelInterfaces.ts or src/types/models/ and import them into the model file");
|
|
861
843
|
}
|
|
862
844
|
// Check for findOne usage
|
|
863
845
|
if (schema.includes(".findOne(") &&
|
package/dist/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
"@modelcontextprotocol/node": "^2.0.0",
|
|
12
12
|
"@modelcontextprotocol/server": "^2.0.0",
|
|
13
13
|
"@sentry/bun": "^10.39.0",
|
|
14
|
-
"@terreno/api": "57.
|
|
15
|
-
"@terreno/blocks": "57.
|
|
14
|
+
"@terreno/api": "57.20.0",
|
|
15
|
+
"@terreno/blocks": "57.20.0",
|
|
16
16
|
"express": "^5.2.1",
|
|
17
17
|
"luxon": "^3.7.2",
|
|
18
18
|
"minisearch": "^7.2.0",
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
"devDependencies": {
|
|
23
23
|
"@biomejs/biome": "^2.3.6",
|
|
24
24
|
"@modelcontextprotocol/client": "^2.0.0",
|
|
25
|
+
"@terreno/test": "57.20.0",
|
|
25
26
|
"@types/bun": "^1.4.0",
|
|
26
27
|
"@types/luxon": "^3.7.1",
|
|
27
28
|
"@types/node": "^25.3.0",
|
|
@@ -106,5 +107,5 @@
|
|
|
106
107
|
"test:coverage": "bun run ../scripts/check-coverage.ts"
|
|
107
108
|
},
|
|
108
109
|
"type": "module",
|
|
109
|
-
"version": "57.
|
|
110
|
+
"version": "57.20.0"
|
|
110
111
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
React Native UI component library (a large component library):
|
|
4
4
|
|
|
5
|
-
- **Layout**: Box, Page, SplitPage, Card
|
|
5
|
+
- **Layout**: Box, Page, ListDetailLayout, SplitPage, Card
|
|
6
6
|
- **Forms**: TextField, SelectField, DateTimeField, CheckBox
|
|
7
7
|
- **Display**: Text, Heading, Badge, DataTable
|
|
8
8
|
- **Actions**: Button, IconButton, Link
|
|
@@ -41,8 +41,10 @@ New apps: **syncdb + Better Auth** for data and auth; **rtk** for generated SDK
|
|
|
41
41
|
|
|
42
42
|
Use the hosted Terreno MCP for documentation and generators, and `terreno-mcp-local` for package
|
|
43
43
|
versions, read-only Mongo inspection, merged logs, client state, and Metro/CDP runtime tools.
|
|
44
|
-
Configure both with
|
|
45
|
-
|
|
44
|
+
Configure both with
|
|
45
|
+
[Set up Terreno MCP](https://github.com/TerrenoLabs/terreno/blob/master/docs/how-to/set-up-terreno-mcp.md);
|
|
46
|
+
follow [Debug with MCP](https://github.com/TerrenoLabs/terreno/blob/master/docs/how-to/debug-with-mcp.md)
|
|
47
|
+
for the diagnostic workflow. The `terreno` CLI exposes the same
|
|
46
48
|
local tools for terminal use.
|
|
47
49
|
|
|
48
50
|
## Development
|