fix: improve MCP page setup UX and remove automation credit quotas (#821)
* Remove MCP credit quotas and improve MCP setup page - Always show client setup snippets with placeholder keys - Add View Docs link to MCP page header - Remove monthly automation credit enforcement and UI - Update plan feature text to reflect free MCP access Co-authored-by: Rotimi Best <[email protected]> * fix: address PR review feedback for MCP page changes - Clear generatedSecret when revoking MCP keys - Use Button link mode for View Docs with rel noopener noreferrer - Update all dashboard locale files for MCP translations - Make MCP rate-limit admission atomic with transactional reservations - Wrap MCP route handlers with withMcpAutomationUsage helper Co-authored-by: Rotimi Best <[email protected]> * revert: remove atomic MCP rate-limit reservations The transactional advisory-lock reservation was unnecessary complexity for our MCP usage model. Restore the simpler check-then-record flow. Also only clear generatedSecret when revoking the key it belongs to. Co-authored-by: Rotimi Best <[email protected]> * fix: address remaining MCP page bot review feedback - Add blank lines after confirm guards in key handlers - Skip showing rotated secret if key was revoked during rotation - Fix vi keys_title and de rate_limits_title translations Co-authored-by: Rotimi Best <[email protected]> * fix: prevent late key rotation from un-revoking or exposing secrets - Rotate only when revoked_at IS NULL at update time (DB) - Reject rotate requests for already-revoked keys (API) - Ignore stale rotate responses in automation client state - Guard MCP UI against showing secrets for revoked keys Co-authored-by: Rotimi Best <[email protected]> ---------
This commit is contained in:
co-authored by
Rotimi Best
parent
1cb752d229
commit
9fb75e11d2
@@ -4081,16 +4081,15 @@
|
||||
},
|
||||
"usage": {
|
||||
"title": "Utilisation et limites",
|
||||
"description": "MCP est disponible sur chaque forfait, mais l'utilisation est contrôlée par des crédits d'automatisation mensuels et des limites clés.",
|
||||
"credits_title": "Crédits restants",
|
||||
"credits_description": "Les actions MCP en mutation consomment des crédits. Les actions de lecture sont gratuites.",
|
||||
"description": "MCP est disponible sur tous les forfaits. L'utilisation est contrôlée par les limites de clés et les limites de taux.",
|
||||
"keys_title": "Clés actives",
|
||||
"keys_description": "Utilisez une clé MCP par intégration afin que l'accès puisse être alterné ou révoqué proprement.",
|
||||
"rate_limits_title": "Limites de taux",
|
||||
"rate_limits_description": "Requêtes de lecture/écriture/publication autorisées par minute.",
|
||||
"used_label": "Utilisé :"
|
||||
},
|
||||
"page_subtitle": "Connectez des outils IA à ClassroomIO avec des clés à l'échelle de l'organisation que vous pouvez faire pivoter à tout moment."
|
||||
"page_subtitle": "Connectez des outils IA à ClassroomIO avec des clés à l'échelle de l'organisation que vous pouvez faire pivoter à tout moment.",
|
||||
"view_docs": "Voir la documentation"
|
||||
},
|
||||
"api": {
|
||||
"subtitle": "Gérez les clés API pour intégrer l'API publique ClassroomIO.",
|
||||
|
||||
Reference in New Issue
Block a user