Conversation
📊 Reputation Summary
How is the score calculated? Read about it in the Reputation Bot repository 🤖 |
|
Claude finished @joeyorlando's task in 3m 21s —— View job PR Review: MCP Tools Rate Limiting (#2973)
OverviewThis PR adds MCP rate limiting with a clean full-stack implementation: new Issues Found1. Bug:
|
Playwright test resultsDetails
Failed testsapi › api/llm-proxy/token-cost-limits.spec.ts › LLMProxy-TokenCostLimits-OpenAI › blocks request when profile token cost limit is exceeded Flaky testsapi › api/mcp-catalog-labels.spec.ts › MCP Catalog Labels › update catalog item labels |
Separate MCP rate limits (per-server and per-tool call limits) from the shared limits table into their own table, model, routes, types, RBAC resource, and frontend page. - New `mcp_rate_limits` table with direct agent FK and cascade delete - New `McpRateLimitModel` with CRUD operations - New `/api/mcp-rate-limits` REST endpoints with RBAC - Rename `limit` RBAC resource to `llmTokenLimit`, add `mcpRateLimit` - New `/mcp-rate-limits` frontend page with create/edit/delete dialogs - Remove MCP limits section from cost/limits page - E2E API and UI tests - Documentation and Grafana dashboard updates
a6a5e46 to
528d4cc
Compare
…te-limitng Resolved conflicts: - shared/access-control.ts: kept llmTokenLimit permission key with updated /llm/cost/limits path from URL restructuring - frontend/src/app/llm/cost/limits/page.tsx: accepted new CatalogItem import from main (unused, removed) Updated rate-limits paths for new URL structure: - Moved frontend/src/app/mcp-rate-limits/ to mcp/rate-limits/ - Updated sidebar nav from /mcp-rate-limits to /mcp/rate-limits - Fixed import path to @/app/mcp/registry/_parts/mcp-server-card - Fixed href from /mcp-gateways to /mcp/gateways - Updated e2e UI test goToPage calls - Added /mcp-rate-limits redirect in next.config.ts
Summary
/mcp-rate-limitspage under "MCP & Tools" sidebar for managing per-server and per-tool rate limits with configurable time windowsisRateLimitedinfrastructure from CacheManagerChanges
windowMscolumn tolimitstable for per-limit custom time windowscheckMcpRateLimits()service integrated intomcp-client.tsbefore tool execution; checks agent → team → organization limits in priority order/cost/limitsmcp_rate_limit_rejections_totalPrometheus counter with agent/server/tool labels