Skip to main content
Glama

show_listmetadata

Retrieve list properties, parent, and item count from an Anaplan model using workspace, model, and list identifiers.

Instructions

Get list metadata including properties, parent, and item count.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
workspaceIdYesAnaplan workspace ID or name
modelIdYesAnaplan model ID or name
listIdYesList ID or name

Implementation Reference

  • Registration and handler for the show_listmetadata tool on the MCP server. Defines Zod schema for workspaceId, modelId, listId. The handler resolves IDs via NameResolver, fetches list metadata via ListsApi.getMetadata, and returns JSON.
    server.tool("show_listmetadata", "Get list metadata including properties, parent, and item count.", {
      workspaceId: z.string().describe("Anaplan workspace ID or name"),
      modelId: z.string().describe("Anaplan model ID or name"),
      listId: z.string().describe("List ID or name"),
    }, async ({ workspaceId, modelId, listId }) => {
      const wId = await resolver.resolveWorkspace(workspaceId);
      const mId = await resolver.resolveModel(wId, modelId);
      const lId = await resolver.resolveList(wId, mId, listId);
      const metadata = await apis.lists.getMetadata(wId, mId, lId);
      return { content: [{ type: "text", text: JSON.stringify(metadata, null, 2) }] };
    });
  • Handler function for show_listmetadata - resolves workspace, model, list IDs, calls the API, and returns the metadata as JSON.
    }, async ({ workspaceId, modelId, listId }) => {
      const wId = await resolver.resolveWorkspace(workspaceId);
      const mId = await resolver.resolveModel(wId, modelId);
      const lId = await resolver.resolveList(wId, mId, listId);
      const metadata = await apis.lists.getMetadata(wId, mId, lId);
      return { content: [{ type: "text", text: JSON.stringify(metadata, null, 2) }] };
    });
  • Input schema for the show_listmetadata tool with workspaceId, modelId, and listId parameters.
    server.tool("show_listmetadata", "Get list metadata including properties, parent, and item count.", {
      workspaceId: z.string().describe("Anaplan workspace ID or name"),
      modelId: z.string().describe("Anaplan model ID or name"),
      listId: z.string().describe("List ID or name"),
  • ListsApi.getMetadata helper method that makes the HTTP GET call to the Anaplan API to fetch list metadata.
    async getMetadata(workspaceId: string, modelId: string, listId: string) {
      const res = await this.client.get<any>(
        `/workspaces/${workspaceId}/models/${modelId}/lists/${listId}`
      );
      return res.metadata ?? res;
    }
Behavior2/5

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

The description only states the information returned, without disclosing behavioral traits like read-only nature, speed, or side effects. Since annotations are absent, the description carries the full burden, which it fails to meet.

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, front-loaded sentence with no superfluous words. It efficiently conveys the tool's purpose.

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?

The description is adequate for a simple metadata retrieval tool, but lacks details about the output structure (e.g., what 'properties' includes). With no output schema, more context would be beneficial.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents the three parameters. The description adds no meaning beyond what is in the schema, resulting in a baseline score of 3.

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 clearly states the tool's function: retrieving list metadata (properties, parent, item count). It uses specific verb 'get' and resource 'list metadata', and distinguishes itself from sibling tools like show_lists or show_listitems.

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?

No guidance is provided on when to use this tool versus alternatives such as get_list_items or other list-related tools. There is no mention of prerequisites or context.

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/larasrinath/anaplan-mcp'

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