Apple MCP Tools

by wearesage

Integrations

  • Provides tools for interacting with various Apple applications including Contacts, Notes, Messages, Mail, Reminders, Calendar, and Maps, allowing users to search, create, and manage content within these native macOS applications.

  • Allows web searches using DuckDuckGo's search engine and retrieval of content from search results.

  • Enables integration with macOS applications and services, providing access to system features through AppleScript for managing personal information and communication.

Apple MCP(모델 컨텍스트 프로토콜) 도구

Claude와 같은 AI 어시스턴트가 Model Context Protocol(MCP)을 통해 Apple 애플리케이션 및 서비스와 상호 작용할 수 있도록 하는 도구 모음입니다.

개요

이 패키지는 다음을 포함하여 다양한 Apple 애플리케이션 및 서비스와 상호 작용하기 위한 MCP 도구를 제공합니다.

  • 연락처 : Apple 연락처 앱에서 연락처 검색 및 검색
  • 메모 : Apple Notes 앱에서 메모 검색, 검색, 생성 및 폴더 나열
  • 메시지 : 메시지 보내기, 읽기, 예약하기, 읽지 않은 메시지 확인하기
  • 메일 : 읽지 않은 이메일 읽기, 이메일 검색, 이메일 보내기
  • 미리 알림 : Apple 미리 알림 앱에서 미리 알림을 검색, 생성 및 엽니다.
  • 캘린더 : Apple 캘린더 앱에서 캘린더 이벤트를 검색, 생성 및 엽니다.
  • 지도 : 위치 검색, 가이드 관리, 즐겨찾기 저장, 길찾기
  • 웹 검색 : DuckDuckGo를 사용하여 웹을 검색하고 검색 결과에서 콘텐츠를 검색합니다.

설치

지엑스피1

요구 사항

  • macOS 운영 체제
  • Node.js 18+ 또는 Bun 런타임
  • Apple 애플리케이션(연락처, 메모, 메시지, 메일 등)에 접근하기 위한 적절한 권한

용법

MCP 서버 시작

# Using the CLI npx apple-mcp # Using bun bun run dev

클로드에 연결

Claude에서 이러한 도구를 사용하려면 MCP 서버를 Claude에 연결해야 합니다. MCP 프록시를 사용하거나, Claude 인터페이스가 있는 경우 직접 연결할 수 있습니다.

# Example using mcp-proxy mcp-proxy --server "bun run /path/to/apple-mcp/index.ts"

도구 예제

콘택트 렌즈
// Search for a contact by name { "operation": "contacts", "name": "John Doe" } // List all contacts { "operation": "contacts" }
노트
// Search for notes containing specific text { "operation": "notes", "operation": "search", "searchText": "meeting notes" } // Create a new note { "operation": "notes", "operation": "create", "title": "Shopping List", "body": "- Milk\n- Eggs\n- Bread", "folderName": "Personal" } // List all notes in a folder { "operation": "notes", "operation": "list", "folderName": "Work" } // List all folders { "operation": "notes", "operation": "listFolders" } // Create a new folder { "operation": "notes", "operation": "createFolder", "folderName": "Projects" }
메시지
// Send a message { "operation": "messages", "operation": "send", "phoneNumber": "+1234567890", "message": "Hello, how are you?" } // Read messages from a contact { "operation": "messages", "operation": "read", "phoneNumber": "+1234567890", "limit": 5 } // Schedule a message { "operation": "messages", "operation": "schedule", "phoneNumber": "+1234567890", "message": "Don't forget our meeting tomorrow!", "scheduledTime": "2023-12-01T09:00:00Z" } // Check unread messages { "operation": "messages", "operation": "unread" }
우편
// Check unread emails { "operation": "mail", "operation": "unread", "limit": 10 } // Search emails { "operation": "mail", "operation": "search", "searchTerm": "invoice", "limit": 5 } // Send an email { "operation": "mail", "operation": "send", "to": "recipient@example.com", "subject": "Meeting Agenda", "body": "Here's the agenda for our meeting tomorrow...", "cc": "colleague@example.com" } // List mailboxes { "operation": "mail", "operation": "mailboxes" } // List accounts { "operation": "mail", "operation": "accounts" }
알림
// List all reminders { "operation": "reminders", "operation": "list" } // Search for reminders { "operation": "reminders", "operation": "search", "searchText": "groceries" } // Create a reminder { "operation": "reminders", "operation": "create", "name": "Buy milk", "listName": "Shopping", "notes": "Get organic milk", "dueDate": "2023-12-01T18:00:00Z" } // Open a reminder { "operation": "reminders", "operation": "open", "searchText": "Buy milk" } // List reminders by list ID { "operation": "reminders", "operation": "listById", "listId": "x-apple-reminder://list/123456" }
달력
// Search for events { "operation": "calendar", "operation": "search", "searchText": "meeting", "fromDate": "2023-12-01T00:00:00Z", "toDate": "2023-12-31T23:59:59Z" } // List upcoming events { "operation": "calendar", "operation": "list", "limit": 5 } // Create an event { "operation": "calendar", "operation": "create", "title": "Team Meeting", "startDate": "2023-12-05T14:00:00Z", "endDate": "2023-12-05T15:00:00Z", "location": "Conference Room A", "notes": "Quarterly review meeting", "isAllDay": false, "calendarName": "Work" } // Open an event { "operation": "calendar", "operation": "open", "eventId": "x-apple-calendar://event/123456" }
지도
// Search for locations { "operation": "maps", "operation": "search", "query": "coffee shops near me", "limit": 5 } // Save a location { "operation": "maps", "operation": "save", "name": "Favorite Coffee Shop", "address": "123 Main St, Anytown, USA" } // Get directions { "operation": "maps", "operation": "directions", "fromAddress": "123 Main St, Anytown, USA", "toAddress": "456 Oak Ave, Anytown, USA", "transportType": "driving" } // Drop a pin { "operation": "maps", "operation": "pin", "name": "Meeting Point", "address": "Central Park, New York, NY" } // List guides { "operation": "maps", "operation": "listGuides" } // Create a guide { "operation": "maps", "operation": "createGuide", "guideName": "Favorite Restaurants" } // Add to guide { "operation": "maps", "operation": "addToGuide", "guideName": "Favorite Restaurants", "address": "789 Pine St, Anytown, USA" } // Get map center coordinates { "operation": "maps", "operation": "getCenter" } // Set map center coordinates { "operation": "maps", "operation": "setCenter", "latitude": 37.7749, "longitude": -122.4194 }
웹 검색
// Search the web { "operation": "webSearch", "query": "how to make chocolate chip cookies" }

