关于 🚢 TitanicAIAnalysis: Análisis de Datos con Claude y MCP
TitanicAIAnalysis 是一个教育用途的 Python MCP 服务,可将泰坦尼克号数据集提供给 Claude 和其他兼容客户端分析。它暴露结构化数据、预计算统计信息和乘客搜索功能,无需手动提供 CSV 文件。
主要功能
- 01将泰坦尼克号 CSV 作为资源提供
- 02提供预计算的生还统计信息
- 03按姓名搜索乘客信息
- 04连接到 Claude Desktop
适用场景
- 01询问不同舱位乘客的生还率
- 02查询指定乘客的信息
- 03探索乘客属性与生还情况的关系
MCP 相关
将泰坦尼克号数据集和预计算统计信息作为 MCP 资源提供,并提供乘客搜索工具。Claude Desktop 等 MCP 客户端可连接本地运行的服务。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
🚢 TitanicAIAnalysis:使用 Claude 和 MCP 进行数据分析
本项目演示如何使用 Model Context Protocol (MCP) 创建用于提供结构化数据的服务,以便使用 Claude 等大模型进行分析。通过著名的泰坦尼克号数据集,本实践示例将教你如何把数据集转换为 LLM 可访问的资源和工具。
📋 目录
🔍 简介
TitanicAIAnalysis 是一个教育项目,展示如何创建 MCP(Model Context Protocol)服务来提供 Kaggle 上著名的泰坦尼克号数据集,让 Claude 能够通过以下方式执行复杂的数据分析:
- 资源(MCP 资源):提供结构化数据(泰坦尼克号 CSV)和预计算统计数据
- 工具(MCP 工具):提供特定功能,例如搜索乘客
通过这种方式,你可以借助大模型的强大能力查询和分析结构化数据,而无需手动发送文件。
📦 要求
- Python 3.10 或更高版本
- Claude Desktop(用于与 Claude 集成)
- 文件
Titanic.csv(包含在仓库中,原始数据来自 Kaggle) - 可用于运行 MCP 服务的环境
🛠️ 安装
-
克隆此仓库:
git clone https://github.com/tu-usuario/TitanicAIAnalysis.git cd TitanicAIAnalysis -
配置虚拟环境(使用
uv):uv init . uv venv source .venv/bin/activate # En Windows: .venv\Scripts\activate -
安装依赖项:
uv add "mcp[cli]" pandas -
确保 Titanic.csv 文件位于项目目录中
📂 项目结构
TitanicAIAnalysis/
│
├── main.py # Servidor MCP con resources y tools
├── Titanic.csv # Dataset del Titanic
├── inicio.sh # Script de inicio para Unix/MacOS
├── inicio.bat # Script de inicio para Windows (opcional)
└── README.md # Este archivo
▶️ 如何运行
选项 1:直接运行
你可以直接运行服务:
python main.py
选项 2:安装到 Claude Desktop
-
准备启动脚本/授予其执行权限(MacOS/Linux):
chmod +x inicio.sh -
配置 Claude Desktop:
- 打开 Claude Desktop
- 前往“设置”→“开发者”→“编辑配置”
- 修改
claude_desktop_config.json:
{ "mcpServers": { "TitanicServerMCP": { "command": "/ruta/absoluta/a/TitanicAIAnalysis/inicio.sh", "args": [] } } }对于 Windows,请使用
inicio.bat的完整路径或直接执行命令:{ "mcpServers": { "TitanicServerMCP": { "command": "python", "args": ["C:\\ruta\\completa\\a\\TitanicAIAnalysis\\inicio.bat"] } } } -
使用 MCP CLI 安装(替代方式):
cd TitanicAIAnalysis mcp install main.py -
重启 Claude Desktop
💬 与 Claude 配合使用
服务运行并连接到 Claude 后,你会在界面中看到可用的工具图标(🔨)。
可用资源:
titanic://pasajeros- 完整的泰坦尼克号数据集titanic://estadisticas- 关于生还情况的预计算统计数据
可用工具:
buscar_pasajero- 按姓名搜索特定乘客的信息
📊 分析示例
以下是你可以使用公开的数据向 Claude 提出的一些问题:
- “向我展示 Titanic 的总体生存统计数据”
- “与三等舱乘客相比,一等舱乘客的生存率是多少?”
- “查找姓氏为 ‘Astor’ 的乘客信息”
- “分析社会阶层与生存率之间的相关性”
- “灾难发生时,是否遵守了‘妇女和儿童优先’的原则?”
- “船票价格与生存率之间是否存在某种规律?”
- “生成一个简单的图表,展示不同性别和舱位的生存情况”
⚖️ 优势与限制
优势
- 数据实时更新:每次请求时都会从服务加载数据
- 结构化数据:Claude 可以处理预先处理好的数据
- 动态分析:可针对数据中的特定问题作答
- 与现有系统集成:可连接数据库或内部 API
限制
- 数据量:超大型数据集可能超出 Claude 的上下文限制
- 资源更新:资源会在请求时读取
- 可视化:对于高级图表,最好使用专用工具或实现可视化工具
🚀 可扩展方向
此项目可以通过多种方式扩展:
- 参数化资源:实现
titanic://pasajeros/{clase}这样的资源 - 分析工具:创建用于复杂统计计算的专用工具
- 可视化:添加用于生成图表和可视化内容的工具
- 与数据库集成:连接数据库,而非使用 CSV 文件
- 预测分析:添加预训练的 ML 模型作为工具
使用 MCP 和 Claude 用 ❤️ 开发 | 了解更多关于 MCP 的信息
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。