Skip to main content
Glama

server_projects

List, open, and save DingCard account projects so AI can continue editing human-created canvas or Markdown works.

Instructions

管部署的叮卡服务端账号里存的作品(人在编辑器里存的,AI 接着做):action 选操作——list 列出作品(id、标题、类型 mode、更新时间,query 按标题过滤,这是接着做已有作品的第一步)、open 按 id 载入(自由画布作品返回 documentId,之后 inspect_document / apply_actions / render_document / share_document 都能用;Markdown 作品返回 markdownDocument 信封,交给 render_markdown)、save 把一份文档存回账号(不给 projectId 存成新作品,给 open 返回的 projectId 时覆盖那一份)。需要环境变量 DINGCARD_SERVER_URL 加 DINGCARD_SERVER_TOKEN(带 drafts 权限的 API 令牌)或账号环境变量。

Input Schema

NameRequiredDescriptionDefault
idNoopen:要打开的作品 id(list 里查)
queryNolist:按标题关键词过滤,不区分大小写;不给就列全部
titleNosave:作品名;不给时按第一页的名称自动起
actionYes要做的操作
documentNo完整的 v44(或 v1–43 旧版)文档 JSON,可替代 documentId
projectIdNosave:要覆盖的服务端作品 id(open 返回的 projectId);不给就存成新作品
documentIdNo创建或修改文档的工具返回的 documentId(推荐:不必来回传整份文档)
documentPathNo文档 JSON 文件的路径,可替代 documentId
includeDocumentNo同时返回完整文档 JSON(默认只返回 documentId 和 version)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations, the description carries the burden and does well: it discloses the auth prerequisite (DINGCARD_SERVER_URL plus a DINGCARD_SERVER_TOKEN carrying drafts permission) and the key mutation semantic that save without projectId creates a new work while supplying an open-returned projectId overwrites that existing one. It stops short of error behavior, rate limits, or what overwriting destroys, which keeps it from a 5.

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?

A single dense sentence with a clear action-by-action structure, and the resource definition is front-loaded before the parenthetical action breakdown. It is information-rich rather than padded, though the nested parentheses and multi-clause action list make it heavier to parse than necessary.

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 9-parameter, no-annotation, no-output-schema tool, the description covers the essentials an agent needs: auth setup, per-action semantics, return-type branching, and overwrite behavior. The remaining gaps (includeDocument default, documentPath/document alternatives) are adequately handled by the fully-covered schema.

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 coverage is 100%, so the baseline is 3, but the description adds real meaning where the schema is weakest — the action enum is documented only as '要做的操作', and the description instead spells out what each of list/open/save accepts and returns. It says nothing about includeDocument, documentPath, or document, leaving those entirely to 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+resource: it manages works stored in a Dingcard server account, with three named operations (list/open/save), and explicitly distinguishes editor-saved works from AI-continued ones. It also names the downstream tools each result type feeds into (inspect_document / apply_actions / render_document / share_document for canvas, render_markdown for Markdown), so an agent can place it precisely among the 21 siblings.

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?

Usage is explicit and sequenced: list is called out as 'the first step to continue an existing work', open loads by id, save writes back with or without projectId. The description also gives the routing rule for two alternatives (free-canvas vs Markdown works) and says which sibling to hand each envelope to.

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