건축학

Apple MCP 도구는 모듈식 아키텍처로 구축되었습니다.

  • index.ts : MCP 서버를 설정하고 도구를 등록하는 주요 진입점
  • tools.ts : 도구 스키마와 설명을 정의합니다.
  • src/handlers/ : 각 도구에 대한 핸들러 함수가 포함되어 있습니다.
  • src/scripts/ : Apple 애플리케이션과 상호 작용하기 위한 AppleScript 스크립트가 포함되어 있습니다.
  • utils/ : 각 Apple 서비스에 대한 유틸리티 모듈을 포함합니다.

이 도구는 지연 로딩을 사용하여 필요할 때만 모듈을 로딩하여 성능을 향상시킵니다.

보안 및 권한

이 도구는 다양한 Apple 애플리케이션 및 서비스에 대한 접근 권한을 필요로 합니다. macOS에서 요청하면 권한을 부여해야 합니다. 이러한 권한은 시스템 환경설정 > 보안 및 개인 정보 보호 > 개인 정보 보호에서 관리할 수 있습니다.

개발

설정

# Clone the repository git clone https://github.com/yourusername/apple-mcp.git cd apple-mcp # Install dependencies bun install

개발 모드에서 실행

bun run dev

코드 스타일

  • 2칸 들여쓰기를 사용하세요
  • 줄을 100자 이하로 유지하세요
  • 함수 매개변수와 반환에 대해 명시적 유형 주석을 사용하세요.
  • 유형, 인터페이스 및 도구 상수에 대해 PascalCase를 따르세요.
  • 변수와 함수에는 camelCase를 사용하세요

기여하다

기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.

  1. 저장소를 포크하세요
  2. 기능 브랜치를 생성합니다( git checkout -b feature/amazing-feature )
  3. 변경 사항을 커밋하세요( git commit -m 'Add some amazing feature' )
  4. 브랜치에 푸시( git push origin feature/amazing-feature )
  5. 풀 리퀘스트 열기

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

모델 컨텍스트 프로토콜을 통해 연락처, 메모, 메시지, 메일, 알림, 캘린더, 지도, 웹 검색 등의 Apple 애플리케이션 및 서비스와 AI 어시스턴트가 상호 작용할 수 있도록 하는 도구 모음입니다.

  1. 개요
    1. 설치
      1. 요구 사항
        1. 용법
          1. MCP 서버 시작
          2. 클로드에 연결
          3. 도구 예제
        2. 건축학
          1. 보안 및 권한
            1. 개발
              1. 설정
              2. 개발 모드에서 실행
              3. 코드 스타일
            2. 기여하다

              Related MCP Servers

              • -
                security
                F
                license
                -
                quality
                A Model Context Protocol server that enables semantic search and retrieval of Apple Notes content, allowing AI assistants to access, search, and create notes using on-device embeddings.
                Last updated -
                TypeScript
                • Apple
              • -
                security
                F
                license
                -
                quality
                A versatile Model Context Protocol server that enables AI assistants to manage calendars, track tasks, handle emails, search the web, and control smart home devices.
                Last updated -
                2
                Python
                • Apple
                • Linux
              • -
                security
                F
                license
                -
                quality
                A Model Context Protocol server that enables semantic search and RAG over your Apple Notes, allowing AI assistants like Claude to search and reference your notes during conversations.
                Last updated -
                6
                TypeScript
                • Apple
              • -
                security
                F
                license
                -
                quality
                A Model Context Protocol server that enables AI assistants to interact with Apple Reminders on macOS, allowing users to view lists, retrieve, create, complete, and delete reminders through natural language.
                Last updated -
                TypeScript
                • Apple

              View all related MCP servers

              ID: jmws7e3qs4