Microsoft Teams AI note taker and meeting transcription
Speak AI joins your Teams calls, captures every word in 100+ languages, and turns the recording into a structured CRM entry. Add the bot by email or connect Microsoft 365 for auto-coverage. Push summaries into Teams channels with Adaptive Cards. Production-ready in under 10 minutes.
Mitä voit tehdä
Once Microsoft Teams calls flow into Speak AI, every meeting becomes searchable, analyzable, and shareable. Sales teams log every Teams call as a CRM activity. Support teams route by sentiment to oncall channels. Research teams turn customer interviews into structured Notion writeups.
Auto-join every Teams call
Kaksi polkua. Lisää [email protected] as an attendee on the calendar event for the bot to join that one Teams meeting. Or connect Microsoft 365 to Speak once for ongoing auto-coverage of every event with a Teams URL. Same bot, same output, no per-meeting setup either way.
Speaker-labeled transcript in 100+ languages
Auto-detected language. Typical processing: under 2 minutes per hour of audio. Document and sentence-level VADER sentiment scoring. Speaker diarization across the full call. Output is editable, exportable to DOCX/SRT/PDF/JSON, and queryable through the Speak app.
Post AI summaries to Teams channels
Use a Teams Incoming Webhook to drop Adaptive Cards with the meeting summary, sentiment chip, and a link back to Speak directly into the relevant channel. Branch by tag, folder, or sentiment threshold so each team only sees relevant meetings.
One-click push to HubSpot, Salesforce, or Zoho
Verified webhook recipe: receive Speak’s media.analyzed event, fetch the insight, create a CRM activity. Same pattern across HubSpot Meetings, Salesforce Tasks, and Zoho Calls. Source-tagged so reports can split Teams vs Zoom vs Meet.
Aloita 3 vaiheessa
The fastest path takes 30 seconds: invite the bot by email. Auto-coverage takes 2 minutes: connect Microsoft 365 calendar. Channel posting takes 5 minutes: create a Teams Incoming Webhook.
Rekisteröidy Speak AI:hin
Luo ilmainen tili osoitteessa app.speakai.co. Saat 7 päivän kokeilujakson täydellä pääsyllä. Luottokorttia ei tarvita. Kun olet sisällä, mene kohtaan Asetukset > API ja kopioi API-avaimesi.
Valitse integraatiopolkusi
[email protected] kokoukseen (ei asennusta)
Open the Outlook calendar event with the Teams meeting URL and add [email protected] as an attendee. The bot accepts the invite and joins the Teams call automatically. Zero in-app configuration. Same email works for Zoom, Webex, and Google Meet events.
Speak’ssa AI Meeting Assistant, napsauta Tallenna live-kokous to send the bot to a Teams call that is already running, or Ajoita Live Meeting to send it to one starting later. Paste the Teams meeting URL and the bot handles the rest.
For ongoing coverage of every Teams meeting on your calendar, connect Microsoft 365 in Speak under Meeting Assistant > Kalenteri. Approve OAuth scopes Calendars.Read ja OnlineMeetings.Read.All. Speak finds existing future events and joins your next Teams meeting automatically.
Add the Incoming Webhook connector to a Teams channel, copy the webhook URL, and subscribe Speak’s media.analyzed webhook (POST /v1/webhook) to your handler. Format the insight as an Adaptive Card and POST to the Teams webhook URL.
Already have Teams calls in Speak? Connect Claude Desktop with npx @speakai/mcp-server init, or add the remote MCP URL to Claude.ai or ChatGPT. Search the entire Teams meeting library through conversation.
Tilaa media.analyzed
Speak lähettää allekirjoitetun webhookin, kun transkriptio ja tekoälyanalyysi valmistuvat (yleensä 60 sekunnissa 10 minuutin puhelulle). Rekisteröi päätepistesi osoitteessa POST /v1/webhook and act on transcripts as they land in your CRM, Teams channel, or BI tooling.
Oikeat työnkulut, oikeat tulokset
Four production patterns Speak customers ship with Microsoft Teams. Pick the one that fits your team and copy the recipe.
Auto-join every Microsoft Teams meeting
Kaksi polkua, sama tulos. Helpointa: lisää [email protected] as an attendee on the Outlook calendar event that hosts the Teams meeting. The bot accepts and joins. Automaattinen kattavuus: connect Microsoft 365 to Speak once and every Teams event on your calendar gets the bot without any per-event invite.
# Manual: open the Outlook calendar event with the Teams meeting link.
# Click "Add attendees" and enter:
# [email protected]
# Save the event. The bot accepts the invite and joins the Teams call automatically.
# Programmatic (Microsoft Graph) - add the bot as an attendee:
curl -X PATCH "https://graph.microsoft.com/v1.0/me/events/$EVENT_ID"
-H "Authorization: Bearer $GRAPH_TOKEN"
-H "Content-Type: application/json"
-d '{
"attendees": [
{
"emailAddress": { "address": "[email protected]", "name": "Speak AI Notetaker" },
"type": "required"
}
]
}'
# In Speak AI dashboard:
# 1. Go to Meeting Assistant -> Calendar
# 2. Click "Connect Microsoft 365"
# 3. Approve OAuth scopes:
# Calendars.Read
# OnlineMeetings.Read.All
# 4. Speak finds existing future Teams events immediately
# 5. Bot joins your next scheduled Teams meeting automatically
# Workspace admins can pre-approve via Entra ID admin consent for org-wide rollout.
curl -X POST https://api.speakai.co/v1/meeting-assistant/events/schedule
-H "x-speakai-key: $SPEAK_API_KEY"
-H "Content-Type: application/json"
-d '{
"title": "Acme Corp - Demo Call",
"meetingURL": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_...",
"meetingDate": "2026-05-15T16:00:00.000Z",
"meetingLanguage": "en-US",
"folderId": "507f1f77bcf86cd799439011"
}'
// Call this when your CRM creates a Teams meeting (via Graph onlineMeetings).
async function scheduleSpeakBot({ title, teamsURL, scheduledAt, folderId }) {
const r = await fetch(
"https://api.speakai.co/v1/meeting-assistant/events/schedule",
{
method: "POST",
headers: {
"x-speakai-key": process.env.SPEAK_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({
title,
meetingURL: teamsURL,
meetingDate: scheduledAt,
meetingLanguage: "en-US",
folderId,
}),
}
);
if (!r.ok) throw new Error(`Speak schedule failed: ${r.status}`);
const { data } = await r.json();
// Persist data.meetingAssistantEventId for pause / resume / remove later.
return data.meetingAssistantEventId;
}
import os, requests
def schedule_speak_bot(title: str, teams_url: str, scheduled_at: str, folder_id: str | None = None):
r = requests.post(
"https://api.speakai.co/v1/meeting-assistant/events/schedule",
headers={
"x-speakai-key": os.environ["SPEAK_API_KEY"],
"Content-Type": "application/json",
},
json={
"title": title,
"meetingURL": teams_url,
"meetingDate": scheduled_at,
"meetingLanguage": "en-US",
"folderId": folder_id,
},
timeout=30,
)
r.raise_for_status()
return r.json()["data"]["meetingAssistantEventId"]
Pause/resume/remove the bot via POST /v1/meeting-assistant/events/{pause|resume|remove} kanssa {meetingAssistantEventId}. The bot supports Teams Meetings, Teams Webinars, and Teams Live Events.
Post AI summaries to a Teams channel automatically
Add an Incoming Webhook connector to a Teams channel. Subscribe Speak’s media.analyzed webhook to your handler. After every recording, fetch the insight from Speak, build an Adaptive Card with the summary and sentiment, and POST to the Teams webhook URL. Branch by folder, tag, or sentiment so each team sees relevant meetings.
# In Microsoft Teams:
# 1. Open the channel that should receive Speak summaries
# 2. Click ... (More options) -> Connectors
# 3. Find "Incoming Webhook" -> Configure
# 4. Name it "Speak AI Notetaker", upload an icon (optional)
# 5. Copy the Webhook URL (https://yourtenant.webhook.office.com/webhookb2/...)
# 6. Store as TEAMS_WEBHOOK_URL env var on your handler server
# The same URL is reusable for every recording. One URL per channel.
media.analyzed webhookcurl -X POST https://api.speakai.co/v1/webhook
-H "x-speakai-key: $SPEAK_API_KEY"
-H "Content-Type: application/json"
-d '{
"callbackUrl": "https://your-app.example.com/speak/teams-webhook",
"events": ["media.analyzed"],
"description": "Forward Speak insights to Teams channel"
}'
// Speak posts a thin notification: { eventType, state, mediaId } (verified 2026-05-07).
import express from "express";
const app = express();
app.use(express.json());
app.post("/speak/teams-webhook", async (req, res) => {
const { eventType, state, mediaId } = req.body;
if (eventType !== "media.analyzed" || state !== "processed") return res.sendStatus(204);
res.sendStatus(202);
// 1. Fetch full insight from Speak
const insight = await fetch(
`https://api.speakai.co/v1/media/insight/${mediaId}`,
{ headers: { "x-speakai-key": process.env.SPEAK_API_KEY } }
).then(r => r.json());
const media = insight.data;
const compound = media.sentiment?.[0]?.document?.Compound ?? 0;
const sentiment = compound > 10 ? "Positive"
: compound < -10 ? "Negative" : "Neutral";
// 2. Build an Adaptive Card (Microsoft's recommended format for Teams Incoming Webhooks)
const card = {
type: "message",
attachments: [{
contentType: "application/vnd.microsoft.card.adaptive",
content: {
$schema: "http://adaptivecards.io/schemas/adaptive-card.json",
type: "AdaptiveCard",
version: "1.5",
body: [
{ type: "TextBlock", size: "Large", weight: "Bolder", text: media.name },
{ type: "TextBlock", text: `Sentiment: ${sentiment} (Compound ${compound})`, wrap: true },
{ type: "TextBlock",
text: `Duration: ${Math.round(media.duration?.inSecond / 60)} min`,
isSubtle: true, spacing: "None" },
],
actions: [{
type: "Action.OpenUrl",
title: "Open in Speak",
url: `https://app.speakai.co/media/${mediaId}`,
}],
},
}],
};
// 3. POST to the Teams Incoming Webhook
await fetch(process.env.TEAMS_WEBHOOK_URL, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify(card),
});
});
app.listen(3000);
import os, requests
from fastapi import FastAPI, Request
app = FastAPI()
@app.post("/speak/teams-webhook")
async def hook(req: Request):
body = await req.json()
if body.get("eventType") != "media.analyzed" or body.get("state") != "processed":
return {"ok": True}
media_id = body["mediaId"]
insight = requests.get(
f"https://api.speakai.co/v1/media/insight/{media_id}",
headers={"x-speakai-key": os.environ["SPEAK_API_KEY"]},
timeout=30,
).json()["data"]
compound = (insight.get("sentiment") or [{}])[0].get("document", {}).get("Compound", 0)
sentiment = "Positive" if compound > 10 else "Negative" if compound < -10 else "Neutral"
card = {
"type": "message",
"attachments": [{
"contentType": "application/vnd.microsoft.card.adaptive",
"content": {
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"type": "AdaptiveCard",
"version": "1.5",
"body": [
{"type": "TextBlock", "size": "Large", "weight": "Bolder", "text": insight["name"]},
{"type": "TextBlock", "text": f"Sentiment: {sentiment} (Compound {compound})", "wrap": True},
{"type": "TextBlock",
"text": f"Duration: {round(insight.get('duration', {}).get('inSecond', 0) / 60)} min",
"isSubtle": True, "spacing": "None"},
],
"actions": [{
"type": "Action.OpenUrl",
"title": "Open in Speak",
"url": f"https://app.speakai.co/media/{media_id}",
}],
},
}],
}
requests.post(
os.environ["TEAMS_WEBHOOK_URL"],
json=card,
timeout=15,
)
return {"ok": True}
Adaptive Cards 1.5 is Microsoft’s current schema for Teams Incoming Webhooks. The legacy MessageCard format still works but is deprecated. Branch by tag, folder, or sentiment threshold to route different recording types into different Teams channels.
Log every Teams meeting in HubSpot, Salesforce, or Zoho
Same verified middleware pattern as the rest of the integrations cluster: receive Speak’s flat {eventType, state, mediaId} notification, fetch full insight via GET /v1/media/insight/:mediaId, then create the CRM activity. Source-tag with teams so reports can split Teams vs Zoom vs Meet.
// Speak webhook body shape (verified 2026-05-07): { eventType, state, mediaId }
import express from "express";
const app = express();
app.use(express.json());
app.post("/speak/teams-to-crm", async (req, res) => {
const { eventType, state, mediaId } = req.body;
if (eventType !== "media.analyzed" || state !== "processed") return res.sendStatus(204);
res.sendStatus(202);
// 1. Fetch full insight
const { data } = await fetch(
`https://api.speakai.co/v1/media/insight/${mediaId}`,
{ headers: { "x-speakai-key": process.env.SPEAK_API_KEY } }
).then(r => r.json());
// 2. Push to HubSpot Meetings (or Salesforce Tasks, or Zoho Calls)
const start = new Date(data.createdAt);
const end = new Date(start.getTime() + (data.duration?.inSecond || 0) * 1000);
await fetch("https://api.hubapi.com/crm/v3/objects/meetings", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HUBSPOT_TOKEN}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
properties: {
hs_timestamp: start.toISOString(),
hs_meeting_title: data.name,
hs_meeting_body: `Teams call summary. Open in Speak: https://app.speakai.co/media/${mediaId}`,
hs_meeting_external_url: `https://app.speakai.co/media/${mediaId}`,
hs_meeting_start_time: start.toISOString(),
hs_meeting_end_time: end.toISOString(),
hs_meeting_outcome: "COMPLETED",
},
}),
});
});
app.listen(3000);
Full destination-specific code (HubSpot Meeting + association IDs, Salesforce Task + SOQL contact resolution, Zoho Calls + Notes) on /integrations/hubspot/, /integrations/salesforce/ja /integrations/zoho/. The Speak side is identical across all three CRM destinations.
Search every Teams meeting from Claude or ChatGPT
Connect Speak’s MCP server to Claude or ChatGPT and your team queries the entire Teams meeting library through conversation. No SQL, no dashboards, no exports.
# Claude Desktop / Claude Code (havaitsee asennuksesi automaattisesti)
npx @speakai/mcp-server init
# Liitä Speak API -avaimesi kehotettaessa. Asennus kestää noin 2 minuuttia.
# Claude.ai (web) and ChatGPT MCP connector
# Settings > Integrations > Add MCP Server
# Remote URL: https://api.speakai.co/v1/mcp
# Auth header: x-speakai-key: YOUR_SPEAK_API_KEY
# Verify the connection responds:
curl -s https://api.speakai.co/v1/mcp
-H "x-speakai-key: $SPEAK_API_KEY"
-H "Accept: application/json"
2. Esimerkki-kehotuksia, joita tiimisi voi käyttää tänään:
- “Show every Teams meeting last week with negative customer sentiment in the last 5 minutes.”
- “Summarize the 3 longest Teams calls with Acme Corp from this quarter.”
- “Pull verbatim quotes from Teams meetings tagged
löytäminenjoissa asiakkaat kysyivät perehdyttämisestä.” - “Compare discovery completeness across our top 3 SDRs. Use this week’s Teams calls. Score each on a 0-10 rubric.”
- “Find every Teams meeting where the rep missed the discovery question. Pull the timestamps.”
Toimii Claude.ai:n, Claude Desktopin, Claude Coden ja ChatGPT MCP -liitäntöjen kanssa. Näytä MCP-palvelin →
Why Speak AI + Microsoft Teams
Microsoft Teams handles the call. Microsoft Copilot for Teams covers in-call note suggestions on paid Workspace tiers. Speak handles the deeper analysis layer that lives outside Microsoft: cross-meeting search, custom Magic Prompts, multi-source ingest, CRM push, and shareable embeds.
Multi-source ingest, not just Teams
Teams is one of dozens of inputs. The same Speak workspace ingests Zoom, Google Meet, Webex, Twilio, Loom, OneDrive, Dropbox, podcast audio, and direct file uploads. One library, every conversation across every meeting platform.
Mukautetut Magic Prompts, ei kiinteitä malleja
Microsoft Copilot ships fixed summary templates and only on Microsoft 365 Business Standard and above. Speak’s Magic Prompt runs your prompts on every Teams call: discovery checklist scoring, competitor mention extraction, MEDDIC-stage detection, whatever your team needs. Save prompts once, run them on every recording forever.
SOC 2 + GDPR + HIPAA-eligible
Speak ships with SOC 2 Type 2, GDPR compliance, and HIPAA-eligible plans for healthcare customers. Your Teams meeting data is encrypted in transit and at rest, and Speak does not train on your conversations. Workspace admins can approve Speak in Entra ID admin consent for org-wide rollout.
MCP ’n natiivi Claude ’lle ja ChatGPT ’lle
Virallinen @speakai/mcp-server exposes 83 tools to AI assistants. Your team queries the Teams meeting library in plain English from Claude Desktop or ChatGPT, without exporting transcripts to other tools.
Tiimit luottavat Speak AI:hin tärkeimmissään puheluissaan
4.9 G2:lla
“Speak AI on ollut ratkaisevassa roolissa muuttaessamme tapaa, jolla käsittelemme laadullista dataa. Transkriptioiden tarkkuus on vaikuttava, ja NLP-analyysit säästävät meiltä tunteja manuaalista analyysia.”
Tutkimusjohtaja | Konsultointiyritys
“Vaihdoimme Otter.ai:sta ja analyysin syvyys on täysin eri tasolla. Sentimenttianalyysi, avainsanojen poimiminen ja teemojen tunnistus tapahtuvat automaattisesti.”
Tuotepäällikkö | SaaS Company
“Mahdollisuus etsiä kaikista asiakaspuheluistamme ja poimia erityisiä hetkiä on pelimuuttaja tukitiimiillemme.”
CX-johtaja | Enterprise Tech
How to use Speak AI with Microsoft Teams for transcription and meeting intelligence
Microsoft Teams is the default video meeting platform for any organization on Microsoft 365. Sales teams run discovery and demo calls on Teams. Support teams run customer review calls on Teams. Internal teams run weekly all-hands and project syncs on Teams. Every one of those calls is a potential source of customer truth, decisions, and follow-up actions. Speak AI is what turns those calls into structured, searchable, shareable data without forcing a tool change or a manual export.
Where Speak fits in the Teams call lifecycle
Speak runs after the call ends, or in parallel during the call via the bot. Microsoft Teams handles call control: rooms, video, audio, the in-meeting Copilot features for paid Microsoft 365 tiers. Speak handles transcription in 100+ languages, AI analysis with custom prompts, search across the full library, and downstream automation. The handoff happens via the calendar bot (email invite or Microsoft 365 OAuth), the per-meeting /v1/meeting-assistant/events/schedule endpoint, or by uploading existing Teams recordings via URL.
Speak vs Microsoft Copilot in Teams
Microsoft Copilot in Teams covers in-call note suggestions, draft replies, and meeting recaps. It is bundled with Microsoft 365 Business Standard, Business Premium, Enterprise, and the Copilot for Microsoft 365 add-on. It is well-suited if you only need a Microsoft-internal recap delivered to the meeting host’s inbox.
Speak is a different product. Speak ingests Teams alongside Zoom, Google Meet, Webex, file uploads, podcasts, and embed recorder submissions, then runs custom analysis (your Magic Prompts, your tags, your team’s vocabulary), exposes everything via MCP for Claude and ChatGPT, and ships shareable embeds. Most teams using both let Copilot handle the in-call host summary and use Speak for the deeper post-call analysis layer plus cross-platform search.
Authentication and Microsoft 365 scopes
Kalenteribotti-polku vaatii vain luku -oikeudet Microsoft Graph Calendar -rajapintaan (Calendars.Read, OnlineMeetings.Read.All). Speak does not request meeting management or recording management scopes. Microsoft 365 admins can pre-approve Speak in the Entra ID admin console for org-wide rollouts. The Teams Incoming Webhook posting path does not require any OAuth: the channel-scoped webhook URL is the only credential, and Speak’s handler holds it as an environment variable.
How do I transcribe Microsoft Teams meetings automatically?
Kolme tuotantoreittiä. Sähköpostikutsu: lisää [email protected] as an attendee on the calendar event; bot joins the Teams call. OAuth automaattinen kattavuus: connect Microsoft 365 once; bot joins every Teams meeting on your calendar going forward. API per-kokous -aikataulu: POST a Teams meeting URL to Speak’s /v1/meeting-assistant/events/schedule from your CRM or scheduling tool. All three deliver the same output: full transcript, AI summary, sentiment, action items, plus structured CRM push and Teams channel posting via webhook.
Can I post Speak summaries to a Teams channel?
Yes. Add an Incoming Webhook connector to the channel, copy the webhook URL, and POST Adaptive Cards from your handler. Tab 2 above shows the full Node and Python recipes. Adaptive Cards 1.5 is Microsoft’s current recommended schema; legacy MessageCard format still works but is deprecated. Branch by tag, folder, or sentiment threshold so each team only sees relevant meetings.
Is there a ChatGPT integration for Microsoft Teams recordings?
Speak goes further than a generic ChatGPT integration. Rather than sending raw recordings to a general-purpose model, Speak runs dedicated transcription models trained on meeting audio, then applies configurable Magic Prompts for summaries, action items, and custom extraction. Your data stays in Speak’s infrastructure (SOC 2, GDPR, HIPAA-eligible). Pair with Speak’s MCP server to query the entire Teams library from Claude or ChatGPT.
Käyttötapaukset rooleittain
Myynti- ja RevOps-tiimit use Speak with Teams to auto-log every Teams demo and discovery call into HubSpot, Salesforce, or Zoho. Magic Prompts score discovery completeness, surface objections, and extract competitor mentions. Sentiment-aware filters route negative-sentiment calls to manager-attention channels. See Speak AI myyntitiimeille.
Asiakastukeen ja CX-tiimit capture every inbound Teams support call and route by sentiment. Cancellation language fires a separate Slack or Teams alert. Multilingual queues work without per-language setup since Speak supports 100+ languages with auto-detection.
Asiakastutkimustiimit bring Teams interview calls into the same workspace as their Zoom and embed recorder sessions. Code themes across the entire library, ask Claude for verbatim quotes via MCP, build research deliverables in hours instead of weeks. See Speak AI laadullisille tutkijoille.
Training and enablement teams turn Teams calls into a coaching loop. Speak’s analysis surfaces missed discovery questions, scripted-line drift, and sentiment dips for QA review. See Speak AI for training and development.
Usein kysytyt kysymykset
What is the easiest way to get the Speak bot into a Teams meeting?
Lisää [email protected] as an attendee on the Outlook calendar event hosting the Teams meeting. The bot accepts the invite and joins the Teams call automatically. No in-app configuration, no OAuth, no API call. Same email works for Zoom, Webex, and Google Meet events too.
How do I use an AI note taker for Microsoft Teams?
Three options. Easy: invite [email protected] on the calendar event. Auto-coverage: connect Microsoft 365 to Speak under Meeting Assistant. Programmatic: POST the Teams meeting URL to Speak’s /v1/meeting-assistant/events/schedule endpoint. All three produce the same output: speaker-labeled transcript, AI summary, sentiment, and any custom Magic Prompts you have configured.
Can I transcribe a Microsoft Teams meeting automatically?
Yes. Once the bot is invited (by email, OAuth, or API), every Teams meeting is transcribed automatically without any manual steps. Speak also processes existing Teams recordings: upload the cloud recording URL or video file directly and get a speaker-labeled transcript in 100+ languages, typically in under 2 minutes per hour of audio.
Is there a ChatGPT integration for Microsoft Teams recordings?
Speak AI goes further than a ChatGPT integration. Rather than sending recordings to a general-purpose model, Speak runs dedicated transcription models trained on meeting audio, then applies configurable Magic Prompts for summaries, action items, and custom extraction. Your data stays in Speak’s infrastructure (SOC 2, GDPR-compliant, HIPAA-eligible plans available).
Can Speak AI post meeting summaries to a Teams channel?
Yes. Add an Incoming Webhook connector to the channel, copy the webhook URL, and POST Adaptive Cards from your handler after each media.analyzed event. Tab 2 above shows the full recipe in Node and Python. Adaptive Cards 1.5 is Microsoft’s current schema; legacy MessageCard still works.
What is the best AI tool for Microsoft Teams?
Speak AI is rated 4.9 on G2 and handles the full Teams meeting lifecycle: calendar sync, bot join, transcription in 100+ languages, AI analysis, channel posting, and CRM push. Unlike Otter, Fireflies, or Fathom, Speak also supports bulk processing of archived recordings, multi-source ingest across Zoom and Meet and Webex, and exposes everything through MCP for Claude and ChatGPT.
Start using Speak AI with Microsoft Teams today
83 analysis tools. 100+ languages. Calendar bot, Teams Incoming Webhook with Adaptive Cards, MCP-native for Claude and ChatGPT. Same workspace as your Zoom, Meet, Webex, and Twilio calls.
Kokeile Speak AI:ta ilmaiseksi
Create your account, invite the bot to your next Teams meeting (or connect Microsoft 365), and the transcript lands in your Speak workspace automatically. Full access for 7 days. No credit card required.
Varaa demo
For sales or IT teams evaluating Speak across an entire Microsoft 365 org, book a demo with the Speak team. We will walk through the calendar bot, Adaptive Card channel posting, Entra ID admin consent, and CRM push live.
Analyze Microsoft Teams recordings with ChatGPT, Claude, Gemini, or any MCP client
Microsoft Teams records meetings into Stream or local files. Pipe them into Speak AI for transcription, then ask ChatGPT (or Claude / Gemini) anything about them via MCP. Pick your AI:
ChatGPT workflow
1. Edellytys: Speak AI -tili (ilmainen 7 päivän kokeilujakso) sekä ChatGPT Plus tai Team.
2. Yhdistä: Avaa ChatGPT’ssä Asetukset, Beta, Liittimet ja lisää sitten MCP-palvelin. Liitä:
https://api.speakai.co/v1/mcp
3. Suorita: Kysy ChatGPT:lle:
Draft action items with owners and due dates from the leadership sync we recorded in Teams this morning.
4. Odotettu tulos:
Action items from Leadership Sync (2026-05-17, Teams recording):
* Sarah: finalize Q3 OKRs by EOW (2026-05-23)
* David: get headcount approval from finance (2026-05-20)
* Priya: hire 1 senior designer (2026-06-15)
* Marcus: customer advisory board scoping (2026-05-30)
* Whole team: review draft OKRs in async (2026-05-21)
5. Kokeile nyt: Aloita ilmaiseksi, sitten 15€/kk
Claude workflow
1. Edellytys: Speak AI ’n tili (ilmainen 7 päivän kokeilu) plus Claude.
2. Yhdistä: Avaa Claude, siirry kohtaan Asetukset, Connectors ja valitse Lisää mukautettu MCP-palvelin. Liitä:
https://api.speakai.co/v1/mcp
3. Suorita: Kysy Claude:lle:
For each engineering all-hands recorded in Teams this quarter, what was the top tech debt theme raised?
4. Odotettu tulos:
Tech debt themes by quarter all-hands:
* 2026-04 all-hands: monorepo build times (mentioned 11x)
* 2026-05 all-hands: flaky E2E test suite (mentioned 8x)
* (most recent) 2026-05-17: deploy pipeline for staging (mentioned 6x)
5. Kokeile nyt: Aloita ilmaiseksi, sitten 15€/kk
Gemini workflow
1. Edellytys: Speak AI-tili (ilmainen 7 päivän kokeilujakso) ja Google Gemini Advanced.
2. Yhdistä: Avaa Geminissä Extensions, Manage ja sitten Add MCP. Liitä:
https://api.speakai.co/v1/mcp
3. Suorita: Kysy Gemini:lle:
Across all 1:1s recorded in Teams this month, identify any team member who mentioned burnout, workload concerns, or wanting to leave.
4. Odotettu tulos:
Sentiment flags from 1:1s this month:
* David: mentioned "exhausted" twice, workload above sustainable in 2 sessions
* Priya: no flags
* Marcus: mentioned "considering my options" once (one-off, low confidence)
Recommend: schedule check-in with David, no action on Marcus yet.
5. Kokeile nyt: Aloita ilmaiseksi, sitten 15€/kk
Other AI Tools workflow
1. Edellytys: Speak AI account (free 7-day trial) plus any MCP-compatible AI client.
2. Yhdistä: Add the Speak AI MCP server to your client config:
{
"mcpServers": {
"speakai": {
"url": "https://api.speakai.co/v1/mcp"
}
}
}
3. Suorita: Kysy muilta tekoälytyökaluista:
"List every Teams recording with mediaType='meeting' in folder '1on1s' last 30 days, return transcript + duration."
4. Odotettu tulos:
Tools used: list_media, get_transcript, list_folders. 83 tools available. See /mcp/.
5. Kokeile nyt: Aloita ilmaiseksi, sitten 15€/kk
Haluatko apua sen integroimiseen tiimillesi? Book a free walkthrough.
Aiheeseen liittyvät: Claude, ChatGPT, Gemini, MCP server, REST API, ChatGPT audiodatoille.




