Descubrir herramientas y recursos
Enumere mediante programación lo que ofrece un servidor.
Descubrir herramientas y recursos es una lección gratuita de MCP Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de MCP Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de MCP Academy incluye 4 lecciones en total.
Partes de esta lección aún no han sido traducidas y se muestran en inglés.
Ask Before You Act
A client should never assume what a server can do. Once connected, it discovers the available capabilities by asking the server to list them.
List the Tools
Call session.list_tools() and the server returns every tool it exposes, ready for your code to inspect.
result = await session.list_tools()Read Each Tool
The result carries a tools list. Each entry has a name and a human-readable description so you know what it does.
for tool in result.tools:
print(tool.name, tool.description)Inspect the Input Shape
Every tool also exposes an inputSchema, a JSON Schema describing the arguments it accepts. This is how you learn what to send.
print(result.tools[0].inputSchema)List the Resources
Servers can offer read-only data too. Call session.list_resources() to fetch the set of resources you may read.
res = await session.list_resources()Resources Have URIs
Each resource is addressed by a uri, like a file path or a custom scheme. You use that uri later to fetch its contents.
for r in res.resources:
print(r.uri, r.name)List the Prompts
The third primitive is prompts. session.list_prompts() reveals reusable instruction templates the server publishes.
prompts = await session.list_prompts()Discovery Is Capability-Gated
You only get what the server advertised at the handshake. If it declared no resources, listing them returns an empty set.
Build a Live Menu
Discovery means a client adapts at runtime. Plug in a new server and its tools simply appear, with no client code changes needed.
Feed It to a Model
Discovered tool names, descriptions, and schemas are exactly what a model needs to decide which tool fits a request later on.
Cache or Re-List
Tool lists can change, so a careful client may re-list after an update notification rather than trusting a stale snapshot.
Quick Check
Which session call returns the server tool list with their schemas?
Recap: Knowing the Menu
You learned to discover a server at runtime: list its tools, resources, and prompts, then read each name, description, and schema before acting.
Preguntas frecuentes
¿La lección «Descubrir herramientas y recursos» es gratis?
Sí — el texto completo de «Descubrir herramientas y recursos» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de MCP Academy, actualiza a CoddyKit PRO. El curso de MCP Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Descubrir herramientas y recursos»?
Enumere mediante programación lo que ofrece un servidor. Practicas MCP Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar MCP Academy?
No se requiere experiencia previa. MCP Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Descubrir herramientas y recursos»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de MCP Academy?
Sí. Cada lección de MCP Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Abrir una sesión de cliente
- Descubrir herramientas y recursos
- Invocar herramientas desde el código
- Enrutar llamadas a herramientas mediante un LLM