get_project_note
Retrieve specific project notes by providing project ID and note ID to access detailed project documentation and updates.
Instructions
Get a specific project note by project ID and note ID
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| noteId | Yes | The note ID to retrieve | |
| projectId | Yes | The project ID |
Implementation Reference
- src/handlers/tool.handler.ts:554-570 (registration)Tool registration including name, description, and input schema definition in listTools() method{ name: 'get_project_note', description: 'Get a specific project note by project ID and note ID', inputSchema: { type: 'object', properties: { projectId: { type: 'number', description: 'The project ID' }, noteId: { type: 'number', description: 'The note ID to retrieve' } }, required: ['projectId', 'noteId'] }
- src/handlers/tool.handler.ts:1195-1197 (handler)MCP tool handler dispatch case that calls autotaskService.getProjectNote with parsed argumentscase 'get_project_note': result = await this.autotaskService.getProjectNote(args.projectId, args.noteId); message = `Project note retrieved successfully`;
- Core implementation that queries Autotask notes API filtered by projectId and noteId to retrieve the specific project noteasync getProjectNote(projectId: number, noteId: number): Promise<AutotaskProjectNote | null> { const client = await this.ensureClient(); try { this.logger.debug(`Getting project note - ProjectID: ${projectId}, NoteID: ${noteId}`); const result = await client.notes.list({ filter: [ { field: 'projectId', op: 'eq', value: projectId }, { field: 'id', op: 'eq', value: noteId } ] }); const notes = (result.data as any[]) || []; return notes.length > 0 ? notes[0] as AutotaskProjectNote : null; } catch (error) { this.logger.error(`Failed to get project note ${noteId} for project ${projectId}:`, error); throw error; } }