Skip to main content
Glama
zackscriven

ghl-mcp-server-v2

by zackscriven

ghl_project_get_space_lists

Read-onlyIdempotent

Retrieve paginated lists located directly under a project space, excluding lists inside folders. Use it to browse top-level lists in a space and page through results.

Instructions

PROJECT MANAGEMENT API — hierarchy is spaces -> folders -> lists -> tasks (+ comments, space statuses, recurring tasks). Task batch-get is RBAC-filtered (inaccessible ids are omitted, not errors) and omits embedded subtasks. position is an opaque server-assigned lexorank string; there is no public reorder endpoint. Recurring tasks use owners/contactIds and rruleOptions.intervalType (task create uses assignees/contactId). Task search supports updatedAt filtering/sorting for incremental sync. The docs do not describe what a delete cascades to — treat every delete as destructive. Get Lists In Space Pages lists directly under a space (lists[], not items; excludes lists inside folders). Same limit/cursor paging as folders; optional anchorId for centered windows. Location comes from the token. Endpoint: GET /projects/spaces/{spaceId}/lists (Version header: v3; source: v3/projects-v3.json) OAuth scopes: projects/workspace.readonly Pagination params: limit, cursor — pass them to page through full result sets.

Input Schema

NameRequiredDescriptionDefault
limitNoPage size
cursorNoPagination cursor for children (folders/lists). Opaque base64 string from `nextCursor`.
spaceIdYesSpace id
anchorIdNoId of the child to center the page on

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.1.0

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, open-world, and non-destructive behavior. The description adds useful context beyond annotations: OAuth scope, endpoint, token-derived location, and the `lists[]` return shape. It does not cover rate limits or error behavior, but the safety profile is already handled by annotations.

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

Conciseness2/5

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

The description opens with a long API-wide preamble about batch-get RBAC, lexorank positions, recurring tasks, search, and delete cascades that is largely irrelevant to this listing operation. The specific section is efficient, but the overall text is not front-loaded and contains sentences that do not earn their place.

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

Completeness4/5

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

For a read-only paginated list tool with complete schema coverage and clear annotations, the description supplies endpoint, OAuth scope, direct-list scope, and pagination guidance. It also mentions the `lists[]` return shape despite there being no output schema. The unrelated API preamble keeps it from being fully focused, but the essential information for correct invocation is present.

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 all four parameters. The description reinforces that `limit`/`cursor` page through full result sets and that `anchorId` centers the window, but adds little semantic depth beyond the schema.

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 verb and resource: get lists directly under a space. It explicitly distinguishes this from lists inside folders and from unrelated `items`, so an agent can identify the exact operation without opening the schema.

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

Usage Guidelines4/5

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

It clearly states the scope: lists directly under a space, excluding lists inside folders. It also explains optional centered paging via `anchorId` and that location comes from the token. It does not explicitly name the folder-list sibling as the alternative, so it falls short of a full when/when-not/alternatives guide.

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

Deploy Server

Other Tools