meeting-summary-mcp
Enables automatic generation of structured meeting minutes from Feishu meeting links, date ranges, or arbitrary meeting transcripts, with summaries and action items organized by department.
README
meeting-summary-mcp · 通用会议总结 MCP
一个通用的 MCP Server:把任意一场会议交给它(飞书妙记/纪要链接、日期范围,或腾讯会议等导出的文字稿), 它就能自动整理成一份标准会议纪要 —— 会议信息 / 会议摘要 / 会议内容 / 待办事项·按部门分发。
适用场景:开完会 → 让 AI 读取会议内容 → 自动产出结构化纪要,并按「产品部 / 运营部 / 品牌部 …」 把每条待办归到对应部门,省去会后手工整理、逐条分发的功夫。 支持飞书原生数据 + 任意会议文字稿,不绑定单一会议平台。
✨ 功能(MCP Tools)
| 工具 | 说明 |
|---|---|
search_meetings |
按日期范围搜索飞书会议/妙记,返回列表 |
resolve_meeting_link |
从飞书链接提取 token(妙记/纪要/会议链接) |
fetch_meeting |
读取会议妙记内容(总结/待办/章节/关键词) |
fetch_transcript |
读取会议逐字稿全文(说话人 + 发言) |
fetch_note |
读取飞书智能纪要文档(AI 总结 + 待办) |
organize_todos_by_department |
核心:读取飞书会议 → 按岗位配置 → 生成按部门待办清单 |
import_meeting_text |
读取任意会议文字稿文件/文本(腾讯会议等导出的 txt) |
organize_todos_from_text |
核心:从纯文字稿(任意会议平台)→ 按部门生成待办,不依赖飞书 |
📦 安装
1. 安装 Python 依赖
pip install mcp
2. 安装并登录 lark-cli(飞书命令行工具)
npm install -g lark-cli
lark-cli auth login
登录时用你自己的飞书账号扫码授权,需要勾选以下权限范围(Scope):
vc:meeting.search:read
vc:meeting.meetingevent:read
vc:record:readonly
minutes:minutes.search:read
minutes:minutes.basic:read
minutes:minutes.artifacts:read
minutes:minutes.transcript:export
vc:note:read
docs:document.content:read
没有一次性全选也没关系,后续用到某个功能时按提示补授权即可。
🔌 接入你的 AI 客户端
Claude Code(VS Code 扩展 / CLI)
在 settings.json(用户或项目级)的 mcpServers 里加:
{
"mcpServers": {
"meeting-summary": {
"command": "python",
"args": ["D:/meeting-summary-mcp/server.py"]
}
}
}
Claude Desktop / 其他支持 MCP 的客户端
在客户端 MCP 配置里同样指向:command: python,args: [server.py 的绝对路径]。
🚀 使用示例
场景 1:搜索今天/某天的会议
让 AI 调用 search_meetings("2026-08-21", "2026-08-21"),即可拿到当天的会议列表。
场景 2:把妙记/纪要链接整理成按部门待办
- 把会议妙记链接(
.../minutes/obcnxxx)给 AI - 告诉 AI 参会人岗位,例如:
吴楠是北京产品经理,熊燕刚是运营总监,季子禾是直播间运营, 刘晓曼是品牌运营,紫芙BB是品牌对接,王晨旭是直播间运营负责人 - AI 调用
organize_todos_by_department,传入minute_token或link和roles_json,得到:
# 会议待办 · 按部门分发
## 产品/技术部
- [ ] 积分问题排查:…(负责人:吴楠·北京产品经理)
## 直播间运营部
- [ ] 直播间GMV录入:…(负责人:王晨旭·直播间运营负责人)
场景 3:读逐字稿做深度分析
调用 fetch_transcript(minute_token) 拿全文,再让 AI 基于原始发言独立分析(比直接抄 AI 总结更准)。
场景 4:腾讯会议等任意会议(不依赖飞书)
腾讯会议导出的会议文字稿(txt),直接交给 AI 用 import_meeting_text 读取,
再调 organize_todos_from_text 结合岗位配置按部门整理待办:
张三 00:00:10
这个需求需要尽快跟进,明天给产品确认。
李四 00:00:20
培训文档我来输出,会后整理下发给运营。
→ organize_todos_from_text(text, roles_json, title) 输出按部门分组待办。
微信会议 / 录音转写 / 任何文字稿同理。
🧩 roles_json 岗位配置格式
organize_todos_by_department 的 roles_json 参数:
{
"吴楠": {"role": "北京产品经理", "department": "产品/技术部"},
"熊燕刚": {"role": "运营总监", "department": "运营总监"},
"附子LC-直播运营": {"role": "直播间运营", "department": "直播间运营部"},
"刘晓曼": {"role": "品牌运营", "department": "品牌运营/品牌对接"}
}
- 键:参会人姓名(会议里的显示名)或 open_id(
ou_开头) role:岗位;department:所在部门(待办会按此分组)- 没有匹配到部门的待办自动归入「待确认 / 需人工认领」
📄 输出格式(标准四板块模板)
organize_todos_by_department / organize_todos_from_text 输出的标准模板:
# 会议纪要 · {会议主题}
## 一、会议信息 (主题 / 时间 / 参会人)
## 二、会议摘要 (一段话概括)
## 三、会议内容 (按议题分节)
## 四、待办事项 · 按部门分发
### 🛠️ 部门A
- [ ] 任务(负责人:xxx·岗位)
### 待确认 / 需人工认领
模板说明与真实示例见
examples/meeting_template.md
📁 项目结构
meeting-summary-mcp/
├── server.py # MCP 入口(FastMCP + 8 个 tools)
├── feishu_client.py # lark-cli 封装(搜索/妙记/纪要/逐字稿)
├── organizer.py # 按部门待办整理逻辑
├── requirements.txt
├── README.md
├── examples/
│ ├── roles_example.json # 岗位配置示例
│ └── output_example.md # 生成的按部门待办示例
└── test/
└── smoke_test.py # 本机冒烟测试
🧪 自测
cd meeting-summary-mcp
python test/smoke_test.py
需要本机 lark-cli 已登录并授权对应 scope。
🔄 分享给别人
直接把整个 meeting-summary-mcp 目录打包(zip)发给对方,对方按本 README 的
「安装 → 授权 → 接入」三步即可在自己的 AI 客户端 + 自己的飞书账号下使用。
说明:本 MCP 通过 lark-cli 访问飞书,数据只在自己账号授权范围内读取, 不会跨账号泄露会议内容。
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.