Skip to main content
Glama

start_recording

Capture both sides of a macOS call or meeting from apps like Zoom, Teams, or browsers, with optional microphone audio and live transcription.

Instructions

Start recording a call or a conversation.

source: "system" (all the Mac's audio, the safest), "whatsapp", "teams", "zoom", "slack", "facetime", "browser" (all browsers), "chrome", "safari", "firefox", "arc", "edge", or a bundle ID prefix (e.g. "com.microsoft.teams2"). title: name of the conversation (used for the folder name). include_mic: also record the microphone (the user's voice). language: transcription language ("en", "fr", "auto"...). Defaults to the user's language. speakers: number of people on the other side (default 1). Above 1, their voices are separated in the transcript (Speaker 1, Speaker 2...). live: also transcribe as the call goes, to follow it with get_live_transcript. Use it when the user wants help during the call (questions to ask, answers to dig into).

Input Schema

NameRequiredDescriptionDefault
liveNo
titleNo
sourceNosystem
languageNo
speakersNo
include_micNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.3.0
    • addedInput schema / properties / live
      Added value: +{
      +  "default": false,
      +  "title": "Live",
      +  "type": "boolean"
      +}
  2. First observedv0.1.0

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It does add real behavioral context: source choices with a safety recommendation, that title becomes a folder name (a filesystem side effect), and that live transcription feeds get_live_transcript. It omits important behavior for a mutation tool: required macOS audio-capture permissions, what happens if a recording is already in progress, and how the recording ends.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with a one-line purpose, then a compact per-parameter glossary. Every line corresponds to a parameter that the schema leaves undocumented, so little is wasted, though the multi-line wrapping of the source list is slightly noisy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need not be explained, and all six parameters are covered. The remaining gap is operational context around a stateful capture tool — permissions and concurrent-recording behavior — which is a real but moderate omission.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry all six parameters, and it does: source (with an enumerated list of valid values and bundle-ID fallback), title, include_mic, language, speakers (with the default and the Speaker 1/Speaker 2 consequence), and live. This is meaningfully richer than the bare schema types and defaults.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence states a specific verb and resource: 'Start recording a call or a conversation.' It is unambiguous against siblings like stop_recording and recording_status, though it never explicitly names those siblings or distinguishes itself from transcribe_file/transcribe_recording.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage guidance is given at the parameter level ('live ... Use it when the user wants help during the call') and a recommendation is embedded for source ('system ... the safest'). However, there is no tool-level guidance on when to use this versus transcribe_file or transcribe_recording, and no stated prerequisites or when-not-to-use conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.