get_issue
Retrieve detailed information about a specific task or issue by its ID, including metadata, relationships, content, and activity history for comprehensive context.
Instructions
Gets an issue from the task trellis system
Use this tool to retrieve detailed information about a specific issue by its unique ID. Returns the complete issue data including metadata, relationships, content, and activity history.
Key information retrieved:
Issue metadata (type, title, status, priority, timestamps)
Hierarchical relationships (parent, children, prerequisites)
Content body and description
Activity log and change history
File associations and modifications
Current state and progress indicators
Usage scenarios:
Review task details before starting work
Check issue status and dependencies
Examine change history and activity logs
Understand parent-child relationships
Verify prerequisite completion
Access associated file changes
Essential for understanding the full context of a work item before making modifications or planning next steps.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ID of the issue to retrieve |
Implementation Reference
- src/tools/getObjectTool.ts:38-81 (handler)The handler function that implements the core logic of the 'get_issue' tool. It retrieves the object (issue) by ID from the repository, handles serialization of affected files, and returns the result or error as MCP content.export async function handleGetObject(repository: Repository, args: unknown) { const { id } = args as { id: string; }; try { const object = await repository.getObjectById(id); if (!object) { return { content: [ { type: "text", text: `Object with ID "${id}" not found`, }, ], }; } // Convert Map objects to plain objects for proper JSON serialization const serializedObject = { ...object, affectedFiles: Object.fromEntries(object.affectedFiles), }; return { content: [ { type: "text", text: `Retrieved object: ${JSON.stringify(serializedObject, null, 2)}`, }, ], }; } catch (error) { return { content: [ { type: "text", text: `Error retrieving object with ID "${id}": ${error instanceof Error ? error.message : String(error)}`, }, ], }; } }
- src/tools/getObjectTool.ts:3-36 (schema)The tool definition object providing the name 'get_issue', description, and input schema (requiring 'id' string). Used for tool listing and validation.export const getObjectTool = { name: "get_issue", description: `Gets an issue from the task trellis system Use this tool to retrieve detailed information about a specific issue by its unique ID. Returns the complete issue data including metadata, relationships, content, and activity history. Key information retrieved: - Issue metadata (type, title, status, priority, timestamps) - Hierarchical relationships (parent, children, prerequisites) - Content body and description - Activity log and change history - File associations and modifications - Current state and progress indicators Usage scenarios: - Review task details before starting work - Check issue status and dependencies - Examine change history and activity logs - Understand parent-child relationships - Verify prerequisite completion - Access associated file changes Essential for understanding the full context of a work item before making modifications or planning next steps.`, inputSchema: { type: "object", properties: { id: { type: "string", description: "ID of the issue to retrieve", }, }, required: ["id"], }, } as const;
- src/server.ts:260-261 (registration)Switch case in CallToolRequest handler that registers and dispatches 'get_issue' tool calls to the handleGetObject function.case "get_issue": return handleGetObject(repository, args);
- src/server.ts:180-180 (registration)Inclusion of getObjectTool in the tools list returned by ListToolsRequest handler, registering the tool schema with MCP clients.getObjectTool,