modelcontextprotocol / modelcontextprotocol/python-sdk
Mark SSE transport as deprecated
Ninguém assumiu esta issue ainda.
- Linguagem predominante
- Python
- Estrelas
- 24.3k
- Forks
- 4k
- Merge médio
- 1d 1h
- PRs com merge (30d)
- 31
Descrição
The HTTP+SSE transport was replaced by Streamable HTTP in protocol revision 2025-03-26 (spec PR #206). The spec now refers to it as the "deprecated HTTP+SSE transport" and only documents it for backwards compatibility.
The Python SDK still exposes the SSE transport with no indication that it is deprecated.
Proposal
Add warnings.warn(..., DeprecationWarning, stacklevel=2) and @deprecated docstring markers to:
The warning should point users to streamable-http / StreamableHTTPTransport instead.
Prior art
The TypeScript SDK already marks SSEClientTransport as @deprecated with a note to prefer StreamableHTTPClientTransport.
Open questions
- Should we remove SSE entirely in v2, or deprecate now and remove in a later major?
- The 2024-11-05 spec is still technically valid — clients connecting to old servers may still need the SSE client. The deprecation message should acknowledge this (same as the TS SDK wording does).
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Direção de pesquisa
Comece por src/mcp/client/sse.py, src/mcp/server/sse.py e pelos métodos de MCPServer mencionados no issue em src/mcp/server/mcpserver/server.py. Compare a redação sobre a descontinuação de SSE no TypeScript SDK e, em seguida, verifique se as APIs listadas emitem DeprecationWarning e se a documentação delas direciona os usuários para Streamable HTTP, reconhecendo ao mesmo tempo a compatibilidade com servidores legados.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- python
- Domínio
- api, backend
- Tipo de issue
- Funcionalidade
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Status de atividade
- Pouca atividade
- Clareza
- Claramente especificada
- Facilidade para iniciantes
- 68/100