远程MCP服务器

Amazing Marvin生产力系统的远程MCP(模型上下文协议)服务器,兼容Claude移动和桌面应用,提供28种生产力工具、OAuth 2.0认证和云部署。

  • by Janus77777
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 Janus77777/amazing-marvin-remote-mcp

使用说明

令人惊叹的Marvin远程MCP服务器

一个用于Amazing Marvin生产力系统的远程MCP(模型上下文协议)服务器,兼容Claude的移动和桌面应用程序。

✨ 特点/功能

  • 28款生产力工具 - 所有原始的Amazing Marvin MCP工具已移植到远程版本
  • 移动设备兼容 - 与Claude移动应用(iOS/Android)兼容
  • OAuth 2.0 认证 - 使用动态客户端注册实现安全认证
  • Cloudflare Workers(云防护网工作者) - 无服务器部署,结合全球边缘网络
  • 缓存 - 智能缓存以提升性能
  • 完整API覆盖 - 读/写操作、分析、时间追踪

🚀 快速入门

1. 先决条件

  • Cloudflare账户
  • 令人惊叹的Marvin API密钥
  • Node.js 18+ 和 npm/yarn

2. 安装

# Clone and install dependencies
git clone <your-repo-url>
cd amazing-marvin-remote-mcp
npm install

3. 配置

# Set up Wrangler CLI
npm install -g wrangler
wrangler login

# Create KV namespaces
wrangler kv:namespace create "CACHE"
wrangler kv:namespace create "TOKENS"
wrangler kv:namespace create "CACHE" --preview
wrangler kv:namespace create "TOKENS" --preview

# Update wrangler.toml with the namespace IDs
# Set secrets
wrangler secret put AMAZING_MARVIN_API_KEY
wrangler secret put OAUTH_CLIENT_SECRET  # Generate a random string
wrangler secret put JWT_SECRET           # Generate a random string

4. 部署

# Development
npm run dev

# Production
npm run deploy

5. 连接至Claude

  1. 前往 Claude.ai → 设置 → 连接器
  2. 添加自定义连接器
  3. 输入您的工作节点URL: https://your-worker.your-subdomain.workers.dev
  4. 使用您的Amazing Marvin API密钥进行授权

🛠️ 可用工具

读取操作(12种工具)

  • get_daily_productivity_overview - 全面的每日概览
  • get_tasks - 今天的预定事项
  • get_projects - 所有项目
  • get_categories - 所有类别
  • get_due_items - 已逾期/到期项目
  • get_child_tasks - 子任务(具有递归选项)
  • get_all_tasks - 所有任务(带标签过滤)
  • get_labels - 任务标签
  • get_goals - 目标和宗旨
  • get_account_info - 账户详情
  • get_completed_tasks - 已完成的项目
  • get_completed_tasks_for_date - 在特定日期完成的项目

写入操作(10种工具)

  • create_task - 创建新任务
  • mark_task_done - 完成任务
  • create_project - 创建项目
  • start_time_tracking - 开始计时
  • stop_time_tracking - 停止时间追踪
  • batch_mark_done - 完成多项任务
  • batch_create_tasks - 创建多个任务
  • create_project_with_tasks - 创建包含任务的项目
  • quick_daily_planning - 生成每日计划概览
  • get_daily_focus - 获取每日任务分类

分析运营(6种工具)

  • get_productivity_summary - 当前生产力概览
  • get_productivity_summary_for_time_range - 时间范围分析
  • get_project_overview - 项目完成指标
  • get_time_tracking_summary - 时间跟踪数据
  • get_done_items - 替代完成项检索
  • get_time_tracks - 时间追踪记录

📱 手机设置指南

iOS/Android Claude 应用

  1. 首先在网页上进行配置

    • 在您的浏览器中打开Claude.ai
    • 进入设置 → 连接器 → 添加自定义连接器
    • 名字:“神奇的马文”
    • 网址: https://your-worker.your-subdomain.workers.dev
  2. 授权访问

    • 点击“连接”
    • 当提示时,请输入您的Amazing Marvin API密钥
    • 完整的OAuth流程
  3. 在手机上使用

    • 设置自动同步到手机应用
    • 开始在对话中使用Marvin工具

示例用法

Claude, what's my daily productivity overview?

Claude, create a task "Review project proposal" scheduled for tomorrow

Claude, show me my project completion metrics

🔧 开发

项目结构

src/
├── worker.ts          # Main Cloudflare Worker
├── oauth.ts           # OAuth 2.0 implementation
├── marvin-api.ts      # Amazing Marvin API client
├── mcp-tools.ts       # MCP tool implementations
├── types.ts           # TypeScript types
└── config.ts          # Tool definitions & config

本地开发

# Start development server
npm run dev

# Type checking
npm run type-check

# Deploy to staging
wrangler deploy --env staging

环境变量

通过 Wrangler 设置这些密钥:

  • AMAZING_MARVIN_API_KEY - 您的神奇Marvin API密钥
  • OAUTH_CLIENT_SECRET - OAuth的随机密钥(使用crypto.randomUUID()生成)
  • JWT_SECRET - 用于JWT签名的随机密钥(使用crypto.randomUUID()生成)

🔐 安全

  • OAuth 2.0 - 行业标准认证
  • JWT 令牌 - 安全、无状态的身份验证
  • API密钥加密 用户API密钥安全存储
  • CORS 保护 - 适当的跨域控制
  • 速率限制 - 内置Cloudflare防护

🚨 故障排除

常见问题

  1. 无效的API密钥 - 在Amazing Marvin中检查您的Amazing Marvin API密钥:Amazing Marvin → 设置 → API

  2. “未找到工具” - 确保你使用的是上述列表中的确切工具名称

  3. “身份验证失败” - 在Claude设置中重新授权连接器

  4. KV 命名空间错误 - 验证 wrangler.toml 中的命名空间 ID 是否与您创建的命名空间匹配

调试模式

通过设置环境变量来启用调试模式:

wrangler secret put DEBUG_MODE
# Enter: true

📊 性能

  • 全球边缘网络 - 部署到200多个Cloudflare节点
  • 智能缓存 - 对频繁访问的数据进行10分钟缓存
  • 亚秒级响应 - 优化为适合移动设备使用
  • 99.9%的正常运行时间 - Cloudflare的可靠性保证

🤝 贡献(或:参与贡献)

  1. 为仓库创建分支(或:克隆仓库)
  2. 创建你的特性分支: git checkout -b feature/amazing-feature
  3. 提交更改: git commit -m 'Add amazing feature'
  4. 推送到分支: git push origin feature/amazing-feature
  5. 提交一个拉取请求(或合并请求)

📄 许可证

MIT 许可证 - 详见 许可证 文件中有详细信息。

🙏 致谢


用心打造,献给了不起的Marvin和Claude社区