fathom — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited fathom (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Access video meeting recordings, transcripts, and AI summaries from chat -- search meetings, retrieve full transcripts, get AI-generated summaries, and manage teams. Powered by ClawLink for hosted OAuth.
| Step 1: Install | Step 2: Pair Account | Step 3: Connect Fathom |
|---|---|---|
![]() | ![]() | App-specific connection GIF coming soon |
| Run the install command in OpenClaw | Sign in and approve the device | Open the dashboard and connect Fathom |
┌─────────────────┐ ┌──────────────┐ ┌──────────────────┐
│ OpenClaw │────▶│ ClawLink │────▶│ Fathom API │
│ (User Chat) │ │ (OAuth) │ │ │
└─────────────────┘ └──────────────┘ └──────────────────┘openclaw plugins install clawhub:clawlink-plugin
openclaw config set tools.alsoAllow '["clawlink-plugin"]' --strict-json
openclaw gateway restart// 1. List recent meetings
clawlink_call_tool({ tool: "fathom_list_meetings", parameters: {} })
// 2. Get a meeting transcript
clawlink_call_tool({ tool: "fathom_get_recording_transcript", parameters: { recording_id: "rec_123" } })
// 3. Get AI summary
clawlink_call_tool({ tool: "fathom_get_recording_summary", parameters: { recording_id: "rec_123" } })ClawLink handles OAuth with Fathom. No API keys needed. Connect at claw-link.dev/dashboard?add=fathom.
// List connections
clawlink_list_integrations()
// Verify by listing meetings
clawlink_call_tool({ tool: "fathom_list_meetings", parameters: {} })| Tool | Description | Mode |
|---|---|---|
fathom_list_meetings | List meeting recordings with date/type/domain filtering | Read |
fathom_get_recording_transcript | Get full transcript with speaker info and timestamps | Read |
fathom_get_recording_summary | Get AI-generated meeting summary | Read |
| Tool | Description | Mode |
|---|---|---|
fathom_list_teams | List all teams in the organization | Read |
fathom_list_team_members | List team members with filtering by team name | Read |
| Tool | Description | Mode |
|---|---|---|
fathom_create_webhook | Create webhook for new meeting content notifications | Write |
fathom_delete_webhook | Delete an existing webhook by ID | Write |
// List recent meetings
const meetings = await clawlink_call_tool({
tool: "fathom_list_meetings",
parameters: {
start_date: "2026-06-01",
end_date: "2026-06-08",
limit: 10
}
});
// Get transcript for a specific meeting
const transcript = await clawlink_call_tool({
tool: "fathom_get_recording_transcript",
parameters: { recording_id: "rec_abc123" }
});
// Get AI summary
const summary = await clawlink_call_tool({
tool: "fathom_get_recording_summary",
parameters: { recording_id: "rec_abc123" }
});// List all teams
const teams = await clawlink_call_tool({
tool: "fathom_list_teams",
parameters: {}
});
// List team members
const members = await clawlink_call_tool({
tool: "fathom_list_team_members",
parameters: { team_name: "Engineering" }
});// Create a webhook for new meeting transcripts
const webhook = await clawlink_call_tool({
tool: "fathom_create_webhook",
parameters: {
url: "https://example.com/webhook",
events: ["transcript", "summary"]
}
});clawlink_list_integrations to confirm fathom is connected.clawlink_list_tools --integration fathom to see the live catalog.clawlink_search_tools({ query: "transcript", integration: "fathom" }) to find specific tools.READ (safe): list_meetings → get_recording_transcript → get_recording_summary → list_teams
WRITE (confirm): create_webhook → delete_webhookfathom_get_recording_transcript over list_meetings with include_transcript=true to avoid oversized responsesspeaker.display_name to get the namedestination_url parameter| Status / Error | Meaning |
|---|---|
| 401 Unauthorized | OAuth token expired -- reconnect at dashboard |
| 403 Forbidden | Insufficient permissions for this organization |
| 404 Not Found | Recording ID does not exist |
| 429 Rate Limited | Too many requests -- apply exponential backoff |
clawlink_list_integrations to confirm pairingPowered by [ClawLink](https://claw-link.dev/?utm_source=clawhub&utm_medium=referral&utm_content=fathom) -- an integration hub for OpenClaw

~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.