5P

54yyyu/pyapple-mcp

Developer tools

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기

17 stars 7 forks 품질 79 트렌드 29MIT

MCP server and CLI for seven macOS apps — Messages, Mail, Notes, Calendar, Reminders, Contacts and Maps. Native frameworks, honest truncation.

개요

A Python implementation of Apple-native tools for the Model Context Protocol (MCP), providing seamless integration with macOS applications. There are two front ends over the same integrations: an MCP server for Claude Desktop and other MCP clients, and pyapple, a command line for driving the same ten tools from a shell. They share one permission policy, so what you allow in one you have allowed in both. They are listed in full under The tools, and what they refuse to do is under Limits worth knowing — read that before you rely on any of them. If you are an agent about to drive the CLI rather than a person reading about it, .claude/skills/pyapple/SKILL.md in this repository is the operator guide: which call to make first, how to read the exit status, and which refusals to route around versus report. - : find conversations, read a thread whole, search message text, list what a thread was sent, and send — text or a file. Reads go through chat.

README

원문 README의 일부입니다. 원문 보기.

PyApple MCP Tools

A Python implementation of Apple-native tools for the Model Context Protocol (MCP), providing seamless integration with macOS applications.

There are two front ends over the same integrations: an MCP server for Claude Desktop and other MCP clients, and pyapple, a command line for driving the same ten tools from a shell. They share one permission policy, so what you allow in one you have allowed in both.

88 operations across ten tools. They are listed in full under The tools, and what they refuse to do is under Limits worth knowing — read that before you rely on any of them.

If you are an agent about to drive the CLI rather than a person reading about it, .claude/skills/pyapple/SKILL.md in this repository is the operator guide: which call to make first, how to read the exit status, and which refusals to route around versus report.

Features

  • Messages: find conversations, read a thread whole, search message text, list what a thread was sent, and send — text or a file. Reads go through chat.db directly and are scoped by chat, so a group thread comes back as the group rather than as one participant’s share
  • Notes: search, list, read, create, append, rename and rewrite — with a gate that refuses any note whose content a round trip would destroy — plus filing a note into another folder, and folders themselves: list them, create one, rename one, delete one. create refuses a folder name that does not exist rather than making a folder out of a typo, and the listing is how you find out what does; folder-delete refuses a folder holding notes unless you pass their exact count, because what it deletes does not go to Recently Deleted
  • Contacts: search by name, go the other way from a number or address to a person, and add, correct or delete a card. Reads and writes both go through the Contacts framework; nothing launches Contacts.app
  • Mail: unread, header search, body search, read one message whole by id, a whole thread in order, what is attached and whether the bytes are here, coverage — what each account can actually answer about — send, reply, forward, the drafted form of each of those three, mark read, file, delete, and list mailboxes and accounts. Reads come from the local Envelope Index rather than through the app
  • Reminders: list, search, create, update, complete, uncomplete and delete, plus creating and deleting the lists themselves, through EventKit
GitHub에서 전체 README 보기

설치

npx @modelcontextprotocol/inspector pyapple-mcp
MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →

설정

{ "mcpServers": { "pyapple": { "command": "pyapple-mcp" } } }