iMessage Query
An MCP server for querying your iMessage database on macOS, allowing LLMs to safely access and search conversations.
iMessage Query MCP Server
An MCP server that provides safe access to your iMessage database through Model Context Protocol (MCP). This server is built with the FastMCP framework and the imessagedb library, enabling LLMs to query and analyze iMessage conversations with proper phone number validation and attachment handling.
📋 System Requirements
- macOS (required for iMessage database access)
- Python 3.6+
📦 Dependencies
Install all required dependencies:
# Using pip
pip install -r requirements.txt
Required Packages
- fastmcp: Framework for building Model Context Protocol servers
- imessagedb: Python library for accessing and querying the macOS Messages database
- phonenumbers: Google's phone number handling library for proper number validation and formatting
All dependencies are specified in requirements.txt for easy installation.
📑 Table of Contents
- System Requirements
- Dependencies
- MCP Tools
- Getting Started
- Installation Options
- Safety Features
- Development Documentation
- Environment Variables
🛠️ MCP Tools
The server exposes the following tools to LLMs:
get_chat_transcript
Retrieve message history for a specific phone number with optional date filtering. Includes:
- Message text and timestamps
- Attachment information (if any)
- Proper phone number validation
- Date range filtering
🚀 Getting Started
Clone the repository:
git clone https://github.com/hannesrudolph/imessage-query-fastmcp-mcp-server.git
cd imessage-query-fastmcp-mcp-server
📦 Installation Options
You can install this MCP server in either Claude Desktop or the Cline VSCode plugin. Choose the option that best suits your needs.
Option 1: Install for Claude Desktop
Install using FastMCP:
fastmcp install imessage-query-server.py --name "iMessage Query"
Option 2: Install for Cline VSCode Plugin
To use this server with the Cline VSCode plugin:
- In VSCode, click the server icon (☰) in the Cline plugin sidebar
- Click the "Edit MCP Settings" button (✎)
- Add the following configuration to the settings file:
{
"imessage-query": {
"command": "uv",
"args": [
"run",
"--with",
"fastmcp",
"fastmcp",
"run",
"/path/to/repo/imessage-query-server.py"
]
}
}
Replace /path/to/repo with the full path to where you cloned this repository (e.g., /Users/username/Projects/imessage-query-fastmcp-mcp-server)
🔒 Safety Features
- Read-only access to the iMessage database
- Phone number validation using the phonenumbers library
- Safe attachment handling with missing file detection
- Date range validation
- Progress output suppression for clean JSON responses
📚 Development Documentation
The repository includes documentation files for development:
dev_docs/imessagedb-documentation.txt: Contains comprehensive documentation about the iMessage database structure and the imessagedb library's capabilities.
This documentation serves as context when developing features and can be used with LLMs to assist in development.
⚙️ Environment Variables
No environment variables are required as the server automatically locates the iMessage database in the default macOS location.
관련 서버
Minecraft Wiki MCP
A server for browsing and searching the official Minecraft Wiki.
Perplexity MCP Server
Web search using Perplexity's API.
Langgraph Deep Search MCP Server
A deep search server powered by LangGraph and the Google Gemini API.
ChunkHound
A local-first semantic code search tool with vector and regex capabilities, designed for AI assistants.
Enhanced PubMed Search
A search server for PubMed, the biomedical literature database, using a pure Node.js implementation.
YouTube Music MCP
Search and play tracks on YouTube Music via AI assistants.
Google Maps MCP Server
Integrates Google Maps for route planning, traffic analysis, and cost estimation.
AWS Documentation
Fetch, convert, and search AWS documentation pages, with recommendations for related content.
Crawleo MCP Server
Crawleo MCP - Web Search & Crawl for AI Enable AI assistants to access real-time web data through native tool integration. Two Powerful Tools: web.search - Real-time web search with flexible formatting Search from any country/language Device-specific results (desktop, mobile, tablet) Multiple output formats: Enhanced HTML (AI-optimized, clean) Raw HTML (original source) Markdown (formatted text) Plain Text (pure content) Auto-crawl option for full content extraction Multi-page search support web.crawl - Deep content extraction Extract clean content from any URL JavaScript rendering support Markdown conversion Screenshot capture Multi-URL support Features: ✅ Zero data retention (complete privacy) ✅ Real-time, not cached results ✅ AI-optimized with Enhanced HTML mode ✅ Global coverage (any country/language) ✅ Device-specific search (mobile/desktop/tablet) ✅ Flexible output formats (4 options) ✅ Cost-effective (5-10x cheaper than competitors) ✅ Simple Claude Desktop integration Perfect for: Research, content analysis, data extraction, AI agents, RAG pipelines, multi-device testing
National Parks
Access real-time information about U.S. National Parks, including park details, alerts, and activities, via the National Park Service (NPS) API.