Skip to main content
Glama

get_meeting_details

Retrieve meeting summaries and metadata from Fathom recordings using a recording ID. Access key details without full transcripts for efficient meeting review.

Instructions

Retrieve comprehensive meeting details including summary and metadata (without transcript).

Example: get_meeting_details([recording_id])

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
recording_idYesThe recording identifier

Implementation Reference

  • Core handler function that fetches meeting metadata and summary from Fathom API concurrently, strips markdown from summary, constructs a unified dictionary response excluding the transcript, and handles errors with context logging.
    async def get_meeting_details(
        ctx: Context,
        recording_id: int
    ) -> dict:
        """Retrieve comprehensive meeting details including summary and metadata (without transcript).
    
        Args:
            ctx: MCP context for logging
            recording_id: Numeric ID of the recording
    
        Returns:
            dict: Unified meeting object with metadata and summary (no transcript)
        """
        try:
            await ctx.info(f"Fetching meeting details for recording {recording_id}")
    
            # Fetch meeting metadata and summary concurrently
            meeting_task = client.get_meeting(recording_id)
            summary_task = client.get_summary(recording_id)
    
            meeting, summary = await asyncio.gather(meeting_task, summary_task)
    
            # Convert markdown summary to plain text
            markdown_summary = summary.get("summary", {}).get("markdown_formatted", "")
            plain_text_summary = strip_markdown.strip_markdown(markdown_summary) if markdown_summary else ""
    
            # Build unified meeting object without transcript
            result = {
                "recording_id": recording_id,
                "title": meeting.get("title"),
                "meeting_url": meeting.get("url"),
                "share_url": meeting.get("share_url"),
                "created_at": meeting.get("created_at"),
                "scheduled_start_time": meeting.get("scheduled_start_time"),
                "scheduled_end_time": meeting.get("scheduled_end_time"),
                "recording_start_time": meeting.get("recording_start_time"),
                "recording_end_time": meeting.get("recording_end_time"),
                "transcript_language": meeting.get("transcript_language"),
                "participants": meeting.get("participants", []),
                "recorded_by": meeting.get("recorded_by"),
                "teams": meeting.get("teams", []),
                "topics": meeting.get("topics", []),
                "sentiment": meeting.get("sentiment"),
                "crm_matches": meeting.get("crm_matches", []),
                "summary": plain_text_summary
            }
    
            await ctx.info("Successfully retrieved meeting details")
            return result
    
        except FathomAPIError as e:
            await ctx.error(f"Fathom API error: {e.message}")
            raise e
        except Exception as e:
            await ctx.error(f"Unexpected error fetching meeting details: {str(e)}")
            raise e
  • server.py:155-165 (registration)
    Registers the get_meeting_details tool with FastMCP using @mcp.tool decorator. Includes Pydantic Field for input validation/schema (recording_id), docstring, and delegates to the core implementation in tools.recordings.get_meeting_details.
    @mcp.tool
    async def get_meeting_details(
        ctx: Context,
        recording_id: int = Field(..., description="The recording identifier")
    ) -> Dict[str, Any]:
        """Retrieve comprehensive meeting details including summary and metadata (without transcript).
    
        Example:
            get_meeting_details([recording_id])
        """
        return await tools.recordings.get_meeting_details(ctx, recording_id)
  • Pydantic input schema definition for the recording_id parameter using Field with required and description.
        recording_id: int = Field(..., description="The recording identifier")
    ) -> Dict[str, Any]:

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/druellan/fathom-get-mcp'

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