返回市场
双子数据研究分析MCP服务器

双子数据研究分析MCP服务器

作者:falahgs4 星标更新:2025-04-15

项目介绍

Gemini 数据分析与研究MCP服务器

一款强大的模型上下文协议(MCP)服务器,利用Google的Gemini Flash 2人工智能模型进行全面的数据分析、研究报告生成以及自动电子邮件发送。该服务器提供了一整套解决方案,用于分析数据集、生成研究内容并通过电子邮件直接分发结果给利益相关者。

🚀 特性

1. 高级数据分析与报告 (analyze-data)

  • 对Excel(.xlsx, .xls)和CSV文件进行全面分析
  • 功能:
    • 自动检测并解析数据类型
    • 数值列的统计分析
    • 使用Chart.js的交互式可视化
    • 利用Gemini Flash 2的人工智能洞察
    • 包含交互式图表的详细HTML报告
    • 分析结果的直接电子邮件发送
    • 基本和详细分析模式
    • 可自定义输出目录
    • 支持大数据集
    • 自动异常值检测
    • 数值列的相关性分析

2. 研究与电子邮件分发系统 (send-email)

  • 专业研究报告生成与分发
  • 功能:
    • 利用人工智能生成研究报告
    • 分析结果的自动化电子邮件发送
    • 支持多种内容类型:
      • 研究报告
      • 技术报告
      • 数据分析摘要
      • 商业智能报告
    • 专业电子邮件主题行生成
    • 支持HTML和纯文本内容
    • 具有内联显示功能的图像附件
    • 安全SMTP认证
    • 全面的错误处理和状态报告
    • 专业的电子邮件格式
    • 消息传递跟踪
    • 可自定义的电子邮件模板

3. 研究与分析生成器 (generate-thinking)

  • 高级研究与分析生成
  • 功能:
    • 研究报告生成
    • 技术文档编写
    • 数据分析摘要
    • 商业智能报告
    • 时间戳响应保存
    • 可自定义输出目录
    • 生成内容的直接电子邮件发送
    • 专业内容创作

📊 快速开始

先决条件

  • Node.js(v16或更高版本)
  • TypeScript
  • Claude Desktop
  • Google Gemini API密钥
  • SMTP电子邮件账户(用于电子邮件功能)

安装

  1. 克隆并设置:
git clone [your-repo-url]
cd gemini-data-analysis-email-generator
npm install
  1. 创建.env文件:
GEMINI_API_KEY=your_api_key_here
NODEMAILER_EMAIL=your.email@gmail.com
NODEMAILER_PASSWORD=your_app_password_here
  1. 构建项目:
npm run build

Claude Desktop配置

  1. 创建/编辑%AppData%/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "Gemini 数据分析": {
      "command": "node",
      "args": ["path/to/gemini-data-analysis-email-generator/dist/index.js"],
      "cwd": "path/to/gemini-data-analysis-email-generator",
      "env": {
        "GEM_ INI_API_KEY": "your_api_key_here",
        "NODEMAILER_EMAIL": "your.email@gmail.com",
        "NODEMAILER_PASSWORD": "your_app_password_here"
      }
    }
  }
}
  1. 重启Claude Desktop

📊 使用工具

数据分析与AI

{
  "name": "analyze-data",
  "arguments": {
    "fileData": "base64_encoded_file_content",
    "fileName": "data.xlsx",
    "analysisType": "detailed",
    "outputDir": "./analysis_results"
  }
}

带AI主题生成的电子邮件发送

{
  "name": "send-email",
  "arguments": {
    "to": "recipient@example.com",
    "subjectPrompt": "创建一个专业的商业报告主题行",
    "text": "你好!这是我们的电子邮件的纯文本版本。",
    "html": "<h1>你好!</h1><p>这是<b>HTML</b>版本的我们的电子邮件。</p>",
    "images": [
      {
        "name": "chart.png",
        "data": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..."
      }
    ]
  }
}

思维生成

{
  "name": "generate-thinking",
  "arguments": {
    "prompt": "分析2024年第一季度的市场趋势",
    "outputDir": "./thinking_output"
  }
}

📁 输出结构

output/
├── analysis/
│   ├── plots/
│   │   ├── column1_histogram_[时间戳].html
│   │   └── column2_histogram_[时间戳].html
│   ├── analysis_[时间戳].txt
│   └── report_[时间戳].html
├── thinking/
│   └── gemini_thinking_[时间戳].txt
└── emails/
    └── email_log_[时间戳].txt

🛠️ 开发

可用脚本

  • npm run build: 将TypeScript编译成JavaScript
  • npm run start: 启动MCP服务器
  • npm run dev: 使用ts-node运行开发模式

环境变量

  • GEMINI_API_KEY: 您的Google Gemini API密钥
  • NODEMAILER_EMAIL: 发送电子邮件的您的电子邮件地址
  • NODEMAILER_PASSWORD: 您的电子邮件应用密码(对于Gmail,请使用应用密码)

🔒 安全注意事项

  • 安全存储您的API密钥
  • 不要分享您的.env文件
  • 对于Gmail,请使用应用密码而不是您的主账户密码
  • 注意通过系统发送的电子邮件内容
  • 绝不在电子邮件示例中包含敏感或个人信息

🐛 故障排除

常见问题

  1. API密钥错误

    • 验证.env文件是否存在
    • 检查API密钥的有效性
    • 确保环境加载正确
  2. Claude Desktop连接

    • 验证config.json语法
    • 检查配置中的文件路径
    • 重启Claude Desktop
  3. 电子邮件发送问题

    • 检查NODEMAILER_EMAIL和NODEMAILER_PASSWORD是否设置正确
    • 对于Gmail,请确保您已创建了应用密码
    • 对于非Gmail提供商,请验证是否启用了不太安全的应用访问
    • 检查收件人电子邮件地址格式
  4. 数据分析问题

    • 确保文件格式受支持(.xlsx, .xls, .csv)
    • 检查文件编码(推荐UTF-8)
    • 验证文件大小在限制范围内
    • 确保数值列格式正确

调试模式

在您的.env文件中添加DEBUG=true以启用详细日志记录:

GEMINI_API_KEY=your_key_here
DEBUG=true

📚 API参考

数据分析工具

interface AnalyzeDataParams {
  fileData: string;         // base64编码的文件内容
  fileName: string;         // 文件名(必须是.xlsx, .xls或.csv)
  analysisType: 'basic' | 'detailed';  // 分析类型
  outputDir?: string;      // 可选输出目录
}

电子邮件发送工具

interface SendEmailParams {
  to: string;              // 收件人电子邮件地址
  subjectPrompt: string;   // 提示Gemini生成电子邮件主题
  text: string;            // 电子邮件的纯文本版本
  html?: string;           // 电子邮件的HTML版本(可选)
  images?: {               // 可选的附加图片
    name: string;          // 图像文件名
    data: string;          // base64编码的图像数据
  }[];
}

思维生成工具

interface GenerateThinkingParams {
  prompt: string;           // 分析提示
  outputDir?: string;       // 可选输出目录
}

👨‍💻 作者

Falah G. Salieh
📍 巴格达,伊拉克
📅 2025

🤝 贡献

  1. 分叉仓库
  2. 创建您的功能分支
  3. 提交更改
  4. 推送到分支
  5. 创建拉取请求

📄 许可证

MIT许可证 - 查看LICENSE文件获取详情