Skip to main content
Glama
Can-Y
by Can-Y

session

Manage PDM sessions: start a new session, stop an existing one, or list all active sessions with their status.

Instructions

PDM 会话管理(三合一工具)。

三个 action:

  • "start" — 启动一个新的 PDM 会话。

  • "stop" — 关闭指定的 PDM 会话。

  • "list" — 列出所有活跃的 PDM 会话及其状态。

启动模式:

  • "py" (默认) — 启动 pdm -mode py -script mainloop.py 无头子进程, 通过 Python API 执行所有操作。适合脚本化和 CI 场景。

  • "gui" — 启动 PDM GUI(暂未实现)。

每个 session_id 对应一个独立的 PDM 实例,支持多会话并行。

Args: action: 操作类型,"start" / "stop" / "list"。 session_id: 会话标识符,默认 "default"。start/stop 使用。 mode: 启动模式,"py" / "gui",默认 "py"。仅 action="start" 使用。 pdm_path: 可选,自定义 PDM 可执行文件路径。留空则自动检测。仅 action="start" 使用。 timeout: 启动超时秒数,默认 120。仅 action="start" 使用。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeNopy
actionYes
timeoutNo
pdm_pathNo
session_idNodefault

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

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

No annotations provided, so description carries full burden. It details that 'start' launches a headless subprocess, 'stop' closes a session, and 'list' shows active sessions. It also explains modes ('py' vs 'gui' not implemented) and that each session_id corresponds to an independent instance. Could clarify if 'stop' is reversible.

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?

Description is well-structured with a title, bullet points for actions, and a parameter list. Front-loaded with the tool's purpose. Slightly verbose but every sentence adds value. Could be more streamlined.

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 complexity (5 parameters, no annotations, output schema present), the description is complete: covers all actions, parameters, modes, and behavioral details. No gaps in information needed for correct usage.

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

Parameters5/5

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

Schema description coverage is 0%, so description must compensate. It thoroughly explains all five parameters: action, session_id, mode, pdm_path, timeout, including defaults and applicability conditions. Adds significant meaning beyond the bare 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?

Description clearly states 'PDM session management (three-in-one tool)' and enumerates three actions (start, stop, list) with specific verbs and resources. It distinguishes itself from sibling tools by focusing on session management.

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?

Description explains when to use each action (start/stop/list) and mentions multi-session parallelism. However, it lacks explicit guidance on when not to use the tool or alternatives relative to siblings.

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/Can-Y/PDM_MCP'

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