list_teams
Retrieve all teams from Fathom.video to manage meeting data access, organize collaboration groups, and configure permissions for transcripts and summaries.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/index.ts:332-355 (handler)The handler and registration for the 'list_teams' MCP tool. It calls fathom.getAllTeams() to fetch all teams, formats them as a markdown list with creation dates using formatDate, and returns as MCP response content.server.tool( 'list_teams', {}, async () => { console.error('Fetching teams...'); const teams = await fathom.getAllTeams(); if (teams.length === 0) { return { content: [{ type: 'text', text: 'No teams found.' }], }; } const markdown = teams.map(t => { const created = formatDate(t.created_at); return `- **${t.name}** (created: ${created})`; }).join('\n'); console.error(`Found ${teams.length} teams`); return { content: [{ type: 'text', text: `# Teams\n\n${markdown}` }], }; } );
- src/fathom-client.ts:267-278 (helper)Helper method on FathomClient instance that fetches all teams by paginating through the API using listTeams().async getAllTeams(): Promise<Team[]> { const allTeams: Team[] = []; let cursor: string | null | undefined = undefined; do { const response = await this.listTeams(cursor || undefined); allTeams.push(...response.items); cursor = response.next_cursor; } while (cursor); return allTeams; }
- src/fathom-client.ts:259-262 (helper)Low-level API call helper for listing teams, supporting pagination cursor.async listTeams(cursor?: string): Promise<TeamsResponse> { const endpoint = cursor ? `/teams?cursor=${cursor}` : '/teams'; return this.request<TeamsResponse>(endpoint); }
- src/formatters.ts:66-67 (helper)Utility function to format ISO date strings for display in team list.export function formatDate(isoDate: string): string { const date = new Date(isoDate);