mcpField
L
lu

lu

本地服务
github.com/adelaidasofia商业与营销03 天前更新

关于 lu

lu 是用于管理 lu.ma 活动、票务、优惠码、RSVP 和参会者邮件的 MCP 服务。写入操作采用草稿与确认两步流程,并为自由文本字段提供审计日志和提示注入清理。

主要功能

  1. 01创建和更新活动
  2. 02设置票种与价格
  3. 03创建活动或日历优惠码
  4. 04查看嘉宾与 RSVP
  5. 05写入操作先草拟再确认
  6. 06审计日志与文本清理

适用场景

  1. 01筹备付费工作坊并发送参会邮件
  2. 02管理多场活动项目的 RSVP
  3. 03基于活动模板调整定期聚会时间

MCP 相关

该服务将 lu.ma 活动管理功能作为 MCP 工具提供。读取操作直接调用 API;写入操作必须先创建草稿并明确确认,才会提交到 Luma。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库
安装包
mcpbluma-mcp.mcpb0.1.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

luma-mcp

许可证 GitHub 星标数 最近一次提交 未解决的问题 PyPI 版本 PyPI 下载量 由 Mycelium AI 构建

lu.ma 活动 MCP 服务。创建活动、设置票价、发放优惠码、列出 RSVP,并向参与者发送邮件。所有写入操作都采用草稿+确认流程,因此只有在你明确批准后,内容才会发布到 Luma。基于官方 Luma 公共 API 构建。

功能

  • 创建和更新 lu.ma 活动(名称、日期、时区、容量、会议 URL、可见性、封面图片)
  • 设置票种和价格
  • 发放优惠码(适用于日历或活动,可按百分比或固定金额分折扣,并设置兑换上限)
  • 列出活动嘉宾 / RSVP
  • 向参与者发送 Markdown 邮件(会前准备、活动当天、后续跟进)
  • 记录每次 API 调用的审计日志(JSONL,并对密钥 / 令牌进行脱敏)
  • 对用户提供的自由文本字段进行提示词注入清理

工具(v0.1.0)

读取(直接调用 API):

  • luma_health — 身份验证检查 + 草稿存储大小
  • luma_get_event — 按 ID 获取单个活动
  • luma_list_events — 分页列出日历活动
  • luma_list_event_guests — 按状态筛选 RSVP
  • luma_list_coupons — 列出日历或活动范围内的优惠码

写入(草稿+确认配对):

  • luma_create_event_draft / luma_create_event_confirm
  • luma_update_event_draft / luma_update_event_confirm
  • luma_create_ticket_type_draft / luma_create_ticket_type_confirm
  • luma_create_coupon_draft / luma_create_coupon_confirm
  • luma_send_event_email_draft / luma_send_event_email_confirm

另有:

  • luma_cancel_draft — 取消尚未确认的草稿(幂等)

共 14 个工具。

架构

luma-mcp/
├── pyproject.toml
├── README.md
├── SETUP.md
├── LICENSE
├── .env.example
├── luma_mcp/
│   ├── __init__.py
│   ├── server.py             FastMCP entry point + .env loader
│   ├── client.py             HTTP wrapper around api.lu.ma/public/v1
│   ├── drafts.py             Thread-safe draft store with TTL
│   ├── audit.py              JSONL audit log with redaction
│   ├── scrubber.py           Prompt-injection neutralizer
│   ├── _shared/              Day-1 shared utilities
│   │   ├── normalize.py      Timezone alias + datetime helpers
│   │   └── types.py          Permissive typed shapes for API responses
│   └── tools/
│       ├── health.py         luma_health, luma_cancel_draft
│       ├── events.py         create / update / get / list events
│       ├── tickets.py        create ticket types
│       ├── coupons.py        create / list coupons
│       ├── guests.py         list event guests
│       └── emails.py         send email to attendees
└── tests/integration/
    └── test_full_pipeline.py 10-step bare-runnable verification

安全模式

  1. 每次写入都需先创建草稿并确认。 草稿工具会返回 draft_id;只有调用对应的确认工具后,内容才会发送到 Luma。草稿 1 小时后过期,且只能确认一次。
  2. 审计日志。 每次 API 调用都会以 JSONL 格式记录,包含 ts、tool、action、参数(已脱敏)、status、latency_ms。路径:~/.claude/luma-mcp/audit.log。
  3. 令牌脱敏。 与长密钥启发式规则匹配的字符串,或 api_key、token、cookie、secret 等键下的值,都会在记录日志前被屏蔽。
  4. 提示词注入清理器。 用户提供的自由文本字段(活动名称、描述、邮件主题、邮件正文)会经过 unicodedata.normalize("NFKC") 处理,清除零宽字符,并将角色伪装前缀 / 假围栏用反引号括起来(保留操作人员的可见性,同时消除其对下游读取时模型的影响)。
  5. 工具调用路径中不使用 LLM。 所有路由决策都基于规则。

使用场景

  • 工作坊 + 付费活动 — 设置标价,发放面向特定社群的 100% 折扣优惠码,获取嘉宾名单,并群发会前准备邮件。
  • 多场活动计划 — 发布一则 cohorte 公告,在 Luma 上创建子活动,并汇总各场活动的 RSVP。
  • 定期聚会 — 通过 update_event_draft 复制活动模板、更改日期并发布。

安装

打开 Claude Code,粘贴:

/plugin marketplace add adelaidasofia/luma-mcp
/plugin install luma-mcp@luma-mcp

服务器进行身份验证需要满足两个先决条件:

  1. 在你要使用的日历上订阅 Luma Plus(公共 API 仅限 Plus 用户使用)。
  2. 从 https://lu.ma/settings/api 生成 API key,并将其填入 ~/.claude/luma-mcp/.env,格式为 LUMA_API_KEY=...。

完成这两个步骤后,重启 Claude Code。工具会显示在 mcp__luma__* 下。

旧版安装方式

手动通过 .mcp.json 注册的步骤见 SETUP.md。上述插件安装方式已取代此方法。

验证

cd ~/.claude/luma-mcp && python3 tests/integration/test_full_pipeline.py
# expected: PASSED — luma-mcp v0.1.0 integration test (10 steps green)

然后在 Claude Code 会话中运行:mcp__luma__luma_health() → {ok: true, user: {...}}。

速率限制

Luma 的公共 API 对每个日历的请求数上限为每分钟 200 次。客户端不会在遇到 429 错误时自动重试,而是显示错误并由操作者控制请求频率。

相关 MCP

同一作者,采用相同的架构模式(FastMCP、写入时先起草再确认、适用时自动导出到 vault):

遥测

此插件会在某台机器上的 Claude Code 会话中首次加载时,向 myceliumai.co 发送一条匿名安装信号。

发送的内容:

  • 插件名称(例如 slack-mcp)
  • 插件版本(例如 0.1.0)

不会发送的内容:

  • 不会发送用户标识符、姓名、电子邮件、令牌或 API 密钥
  • 不会发送文件路径、消息内容或任何工作相关信息
  • 去重处理后不会存储 IP 地址

**原因:**帮助维护者了解用户实际安装了哪些插件,以便将精力投入到有人使用的插件上。

**选择退出:**启动 Claude Code 前,设置环境变量 MYCELIUM_NO_PING=1。钩子将完全跳过网络调用。已发送信号的安装会在 ~/.mycelium/onboarded-<plugin> 留下一个标记文件——如果要重置状态,请将其删除。

许可证

MIT。参见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。