Feature request: native Rate Limiting (MCP spec compliance)
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 45/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 冷清
- 技术栈
- rust
- 领域
- networking
调研方向
从传输层开始,跟踪消息如何经过 Transport::send(),然后阅读现有的 SinkStreamTransport 装饰器模式。定义并发安全的令牌桶如何应用于 stdio、SSE、HTTP 和 WebSocket 传输中的 Progress、Completion、Sampling、Logging 和 Elicitation 消息。完成标准是所有列出的消息类型都获得所需的传输层速率限制。
由索引模型根据 Issue 内容生成。
描述
Problem
The MCP specification requires rate limiting across multiple message types.
Required (MUST/SHOULD):
Progressnotifications: "Both parties SHOULD implement rate limiting to prevent flooding"Completionrequests: "MUST implement appropriate rate limiting"Samplingrequests: "Clients SHOULD implement rate limiting"Loggingmessages: "Servers SHOULD rate limit log messages"Elicitationrequests: "Clients SHOULD implement rate limiting"
Proposed Architecture
Transport Layer Rate Limiting (token bucket algorithm)
Why Transport Layer:
- Universal Coverage: All message types, all transports (stdio/SSE/HTTP/WebSocket)
- Single Integration Point: All messages flow through
Transport::send() - Existing Patterns: Following established decorator pattern (
SinkStreamTransport) - Performance: Early filtering, concurrent-safe
- 主要语言
- Rust
- 星标
- 3.9k
- 派生
- 645
- 平均合并
- 4 天 22 小时
- 30 天内合并 PR
- 37
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
modelcontextprotocol/rust-sdk 的其他 Issue
-
streamable-http server: a supplied Mcp-Method contradicting an initialize body is silently accepted 未关闭bug P1 ready for work T-transport
难度 2/5 1-3 小时 新手友好度 76/100
modelcontextprotocol/rust-sdk#1271 ·
-
bug P2 ready for work T-model
难度 2/5 1-3 小时 新手友好度 78/100
modelcontextprotocol/rust-sdk#1242 ·
-
P3 question T-documentation T-enhancement
难度 1/5 1 小时以内 新手友好度 86/100
modelcontextprotocol/rust-sdk#1155 ·
-
bug P1 ready for work T-model T-service
难度 3/5 1-2 天 新手友好度 72/100
modelcontextprotocol/rust-sdk#1283 · 1 条评论 ·
-
bug P0 ready for work T-security T-transport
modelcontextprotocol/rust-sdk#1272 · 已指派 1 人 ·
查看 modelcontextprotocol/rust-sdk 的全部 Issue
相似的 Issue
-
bug
难度 1/5 1 小时以内 新手友好度 85/100
-
难度 2/5 1-3 小时 新手友好度 75/100
yantrikos/yantrik-os#255 ·
-
bug CLI custom-model
难度 2/5 1-3 小时 新手友好度 75/100
-
难度 2/5 1-3 小时 新手友好度 70/100
raphamorim/rio#1956 ·
-
难度 2/5 1-3 小时 新手友好度 75/100
rust-bitcoin/rust-bitcoin#6930 · 1 条评论 ·