Meeting Transcript Analyzer
A multi-agent system that analyzes meeting transcripts to generate summaries, extract key points, and identify actionable tasks through an easy-to-use web interface.
README
Meeting Transcript Analyzer - Multi-Agent MCP App
A multi-agent system that analyzes meeting transcripts using AI-powered summarization, key point extraction, and task identification.
Features
- Summarize: Generate concise summaries of meeting transcripts (see screenshots)
- Key Highlights: Extract and display key points as bullet points (•) (see screenshots)
- Grab Tasks: Identify actionable tasks from meeting discussions (see screenshots)
- Modern Web UI: Clean, responsive horizontal layout interface for easy interaction
Prerequisites
- Python 3.9+
- OpenAI API key
Setup
-
Install dependencies:
pip install -r requirements.txt -
Configure OpenAI API Key: Create a file named
openai_key.txtin the project root and add your OpenAI API key:sk-your-openai-api-key-here
Running the Agents
Important: All commands must be run from the project root directory.
Note: Start the sub-agents first, then the super agent to ensure proper tool registration.
1. Start the Summarizer Agent (Port 8001)
python3 -m uvicorn agents.summarizer_agent:summarizer_app --reload --port 8001
2. Start the Task Extractor Agent (Port 8002)
python3 -m uvicorn agents.task_extractor_agent:task_app --reload --port 8002
3. Start the Super Agent (Port 8000)
python3 -m uvicorn agents.super_agent:super_app --reload --port 8000
Using the Application
-
Access the Web Interface: Open your browser and go to: http://localhost:8000
-
Analyze a Transcript:
- Paste your meeting transcript in the left textarea
- Enter a prompt like "Summarize this meeting" or "Extract key points" in the second textarea
- Click "Analyze Transcript"
-
View Results:
- Results appear in the right panel with structured formatting
- Summaries appear as formatted paragraphs
- Key points display as clean bullet points (•)
- Tasks show as numbered actionable items
- Metadata shows transcript length, tool used, and point/task counts
Application Screenshots
Welcome Page
The clean, modern interface users see when first opening the application.
Summarize Flow
The application summarizing a meeting transcript with a brief, concise style.
Key Highlights Flow
Extracting key insights and main points from a meeting transcript as bullet points.
Task Extraction Flow
Identifying and extracting actionable tasks from meeting discussions.
Architecture
- Super Agent (Port 8000): Main entry point that serves the web UI and orchestrates sub-agents
- Summarizer Agent (Port 8001): Handles transcript summarization and key point extraction
- Task Extractor Agent (Port 8002): Identifies and extracts actionable tasks from transcripts
Technical Details
- Backend Formatting: All response formatting is handled by the super agent for consistent UI presentation
- Structured Responses: Responses include type, title, content, and metadata fields
- MCP Protocol: Uses Model Context Protocol for agent communication
- Responsive Design: UI adapts to mobile devices with vertical stacking
API Endpoints
- Super Agent:
http://localhost:8000/(Web UI) and/ask(API) - Summarizer Agent:
http://localhost:8001/docs(API docs) - Task Extractor Agent:
http://localhost:8002/docs(API docs)
Troubleshooting
- "ModuleNotFoundError: No module named 'agents'": Make sure you're running commands from the project root directory
- "uvicorn: command not found": Use
python3 -m uvicorninstead of justuvicorn - API Key Issues: Ensure
openai_key.txtexists and contains a valid OpenAI API key - Port Conflicts: Make sure ports 8000, 8001, and 8002 are available
Development
Code Formatting
To maintain consistent code style, use the provided formatting script:
python3 format_code.py
This will format all Python files with Black and HTML/Markdown files with Prettier.
Manual Formatting
You can also format files individually:
# Format Python files
python3 -m black agents/ --line-length=88
# Format HTML and Markdown files
prettier --write index.html README.md
File Structure
mcps/
├── agents/
│ ├── __init__.py
│ ├── summarizer_agent.py
│ ├── task_extractor_agent.py
│ ├── super_agent.py
│ ├── models.py
│ ├── config.py
│ └── utils.py
├── docs/
│ └── images/
│ ├── welcome-page.png
│ ├── summarize-flow.png
│ ├── key-highlights-flow.png
│ └── task-extraction-flow.png
├── index.html
├── requirements.txt
├── README.md
├── format_code.py
└── openai_key.txt (create this file)
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。