Skip to main content
Glama
vksinghh25

Meeting Transcript Analyzer

by vksinghh25

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. Fully compliant with the Model Context Protocol (MCP) standard.

Features

  • Modern Web UI: Clean, responsive horizontal layout interface for easy interaction (see screenshot)

  • Summarize: Generate concise summaries of meeting transcripts (see screenshot)

  • Key Highlights: Extract and display key points as bullet points (β€’) (see screenshot)

  • Grab Tasks: Identify actionable tasks from meeting discussions (see screenshot)

  • MCP Compliant: Full adherence to Model Context Protocol standards

Related MCP server: Meeting BaaS MCP Server

MCP Compliance

This application is fully compliant with the Model Context Protocol (MCP) standard as defined in the official MCP specification:

βœ… MCP Standard Implementation

  • Discovery Endpoint: /.well-known/mcp.json (MCP compliant)

  • Tool Schema: JSON Schema format with inputSchema property

  • Response Format: MCP-compliant content array with structured content

  • Request Format: Standard MCP invoke endpoint with name and arguments

  • Capabilities: Proper capabilities object in discovery response

πŸ”§ MCP Endpoints

Each agent exposes MCP-compliant endpoints:

GET  /.well-known/mcp.json     # Tool discovery (MCP standard)
POST /invoke                   # Tool invocation (MCP standard)
GET  /health                   # Health check

πŸ“‹ MCP Tool Definitions

Summarizer Agent Tools:

  • summarize_transcript: Generates concise meeting summaries

  • highlight_key_points: Extracts 3-5 key insights as bullet points

Task Extractor Agent Tools:

  • extract_tasks: Identifies actionable tasks from transcripts

πŸ”„ MCP Response Format

All tools return MCP-compliant responses:

{
  "content": [
    {
      "type": "text",
      "text": "Tool output content here..."
    }
  ]
}

Prerequisites

  • Python 3.9+

  • OpenAI API key

Setup

  1. Install dependencies:

    pip install -r requirements.txt
  2. Configure OpenAI API Key: Create a file named openai_key.txt in 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

  1. Access the Web Interface: Open your browser and go to: http://localhost:8000

  2. 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"

  3. 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

Welcome Page The clean, modern interface users see when first opening the application.

Summarize Flow

Summarize Flow The application summarizing a meeting transcript with a brief, concise style.

Key Highlights Flow

Key Highlights Flow Extracting key insights and main points from a meeting transcript as bullet points.

Task Extraction Flow

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

MCP Integration

For MCP Clients

To integrate with MCP-compliant clients:

  1. Discover Tools:

    curl http://localhost:8001/.well-known/mcp.json
    curl http://localhost:8002/.well-known/mcp.json
  2. Invoke Tools:

    curl -X POST http://localhost:8001/invoke \
      -H "Content-Type: application/json" \
      -d '{"name": "summarize_transcript", "arguments": {"transcript": "Your transcript here..."}}'

MCP Client Libraries

This application works with any MCP-compliant client library:

For more information about the MCP standard, visit the official MCP specification and GitHub repository.

Troubleshooting

  • "ModuleNotFoundError: No module named 'agents'": Make sure you're running commands from the project root directory

  • "uvicorn: command not found": Use python3 -m uvicorn instead of just uvicorn

  • API Key Issues: Ensure openai_key.txt exists and contains a valid OpenAI API key

  • Port Conflicts: Make sure ports 8000, 8001, and 8002 are available

  • MCP Discovery Issues: Verify agents are running and accessible at their respective ports

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      # MCP-compliant summarizer
β”‚   β”œβ”€β”€ task_extractor_agent.py  # MCP-compliant task extractor
β”‚   β”œβ”€β”€ super_agent.py           # Web UI coordinator & orchestrator
β”‚   β”œβ”€β”€ 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)
-
security - not tested
F
license - not found
-
quality - not tested

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vksinghh25/mcps'

If you have feedback or need assistance with the MCP directory API, please join our Discord server