Skip to main content
Glama

get-note-content

Retrieve content from Apple Notes by specifying the title, enabling quick access to stored information directly through the Apple Notes MCP Server.

Input Schema

NameRequiredDescriptionDefault
titleYes

Input Schema (JSON Schema)

{ "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "title": { "minLength": 1, "type": "string" } }, "required": [ "title" ], "type": "object" }

Implementation Reference

  • Core handler function that retrieves the content of a note by title using AppleScript execution.
    getNoteContent(title: string): string { const sanitizedTitle = title.replace(/"/g, '\\"'); const script = ` tell application "Notes" tell account "${this.ICLOUD_ACCOUNT}" get body of note "${sanitizedTitle}" end tell end tell `; const result = runAppleScript(script); if (!result.success) { console.error('Failed to get note content:', result.error); return ''; } return result.output; }
  • src/index.ts:95-117 (registration)
    MCP server tool registration for 'get-note-content', including input schema reference and thin wrapper handler delegating to AppleNotesManager.
    server.tool( "get-note-content", getNoteSchema, async ({ title }: GetNoteParams) => { try { const content = notesManager.getNoteContent(title); return { content: [{ type: "text", text: content || "Note not found" }] }; } catch (error) { return { content: [{ type: "text", text: `Error retrieving note content: ${error instanceof Error ? error.message : 'Unknown error'}` }], isError: true }; } } );
  • Zod schema for validating the input parameter 'title' of the get-note-content tool.
    const getNoteSchema = { title: z.string().min(1, "Note title is required") };
  • TypeScript interface defining the input parameters for the get-note-content tool handler.
    export interface GetNoteParams { title: string; }
  • Helper utility to execute AppleScript commands via osascript, used by the note content retrieval logic.
    export function runAppleScript(script: string): AppleScriptResult { try { // Trim and sanitize the script const sanitizedScript = script.trim().replace(/[\r\n]+/g, ' '); // Execute the AppleScript command const output = execSync(`osascript -e '${sanitizedScript}'`, { encoding: 'utf8', timeout: 10000 // 10 second timeout }); return { success: true, output: output.trim() }; } catch (error) { console.error('AppleScript execution failed:', error); return { success: false, output: '', error: error instanceof Error ? error.message : 'Unknown error occurred while executing AppleScript' }; } }

Other Tools

Related 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/Siddhant-K-code/mcp-apple-notes'

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