`import tinyagent` raises NameError with mcp >= 2.0
@tonycoder-hub ya está trabajando en esto.
Desde el 28/9/2026.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 76/100
Línea de trabajo
Start by reproducing the failure with the pip install and python import commands from the issue. Inspect the dependency declaration and tinyagent/tools/mcp/mcp_client.py, including its ImportError handling and annotations. Done means mcp is capped below 2 and importing tinyagent succeeds or produces the existing readable ImportError instead of a NameError.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
mozilla-ai-tinyagent 0.1.1 declares mcp without an upper bound, and mcp 2.0 renamed mcp.client.streamable_http.streamablehttp_client to streamable_http_client. A fresh install resolves mcp 2.2.0 and the package cannot be imported.
pip install mozilla-ai-tinyagent
python -c "import tinyagent"
File ".../tinyagent/tools/mcp/mcp_client.py", line 88, in MCPClient
async def list_raw_tools(self) -> list[MCPTool]:
NameError: name 'MCPTool' is not defined
Two fixes, both worth making:
-
Cap the dependency at
mcp<2. -
mcp_client.pyrecordsmissing_mcp_errorand raises a readable ImportError frommodel_post_init, but that guard never runs:ClientSessionandMCPToolare referenced in annotations evaluated at class creation, so the module raises NameError during import first. Binding both to placeholders in theexcept ImportErrorbranch makes the existing guard work, so a future mcp change degrades instead of breaking the import.
This also breaks any-agent, which imports tinyagent.config at package import and now hard-depends on this package. any-agent is capping mcp on its side, but that does not help direct tinyagent users.
Note: this issue was drafted by Claude Opus 5 via back-and-forth with @njbrake. The reasoning and decisions are his; the prose is Claude's.
- Lenguaje dominante
- Python
- Estrellas
- 30
- Forks
- 6
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de mozilla-ai/tinyagent
-
Running an agent mutates the caller-provided message listPosiblemente ocupada @cyyecao-lappland la tomó hace 7 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
mozilla-ai/tinyagent#27 ·
-
Add Python 3.14 supportPosiblemente ocupada @barredterra la tomó hace 109 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
mozilla-ai/tinyagent#16 ·
-
Invalid JSON tool arguments abort the run or prematurely return a final-answer errorPosiblemente ocupada @cyyecao-lappland la tomó hace 7 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 72/100
mozilla-ai/tinyagent#29 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
mozilla-ai/tinyagent#24 ·
-
`uses_openai` gateway prefix is unreachable since any-llm retired the `gateway` providerPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 42/100
mozilla-ai/tinyagent#23 ·
Todos los issues de mozilla-ai/tinyagent
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día
-
enhancement good first issue Stellar Wave trivial
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
StellarCanary/ProtocolCanary-Fixtures#258 ·
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
IBM/ai-atlas-nexus#295 ·
Los mantenedores suelen responder en 6 días
-
github_actions
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Hochfrequenz/aibap.mcp#578 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
mishraprafful/multihull#150 ·
Los mantenedores suelen responder en 1 día