Token导航 LogoToken导航TokenDH.com
Imessage Query Fastmcp MCP Server logo
数据服务未说明官方级别未说明来源级核验

Imessage Query Fastmcp MCP Server

MCP Server

一个基于FastMCP框架和imessagedb库的MCP服务器,提供安全的iMessage数据库访问,支持LLM查询和分析iMessage对话,具有电话号码验证和自动macOS权限处理功能。

工具数

0

提示词数

0

GitHub Stars

77

资源数

0
数据分析PythonClaudemacOS工具Claude DesktopClaudeCursorClineVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

hannesrudolph

提供方

hannesrudolph

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

](https://mseep.ai/app/hannesrudolph-imessage-query-fastmcp-mcp-server)

iMessage查询MCP服务器

一个MCP服务器,通过模型上下文协议(MCP)提供对iMessage数据库的安全访问。此服务器使用FastMCP框架和imessagedb库构建,使LLM能够通过适当的电话号码验证和自动macOS权限处理来查询和分析iMessage对话。

📋 系统要求

  • macOS(访问iMessage数据库所需)
  • Python 3.12+(现代类型提示所需)
  • 紫外线 (现代Python包管理器)
  • 完整磁盘访问权限 适用于您的MCP客户端(Claude Desktop、Cursor、VS Code等)

📦 依赖项

安装uv(必需)

此项目使用 uv 用于快速、可靠的Python包管理。先安装:

# Install uv using Homebrew (recommended)
brew install uv

# Or install using the official installer
curl -LsSf https://astral.sh/uv/install.sh | sh

Python依赖关系

脚本使用嵌入的元数据自动管理其依赖关系。无需单独安装!依赖关系包括:

  • fastmcp:构建模型上下文协议服务器的框架
  • 消息:用于访问和查询macOS Messages数据库的Python库
  • 电话号码:谷歌的电话号码处理库,用于正确的号码验证和格式化

当脚本通过运行时,所有依赖项都会自动安装 uv.

📑 目录

- 克劳德桌面 - Cline VSCode插件

🛠️ MCP工具

服务器向LLM公开以下工具:

get_chat_transcript

使用可选的日期过滤功能检索特定电话号码的消息历史记录。

参数:

  • phone_number (必填):任何格式的电话号码(首选E.164格式)
  • start_date (可选):ISO格式的开始日期(YYYY-MM-DD)
  • end_date (可选):ISO格式的结束日期(YYYY-MM-DD)

特征:

  • 自动电话号码验证和格式化
  • 消息文本和时间戳
  • 带有丢失文件检测的附件信息
  • 日期范围筛选(如果未指定日期,则默认为过去7天)
  • 发件人标识(is_from_me标志)

🚀 入门指南

克隆存储库:

git clone https://github.com/hannesrudolph/imessage-query-fastmcp-mcp-server.git
cd imessage-query-fastmcp-mcp-server

📦 安装选项

您可以在Claude Desktop、Cline VSCode插件或任何其他MCP客户端中安装此MCP服务器。选择最适合您需求的选项。

选项1:克劳德桌面

  1. 查找您的Claude Desktop配置文件:

- 位置: ~/Library/Application Support/Claude/claude_desktop_config.json - 如果文件不存在,则创建该文件

  1. 添加服务器配置:
{
  "mcpServers": {
    "imessage-query": {
      "command": "/full/path/to/imessage-query-server.py"
    }
  }
}
  1. 替换路径 使用克隆存储库的完整路径(例如。, /Users/username/Projects/imessage-query-fastmcp-mcp-server/imessage-query-server.py)
  1. 重新启动克劳德桌面 完全(Cmd+Q,然后重新启动)

选项2:Cline VSCode插件

将此服务器与 Cline VSCode插件:

  1. 在VSCode中,单击Cline插件侧栏中的服务器图标(☰)
  2. 点击“编辑MCP设置”按钮(✎)
  3. 将以下配置添加到设置文件中:
{
  "imessage-query": {
    "command": "/full/path/to/imessage-query-server.py"
  }
}
  1. 替换路径 包含克隆存储库的完整路径

选项3:其他MCP客户端

对于其他MCP客户端,使用直接脚本路径作为命令:

/full/path/to/imessage-query-server.py

剧本很精彩(#!/usr/bin/env -S uv run --script)自动处理依赖关系管理。

备注:此简化配置取代了以前的FastMCP安装方法。该脚本现在是自包含的,并通过以下方式管理其自身的依赖关系 uv.

🔐 macOS权限设置

此服务器需要 全磁盘访问 读取iMessage数据库的权限。服务器包括智能权限检测,并将指导您完成设置过程。

自动权限检测

当您首次使用服务器时,它将:

  1. 检测您的MCP客户端 (克劳德桌面、光标、VS代码等)
  2. 检查磁盘是否完全访问 许可
  3. 自动打开系统首选项 转到正确的设置面板
  4. 提供分步说明 特定于您的应用程序

手动权限设置

如果自动检测不起作用,请按照以下步骤操作:

  1. 打开系统首选项隐私和安全全磁盘访问
  2. 单击锁图标 并输入密码进行更改
  3. 点击“+”按钮 添加应用程序
  4. 导航到并选择您的MCP客户端:

- 克劳德桌面: /Applications/Claude.app - 光标: /Applications/Cursor.app - VS代码: /Applications/Visual Studio Code.app

  1. 重新启动MCP客户端 完全(Cmd+Q,然后重新启动)

常见问题

  • 权限被拒绝错误:确保在授予权限后重新启动了MCP客户端
  • “uv”而不是应用程序名称:服务器将自动检测您的实际MCP客户端并提供正确的指令
  • 找不到数据库:确保您已使用Messages应用程序并且启用了iMessage

安全说明

此服务器只需要 读取访问 到您的iMessage数据库。它不能修改、删除或发送消息。

🔒 安全功能

  • 只读访问 到iMessage数据库(无法修改、删除或发送消息)
  • 电话号码验证 使用具有正确E.164格式的谷歌电话号码库
  • 安全附件处理 具有丢失文件检测和元数据提取功能
  • 日期范围验证 防止无效查询
  • 进度输出抑制 用于MCP协议中的干净JSON响应
  • 智能权限检测 具有自动系统首选项导航功能
  • MCP客户端标识 获取准确的权限指导

📚 开发文档

该存储库包括用于开发的全面文档:

  • dev_docs/imessagedb-documentation.txt:关于iMessage数据库结构和imessagedb库功能的完整文档
  • dev_docs/fastmcp-documentation.txt:FastMCP框架细节和MCP工具开发
  • dev_docs/mcp-documentation.txt:模型上下文协议规范

本文档在开发功能时用作上下文,可以与LLM一起使用以协助开发。

⚙️ 环境变量

变量描述默认值
SQLITE_DB_PATHiMessage数据库的自定义路径~/Library/Messages/chat.db

服务器会自动将iMessage数据库定位在默认的macOS位置。仅自定义数据库位置需要环境变量。

🔧 高级用法

自定义数据库路径

如果需要使用自定义数据库路径:

export SQLITE_DB_PATH="/path/to/custom/chat.db"

测试服务器

直接使用mcptools测试服务器(github.com/f/mcptools):

# Navigate to the repository directory
cd /path/to/imessage-query-fastmcp-mcp-server

# List available tools
mcp tools ./imessage-query-server.py

# Test a tool call
mcp call get_chat_transcript ./imessage-query-server.py -p '{"phone_number": "+1234567890"}'

该脚本将通过以下方式自动处理依赖关系安装 uv 第一次跑步时。

🐛 故障排除

常见错误消息

"❌ 需要完整磁盘访问权限“

“找不到邮件数据库”

  • 确保您至少使用过一次Messages应用程序
  • 验证在“消息”首选项中启用了iMessage

“电话号码无效”

  • 电话号码使用谷歌的电话号码库进行验证
  • 尝试使用E.164格式(例如“+1234567890”)
  • 没有国家代码的美国号码将被假定为美国号码

获取帮助

如果您遇到问题:

  1. 查看错误消息以获取具体指导
  2. 确保您的MCP客户端具有完全磁盘访问权限
  3. 验证消息应用程序是否已使用,iMessage是否已启用
  4. 尝试使用mcptools直接测试服务器(请参阅高级用法)

目录标签

目录标签

数据分析PythonClaudemacOS工具iMessage查询本地部署MCP服务器LLM集成数据库访问

支持客户端

Claude DesktopClaudeCursorClineVS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

部署方式(deploymentType,部署类型)

local-only

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明nonelocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP