list_releases
Retrieve all release versions for a PingCode project to view version names and IDs, enabling project management data access through natural language queries.
Instructions
列出项目的所有发布版本。用户可以通过此工具查看版本名称和对应的 ID。
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| project_id | Yes | 项目标识,如 LFY(优点云) |
Implementation Reference
- src/tools/work-items.ts:618-657 (handler)The handler function that fetches and formats the list of releases for a given project ID using pingcodeClient.export async function listReleases( projectId: string ): Promise<{ success: boolean; data?: string; error?: string; }> { try { const releases = await pingcodeClient.getProjectReleases(projectId); if (releases.length === 0) { return { success: true, data: '该项目没有发布版本', }; } const lines: string[] = [ `# ${projectId} 项目发布版本列表`, '', `共 ${releases.length} 个版本`, '', ]; releases.forEach((release: any) => { const status = release.state === 1 ? '进行中' : release.state === 2 ? '已发布' : ''; lines.push(`- **${release.name}** (ID: ${release._id}) ${status}`); }); return { success: true, data: lines.join('\n'), }; } catch (error: any) { return { success: false, error: error.message, }; } }
- src/index.ts:115-128 (schema)Input schema definition for the 'list_releases' tool, specifying the required 'project_id' parameter.{ name: 'list_releases', description: '列出项目的所有发布版本。用户可以通过此工具查看版本名称和对应的 ID。', inputSchema: { type: 'object', properties: { project_id: { type: 'string', description: '项目标识,如 LFY(优点云)', }, }, required: ['project_id'], }, },
- src/index.ts:271-283 (registration)Registration and dispatching logic in the tool call handler switch statement, which invokes the listReleases function.case 'list_releases': { const { project_id } = args as { project_id: string }; const result = await listReleases(project_id); return { content: [ { type: 'text', text: result.success ? result.data! : `错误: ${result.error}`, }, ], isError: !result.success, }; }