Summary
Define a reusable pattern and guidance for creating MCPAQL adapters for any scriptable macOS application using the native-applescript transport. Apple Mail is the first instance, but the pattern should be documented generically so that adapters for Notes, Reminders, Calendar, Contacts, Safari, Finder, Music, Photos, and any third-party scriptable app follow the same structure.
Context
macOS has hundreds of scriptable applications. Once the native-applescript transport plugin exists, creating an adapter for each app should be a mechanical process:
- Locate the app's scripting dictionary
- Run the interrogator against it
- Review and override CRUDE classifications
- Generate the adapter
- Test
This issue documents that pattern as a reusable guide, not specific to any single application.
Scope
Application Discovery
- How to enumerate scriptable applications on a system
- How to locate
.sdef files (bundle resources, scripting additions)
- How to handle apps with implicit dictionaries (runtime-only, no
.sdef)
Common Patterns Across Apps
Most macOS apps share Standard Suite operations:
| Standard Suite Command |
CRUDE Endpoint |
Present In |
open |
EXECUTE |
Nearly all apps |
close |
EXECUTE |
Document-based apps |
save |
EXECUTE |
Document-based apps |
print |
EXECUTE |
Document-based apps |
make (create new) |
CREATE |
Most apps |
delete |
DELETE |
Most apps |
duplicate |
CREATE |
Some apps |
move |
UPDATE |
Some apps |
count |
READ |
Most apps |
exists |
READ |
Most apps |
get (properties) |
READ |
All apps |
set (properties) |
UPDATE |
All apps |
Adapter Naming Convention
{app-name}-applescript-adapter.md
Examples: apple-mail-applescript-adapter.md, apple-notes-applescript-adapter.md, finder-applescript-adapter.md
Adapter Schema Template
Define a template/checklist for each new app adapter:
Acceptance Criteria
Dependencies
Summary
Define a reusable pattern and guidance for creating MCPAQL adapters for any scriptable macOS application using the
native-applescripttransport. Apple Mail is the first instance, but the pattern should be documented generically so that adapters for Notes, Reminders, Calendar, Contacts, Safari, Finder, Music, Photos, and any third-party scriptable app follow the same structure.Context
macOS has hundreds of scriptable applications. Once the
native-applescripttransport plugin exists, creating an adapter for each app should be a mechanical process:This issue documents that pattern as a reusable guide, not specific to any single application.
Scope
Application Discovery
.sdeffiles (bundle resources, scripting additions).sdef)Common Patterns Across Apps
Most macOS apps share Standard Suite operations:
openclosesaveprintmake(create new)deleteduplicatemovecountexistsget(properties)set(properties)Adapter Naming Convention
Examples:
apple-mail-applescript-adapter.md,apple-notes-applescript-adapter.md,finder-applescript-adapter.mdAdapter Schema Template
Define a template/checklist for each new app adapter:
.sdeflocated and parsedAcceptance Criteria
Dependencies
native-applescripttransport plugin specification