Skip to main content
Glama
vvmahesh0

paper-cdp-mcp

by vvmahesh0

list_comment_threads

Find unresolved comment threads in a Paper file with filters for page, node, status, author, and search. Returns compact summaries so you can spot discussion, then open full threads for replies.

Instructions

List visible comment threads in the open file as compact summaries. A comment thread is a conversation pinned to a node: a first message plus reply messages, each with its own author, and an "open" or "resolved" workflow status. Lists only open (unresolved) threads by default. Use this first to discover relevant discussion, then call get_comment_thread for full replies. If you are tasked and fully addressing a thread's feedback, mark it done with set_comment_thread_status. Supports page, node, status, author, search, sort, and pagination filters. User ID filters accept "current-user" for the signed-in user. Deleted threads/messages are never returned.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum comment threads to return. Defaults to 50.
fileIdNoOptional. The Paper file ID this call should act on. Pass it to reliably target a specific file when several are open at once (e.g. multiple agents from the same session working in parallel). Omit to use the most recently opened file in the session.
nodeIdNoOptional node ID to list comment threads pinned to.
offsetNoNumber of matching comment threads to skip. Defaults to 0.
pageIdNoOptional page ID to list comment threads from. Omit to include all pages.
searchNoCase-insensitive search over author display names and visible message text.
statusNoFilter by status. Defaults to "open": only unresolved comment threads, which are the ones still needing action. Pass "resolved" for finished threads or "all" for both.
sortFieldNoField to sort by. Defaults to "page", matching the comment panel.
searchScopeNoSearch only the first visible message of each comment thread, or all visible messages. Defaults to "all-messages".
previewLengthNoMaximum characters for each first-message preview. Defaults to 240.
sortDirectionNoSort direction. Defaults to "asc".
currentPageOnlyNoIf true, list only comment threads on the current page. Ignored when pageId is provided.
participantUserIdNoOnly return comment threads where this user wrote at least one visible message (thread author or replier). Pass "current-user" for the signed-in user you are acting on behalf of. For anyone else, use an authorUserId from earlier results; never guess user IDs.
threadAuthorUserIdNoOnly return comment threads started by this user (replies by them do not count; use participantUserId for that). Pass "current-user" for the signed-in user you are acting on behalf of. For anyone else, use an authorUserId from earlier results; never guess user IDs.
Install Server

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It reveals the default open-only filter, that results are compact summaries, that only "visible" threads are returned, and that "Deleted threads/messages are never returned." It also explains the "current-user" sentinel for user ID filters. These are meaningful behaviors beyond what a minimal read/list tool would imply.

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 efficiently structured: the core action comes first, followed by a brief domain definition, default behavior, routing to siblings, filter summary, user ID note, and the deleted-item exclusion. Every sentence adds value for a tool with 14 parameters and no annotations, with no filler or redundancy.

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 complexity (14 parameters, no output schema, no annotations), the description provides enough context for an agent to call it correctly. It explains the concept of comment threads, the open/resolved status model, the default behavior, the workflow with sibling tools, and key exclusions. Nothing critical is missing.

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 baseline is 3. The description adds a high-level summary of filter categories ("page, node, status, author, search, sort, and pagination filters") and notes the "current-user" sentinel, but these details already exist in the schema's parameter descriptions. The description does not need to compensate for any schema gaps.

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: "List visible comment threads in the open file as compact summaries." It also defines what a comment thread is (a conversation pinned to a node with messages and status), and implicitly distinguishes itself from siblings by naming get_comment_thread for full replies and set_comment_thread_status for marking threads done.

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?

Provides explicit when-to-use and alternatives: "Use this first to discover relevant discussion, then call get_comment_thread for full replies." It also explains when to use set_comment_thread_status, and describes the default filter ("Lists only open threads by default"). This gives clear routing compared to sibling tools.

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

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/vvmahesh0/paper-cdp-mcp'

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