Skip to main content
Glama

list_all_agents

Retrieve a comprehensive list of all available agents with their basic information from the MCP Agents server.

Instructions

List all available agents with their basic information

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Implementation Reference

  • The handler function that implements the list_all_agents tool logic, returning a list of agent dictionaries with id, name, and description from AGENT_PROFILES.
    def list_all_agents() -> List[Dict]:
        """Returns a list of all available agents with their names and descriptions."""
        return [
            {
                "agent_id": agent_id,
                "name": profile["name"],
                "description": profile["description"],
            }
            for agent_id, profile in AGENT_PROFILES.items()
        ]
  • Registers the list_all_agents tool with the FastMCP server using the @mcp.tool decorator.
    @mcp.tool(
        "list_all_agents",
        description="List all available agents with their basic information",
    )
  • Global dictionary AGENT_PROFILES containing detailed profiles of all agents, used by list_all_agents to generate the list.
    AGENT_PROFILES = {
        "dev_agent": {
            "name": "Development Agent",
            "description": "A specialized AI agent for software development tasks",
            "capabilities": [
                "Write and review code in multiple programming languages",
                "Debug and troubleshoot technical issues",
                "Implement features and fix bugs",
                "Provide architecture and design recommendations",
                "Optimize performance and code quality",
                "Create and maintain technical documentation",
            ],
            "limitations": [
                "Cannot directly access production systems",
                "Cannot make deployment decisions without approval",
                "Should not modify database schemas without review",
                "Must follow established coding standards and practices",
            ],
            "prompt": "You are a senior software developer with expertise in multiple programming languages and frameworks. Focus on writing clean, maintainable, and efficient code. Always consider security, performance, and best practices in your recommendations.",
        },
        "qa_agent": {
            "name": "Quality Assurance Agent",
            "description": "A specialized AI agent for quality assurance and testing",
            "capabilities": [
                "Design and execute test plans",
                "Create automated test scripts",
                "Perform manual testing and exploratory testing",
                "Identify and report bugs with detailed reproduction steps",
                "Review requirements and acceptance criteria",
                "Validate user experience and accessibility",
            ],
            "limitations": [
                "Cannot approve releases without proper testing coverage",
                "Must follow established testing protocols",
                "Cannot skip critical test scenarios",
                "Should escalate security vulnerabilities immediately",
            ],
            "prompt": "You are a meticulous QA engineer focused on ensuring software quality. Your primary goal is to identify issues before they reach production. Be thorough in testing scenarios, think about edge cases, and always advocate for the end user experience.",
        },
        "po_agent": {
            "name": "Product Owner Agent",
            "description": "A specialized AI agent for product management and ownership",
            "capabilities": [
                "Define and prioritize product requirements",
                "Create and maintain user stories and acceptance criteria",
                "Analyze user feedback and market trends",
                "Make product roadmap decisions",
                "Facilitate stakeholder communication",
                "Monitor product metrics and KPIs",
            ],
            "limitations": [
                "Cannot write or modify code",
                "Cannot make final budget decisions",
                "Must validate requirements with stakeholders",
                "Should consider technical constraints from development team",
                "Cannot override executive strategic decisions",
            ],
            "prompt": "You are an experienced product owner who balances user needs, business goals, and technical constraints. Focus on delivering maximum value to users while maintaining business viability. Always think about the broader product strategy and user journey.",
        },
    }
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only states it lists agents with basic information. It doesn't disclose behavioral traits such as whether this is a read-only operation, if it requires authentication, rate limits, pagination, or what 'basic information' entails. This leaves significant gaps in understanding the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence that efficiently conveys the tool's purpose without any wasted words. It is front-loaded and appropriately sized for a simple list operation, earning a top score for conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 0 parameters, 100% schema coverage, and an output schema exists, the description is minimally adequate. However, it lacks details on behavioral aspects (e.g., safety, performance) and doesn't leverage the output schema to clarify return values. For a list tool with no annotations, more context on behavior would improve completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and schema description coverage is 100%, so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate. A baseline of 4 is applied since no parameters exist, and the description doesn't introduce unnecessary complexity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('List') and resource ('all available agents'), specifying what information is returned ('basic information'). It distinguishes from siblings by listing 'all' agents rather than retrieving specific ones like 'dev', 'po', or 'qa' agents. However, it doesn't explicitly contrast with sibling tools, keeping it at 4 instead of 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like the sibling tools (get_dev_agent, get_po_agent, get_qa_agent). It doesn't indicate if this is for overview purposes, when specific agent retrieval is needed, or any prerequisites. This lack of comparative context results in a low score.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/amajakai14/mcp-agents'

If you have feedback or need assistance with the MCP directory API, please join our Discord server