Skip to main content
Glama

Explain AI Agents and show your agents

get_ai_agents_info
Read-onlyIdempotent

AI Agents (inside one system): Use when someone asks what AI Agents is, whether the assistant can work with the records in one of their business systems, which systems it can cover, or which AI agents they have. Returns what an agent can read, what it can do after the person approves it, what it never does, which systems can be asked for and how, and for a signed in customer this account's AI agents, each with the id the record tools take, what it may do per record type and whether it runs. With a system it also lists exactly what an agent can do in that system: per record type what it reads or changes, its actions, what it cannot do and what its automations can use. It needs no sign in: without one it answers the general part. It reads no records and changes nothing. Not for syncing records between two systems (use find_sync_options) or for sending a request (use send_request).

Input Schema

NameRequiredDescriptionDefault
systemNoOptional system to look up. With one, the answer lists exactly what an AI agent can do there.

Output Schema

NameRequiredDescriptionDefault
canDoYes
systemYes
accountYes
infoUrlYes
summaryYes
neverDoesYes
couldCoverYes
requestUrlYes
automationsYes
accessLevelsYes
availabilityYes
howToRequestYes
readyOnRequestYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / properties / system
      Added value: +{
      +  "description": "Optional system to look up. With one, the answer lists exactly what an AI agent can do there.",
      +  "enum": [
      +    "activecampaign",
      +    "companycam",
      +    "freeagent",
      +    "freshbooks",
      +    "gohighlevel",
      +    "googlesheets",
      +    "housecallpro",
      +    "hubspot",
      +    "jobber",
      +    "keap",
      +    "pipedrive",
      +    "quickbooks",
      +    "salesforce",
      +    "servicem8",
      +    "simpro",
      +    "spreadsheetfile",
      +    "square",
      +    "stripe",
      +    "woocommerce",
      +    "xero",
      +    "zohobooks",
      +    "zohocrm"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / properties / account
      Added value: +{
      +  "properties": {
      +    "agents": {
      +      "items": {
      +        "properties": {
      +          "connectionName": {
      +            "type": "string"
      +          },
      +          "hasEndpoints": {
      +            "type": "boolean"
      +          },
      +          "id": {
      +            "type": "string"
      +          },
      +          "package": {
      +            "type": "string"
      +          },
      +          "recordTypes": {
      +            "items": {
      +              "properties": {
      +                "access": {
      +                  "type": "string"
      +                },
      +                "label": {
      +                  "type": "string"
      +                },
      +                "searchable": {
      +                  "type": "boolean"
      +                },
      +                "type": {
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "type",
      +                "label",
      +                "access",
      +                "searchable"
      +              ],
      +              "type": "object"
      +            },
      +            "type": "array"
      +          },
      +          "status": {
      +            "type": "string"
      +          },
      +          "system": {
      +            "type": "string"
      +          },
      +          "systemName": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "system",
      +          "systemName",
      +          "connectionName",
      +          "package",
      +          "recordTypes"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "link": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "message": {
      +      "type": "string"
      +    },
      +    "state": {
      +      "enum": [
      +        "signedOut",
      +        "noRecordAccess",
      +        "nothingEnabled",
      +        "notRunning",
      +        "hasAgents",
      +        "notRead"
      +      ],
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "state",
      +    "message",
      +    "agents",
      +    "link"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / system
      Added value: +{
      +  "properties": {
      +    "actions": {
      +      "items": {
      +        "properties": {
      +          "actions": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "group": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "group",
      +          "actions"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "automationActions": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "key": {
      +      "type": "string"
      +    },
      +    "name": {
      +      "type": "string"
      +    },
      +    "notAvailable": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "recordTypes": {
      +      "items": {
      +        "properties": {
      +          "canChange": {
      +            "type": "boolean"
      +          },
      +          "label": {
      +            "type": "string"
      +          },
      +          "limit": {
      +            "default": null,
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "type": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "type",
      +          "label",
      +          "canChange"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "sentence": {
      +      "type": "string"
      +    },
      +    "status": {
      +      "enum": [
      +        "ready",
      +        "notBuilt",
      +        "notConnected"
      +      ],
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "key",
      +    "name",
      +    "status",
      +    "sentence",
      +    "recordTypes",
      +    "actions",
      +    "notAvailable",
      +    "automationActions"
      +  ],
      +  "type": [
      +    "object",
      +    "null"
      +  ]
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "summary",
      -  "accessLevels",
      -  "canDo",
      -  "automations",
      -  "neverDoes",
      -  "availability",
      -  "readyOnRequest",
      -  "couldCover",
      -  "howToRequest",
      -  "requestUrl",
      -  "infoUrl"
      -]New value: +[
      +  "summary",
      +  "accessLevels",
      +  "canDo",
      +  "automations",
      +  "neverDoes",
      +  "availability",
      +  "readyOnRequest",
      +  "couldCover",
      +  "howToRequest",
      +  "requestUrl",
      +  "infoUrl",
      +  "account",
      +  "system"
      +]
  2. Changed7 schema fields changed
    • addedOutput schema / properties / accessLevels
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • removedOutput schema / properties / alreadyAvailable
      Removed value: -{
      -  "type": [
      -    "string",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / enabledForAccount
      Removed value: -{
      -  "items": {
      -    "properties": {
      -      "key": {
      -        "type": "string"
      -      },
      -      "name": {
      -        "type": "string"
      -      },
      -      "setUpUrl": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "key",
      -      "name",
      -      "setUpUrl"
      -    ],
      -    "type": "object"
      -  },
      -  "type": "array"
      -}
    • removedOutput schema / properties / howToGetIt
      Removed value: -{
      -  "items": {
      -    "type": "string"
      -  },
      -  "type": "array"
      -}
    • addedOutput schema / properties / howToRequest
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • removedOutput schema / properties / packages
      Removed value: -{
      -  "items": {
      -    "type": "string"
      -  },
      -  "type": "array"
      -}
    • changedOutput schema / required
      Previous value: -[
      -  "summary",
      -  "packages",
      -  "canDo",
      -  "automations",
      -  "neverDoes",
      -  "availability",
      -  "readyOnRequest",
      -  "enabledForAccount",
      -  "couldCover",
      -  "howToGetIt",
      -  "requestUrl",
      -  "infoUrl"
      -]New value: +[
      +  "summary",
      +  "accessLevels",
      +  "canDo",
      +  "automations",
      +  "neverDoes",
      +  "availability",
      +  "readyOnRequest",
      +  "couldCover",
      +  "howToRequest",
      +  "requestUrl",
      +  "infoUrl"
      +]
  3. Changed2 schema fields changed
    • addedOutput schema / properties / readyOnRequest
      Added value: +{
      +  "type": "string"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "summary",
      -  "packages",
      -  "canDo",
      -  "automations",
      -  "neverDoes",
      -  "availability",
      -  "enabledForAccount",
      -  "couldCover",
      -  "howToGetIt",
      -  "requestUrl",
      -  "infoUrl"
      -]New value: +[
      +  "summary",
      +  "packages",
      +  "canDo",
      +  "automations",
      +  "neverDoes",
      +  "availability",
      +  "readyOnRequest",
      +  "enabledForAccount",
      +  "couldCover",
      +  "howToGetIt",
      +  "requestUrl",
      +  "infoUrl"
      +]
  4. Added

TDQS

A4.8/5.0
Behavior5/5

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

The annotations already establish readOnly, idempotent, non-destructive, and closed-world behavior, and the description adds useful context beyond that: no sign-in is required, unsigned users get only the general answer, and signed-in customers see account-specific agents. It also reiterates that the tool reads no records and changes nothing, which is consistent with the annotations.

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

Conciseness4/5

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

The description is front-loaded with usage guidance and then explains return behavior, so it follows a logical structure. It is somewhat dense and long, but most clauses carry distinct information rather than repeating the schema or annotations.

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

Completeness5/5

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

Given the tool's read-only informational nature, rich annotations, and existing output schema, the description is complete enough for an agent to invoke it correctly. It covers purpose, usage, sign-in behavior, return scope, and sibling alternatives.

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?

Schema description coverage is 100%, so the optional system parameter is already well documented. The description adds useful behavioral meaning by explaining that supplying a system lists exactly what an agent can do there, including per-record-type reads/changes, actions, limitations, and automation capabilities.

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

Purpose5/5

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

The description states a specific information/explanation resource (AI Agents) and clearly enumerates what it returns, including general agent behavior and signed-in-account agent details. It also distinguishes the tool from siblings by explicitly naming find_sync_options and send_request as alternatives for different tasks.

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

Usage Guidelines5/5

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

It gives explicit triggering questions: what AI Agents is, whether records in a business system are supported, which systems are covered, and which agents the account has. It also includes clear exclusions, directing syncing to find_sync_options and request-sending to send_request.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources