# Symbl.ai MCP

> Symbl.ai extracts structured intelligence from raw audio, video, and text transcripts. Your agent passes media files—whether recorded calls or chat logs—to this server. It returns clean data: summaries of key topics, a list of assigned action items, specific follow-up tasks, and custom keyword reports for compliance checking.

## Overview
- **Category:** communication-messaging
- **Price:** Free
- **Tags:** conversation-intelligence, speech-to-text, nlp, meeting-insights, audio-analysis

## Description

You pass raw media—whether it's a meeting recording, a chat log, or a video call—to this server. It’ll spit out clean, structured data you can actually act on.

To start the whole thing off and get your Conversation ID, your agent first hits one of three entry points: **process_audio** takes a base64 audio file and spits back a unique identifier; **process_video** does the same thing for video files; or if you’ve got text transcripts, you use **process_text** to generate that initial Conversation ID.

Once you've got that ID, you can run deep analysis. You can call **get_summary**, and it generates a high-level digest of everything discussed—the core outcomes and the main scope of the conversation, keeping you from having to read through hours of garbage footage. To figure out what actually needs doing, you use **get_action_items**; this tool automatically pulls out every single task mentioned in the transcript, usually noting who owns it. If you just need a general feel for follow-up work, you hit **get_follow_ups**, and it retrieves those specific action items that gotta get done after the meeting wrap-up.

To keep track of what was discussed without manually reading transcripts, you run **get_topics**. This analyzes the content and gives you a list of primary themes—the major topics covered across the entire call or chat. If anything got left hanging in the air during the discussion, running **get_questions** identifies all those unanswered questions so you can circle back later.

For compliance checks or market research, tracking specific words is key. You use **create_tracker** to set up a monitor that counts how often certain keywords or phrases pop up throughout the whole conversation data. This mechanism lets you track everything from client sentiment shifts to mentions of required regulatory terms. The server’s intelligence doesn't stop there; it keeps pulling out every piece of structured insight, making sure you don't miss anything important.

## Tools

### create_tracker
Sets up a monitor to count occurrences of specified keywords or phrases in conversation data.

### get_action_items
Extracts all tasks and follow-up items from an already processed conversation transcript.

### get_follow_ups
Retrieves specific actions that need to be taken after a discussion or meeting.

### get_questions
Identifies all unanswered questions raised during the conversation for later review.

### get_summary
Generates a high-level summary that captures the core discussion and outcomes of a processed conversation.

### get_topics
Identifies and lists the main themes and topics covered across an entire chat or meeting.

### process_audio
Processes an audio file (base64) to extract insights and returns a unique Conversation ID.

### process_text
Processes text conversations by returning a unique Conversation ID for subsequent analysis.

### process_video
Processes a video file (base64) to extract insights and returns a unique Conversation ID.

## Prompt Examples

**Prompt:** 
```
Extract action items from conversation ID '549201834752'.
```

**Response:** 
```
I've analyzed the conversation. Here are the action items: 1. John to update the API docs by Friday. 2. Sarah to schedule a follow-up with the client.
```

**Prompt:** 
```
Summarize the meeting with ID '982374102'.
```

**Response:** 
```
The meeting focused on the Q3 roadmap. Key points included the launch of the new dashboard and the migration to the new cloud provider.
```

**Prompt:** 
```
What were the main topics discussed in conversation 'abc-123'?
```

**Response:** 
```
The main topics identified are: 'Budget Allocation' (relevance: 0.95), 'Hiring Plan' (relevance: 0.88), and 'Office Reopening' (relevance: 0.72).
```

## Capabilities

### Process Media Inputs
Pass audio, video, or text to generate a Conversation ID required for all subsequent analysis.

### Generate Summary Reports
Creates a concise digest of the entire conversation, pulling out the main ideas and scope.

### Isolate Action Items
Automatically extracts specific tasks mentioned in the transcript, often including who is responsible.

### Identify Discussion Topics
Analyzes the content and returns a list of primary themes discussed during the call or meeting.

### Monitor Keywords
Creates custom trackers to count how often specific words, phrases, or compliance terms appeared in the data.

## Use Cases

### Analyzing a QBR (Quarterly Business Review)
A sales director receives 30 hours of recorded calls. Instead of manually reviewing them, they use `process_audio` for each file, then run `get_topics` on the resulting IDs to build an immediate map of recurring customer needs and competitive mentions.

### Distilling User Feedback from Interviews
A PM collects 20 user interviews. They process all audio files via `process_audio`. Then, they chain the results: run `get_questions` to identify feature gaps and use `get_action_items` to assign the follow-up interview tasks.

### Reviewing Internal Compliance Logs
A compliance officer needs to audit all calls for mentions of a specific regulation. They feed transcripts into `process_text`, then immediately use `create_tracker` to count every instance of the required legal phrase.

### Following Up After a Strategy Meeting
A project lead uploads the meeting video via `process_video`. They run two tools: `get_follow_ups` and `get_action_items` to ensure they get both the high-level next steps and the detailed, assigned tasks.

## Benefits

- Stop reading through hours of video to find one key decision. Use `get_summary` on a processed file—you instantly get the core outcomes and next steps.
- Never lose track of who needs to do what again. Run `get_action_items` against any transcript to build an immediate, assignable task list.
- Identify market trends across dozens of interviews without manual coding. Use `get_topics` to cluster all the main themes discussed in your research pool.
- Maintain compliance by monitoring specific terms. Set up a `create_tracker` with sensitive keywords; it counts every instance automatically.
- Handles diverse inputs, from recordings to chats. You process media using `process_audio`, `process_video`, or `process_text`—it doesn't care what format the data is in.

## How It Works

The bottom line is: you feed it raw media, get an ID, and then ask for exactly what you need from that conversation.

1. First, pass your raw media (audio, video, or text) to a processing tool (`process_video`, `process_audio`, etc.). This returns a unique Conversation ID.
2. Next, use that Conversation ID with a specific getter tool (e.g., `get_summary` or `get_action_items`) to pull out the desired structured data point.
3. The client receives the clean, formatted output—like a list of action items or key topics—ready for immediate use.

## Frequently Asked Questions

**How do I use `process_audio` with Symbl.ai?**
You send the audio file (base64) to `process_audio`. This returns a unique Conversation ID, which you must save. You cannot query any other tool without this specific ID.

**Is `get_summary` better than just reading the transcript?**
Yes. Reading the raw text is inefficient because it's linear. `get_summary` condenses thousands of words into a few key bullet points, focusing only on outcomes and major discussion shifts.

**What’s the difference between `get_follow_ups` and `get_action_items`?**
While similar, `get_action_items` focuses on concrete tasks assigned to a person. `get_follow_ups` tends to pull out broader steps or commitments that need monitoring.

**Can I track keywords across different media types using Symbl.ai?**
Yes, you process the media first (e.g., via `process_video`) and then use `create_tracker` on the resulting Conversation ID to monitor specific phrases like compliance terms.

**What credentials do I need to pass when calling `process_text`?**
You must supply your Symbl.ai App ID and the corresponding App Secret Key. These two values authenticate your agent, proving you have permission to run the analysis.

**Do I need to call a processing tool before running `get_summary` or `get_action_items`?**
Yes. The follow-up tools require a Conversation ID first. You must use one of the initial process functions (like `process_audio`) to generate this unique ID.

**How does Symbl.ai handle large files when I call `process_video`?**
Video and audio inputs need to be encoded as a base64 payload for the API call. This standard encoding ensures the agent correctly transmits the raw binary media data.

**If my request fails while running `create_tracker`, what should I check?**
Check the returned error message for specific failure codes, especially rate limiting signals. If limited, implement an exponential backoff delay before retrying your tool call.

**How do I get a summary of a processed conversation?**
Use the `get_summary` tool by providing the specific Conversation ID. The agent will return a structured summary of the key points discussed.

**Can I detect specific keywords in my audio or text files?**
Yes! Use the `create_tracker` tool to define a list of keywords or phrases. Symbl.ai will then monitor and detect these within your processed conversations.

**What insights can I extract from a conversation ID?**
You can use `get_topics`, `get_action_items`, `get_follow_ups`, and `get_questions` to retrieve specific intelligence layers from any previously processed media.