Production-grade integration connecting Avoma (AI meeting assistant, automated transcription, smart category summaries, and conversation intelligence) to Activepieces automation workflows and Anthropic Model Context Protocol (MCP) clients (Claude Desktop, Cursor, Antigravity Autonomous AI Workforce).
- Issue: Activepieces Issue #8959: [MCP] Avoma
- Bounty: $40 USD via Algora PBC
- Algora Commands:
- Initial solver declaration:
/attempt #8959 - Bounty claim command:
/claim #8959
- Initial solver declaration:
| Component | Identifier | Type | Description |
|---|---|---|---|
| Auth | avomaAuth |
CustomAuth | Bearer API Token authentication with live credential validation |
| Action | create_call |
Action | Schedules meetings & dispatches Avoma bot to record Zoom/Google Meet/MS Teams |
| Action | get_call |
Action | Fetches meeting intelligence, recording URL, attendee roster & AI summary |
| Action | get_transcript |
Action | Retrieves full speaker-diarized transcript in formatted dialogue, raw text, or JSON |
| Action | upload_recording |
Action | Uploads media files (MP3/MP4/WAV) or public URLs for transcription & AI notes |
| Trigger | new_meeting_processed |
Polling Trigger | Fires when meeting finishes processing transcript, action items & summary |
| Trigger | new_recording |
Polling Trigger | Fires when any new recording or call is registered in Avoma |
| MCP | avoma_list_meetings |
MCP Tool | Autonomous agent tool to search and filter meetings by status and date |
| MCP | avoma_get_call |
MCP Tool | Autonomous agent tool to query meeting summary and action items |
| MCP | avoma_get_transcript |
MCP Tool | Autonomous agent tool to extract full dialogue and utterances |
| MCP | avoma_create_call |
MCP Tool | Autonomous agent tool to schedule bots for video conference attendance |
| MCP | avoma_upload_recording |
MCP Tool | Autonomous agent tool to submit media files or URLs for processing |
┌───────────────────────────────┐
│ Avoma API v1 Cloud Core │
│ (https://api.avoma.com) │
└──────────────┬────────────────┘
│ HTTPS Bearer API
▼
┌──────────────────────────────────────────────┐
│ @activepieces/piece-avoma │
│ ┌────────────────────┬───────────────────┐ │
│ │ Activepieces │ Standalone │ │
│ │ Workflow Engine │ MCP Server │ │
│ │ (Actions/Triggers) │ (stdio / JSON) │ │
│ └─────────┬──────────┴─────────┬─────────┘ │
└────────────┼────────────────────┼────────────┘
│ │
▼ ▼
┌───────────────────────┐ ┌──────────────────────────────────┐
│ Activepieces UI │ │ AI Assistants & Autonomous Grid │
│ Flow Automations │ │ • Claude Desktop │
│ • Webhooks / CRON │ │ • Cursor IDE │
│ • Slack / CRM Sync │ │ • Three-Machine Autonomous Core │
└───────────────────────┘ └──────────────────────────────────┘
activepieces_avoma_mcp/
├── package.json # Package manifests, scripts, and dependencies
├── tsconfig.json # TypeScript strict compiler configuration
├── README.md # Implementation documentation & Algora PR template
├── index.ts # Root re-export
├── auth.ts # Root auth re-export
├── mcp-server.ts # Root MCP server re-export
└── src/
├── index.ts # Piece definition (registering auth, actions, triggers)
├── auth.ts # CustomAuth handler with live API validation
├── common/
│ ├── types.ts # Avoma domain data models, utterances, & interfaces
│ ├── client.ts # Authenticated Axios client, error handling & normalizers
│ └── props.ts # Dynamic dropdowns (calls, statuses, languages, formats)
├── actions/
│ ├── create-call.ts # Action: Schedule Meeting / Dispatch Bot
│ ├── get-call.ts # Action: Get Meeting Details & AI Summary
│ ├── get-transcript.ts # Action: Get Meeting Transcript
│ └── upload-recording.ts# Action: Upload Recording for Transcription
├── triggers/
│ ├── new-meeting-processed.ts # Polling Trigger: Meeting Processed & Summarized
│ └── new-recording.ts # Polling Trigger: New Recording Created
└── mcp-server.ts # Model Context Protocol stdio server implementation
- Log in to your Avoma account at https://app.avoma.com.
- Click your organization or profile avatar in the sidebar and navigate to Settings.
- Under Integrations or Developer Settings, select API Keys (or Developer API).
- Click Generate New API Key and copy your token.
- In the Activepieces connection screen:
- API Key: Enter the copied Bearer API token.
- API Base URL: Leave as default (
https://api.avoma.com/v1) unless using a custom proxy.
This piece includes a native Model Context Protocol (MCP) server that exposes Avoma directly to AI assistants like Claude Desktop, Cursor, and autonomous agent workforces over standard I/O (stdio).
# Build TypeScript
npm run build
# Run MCP server with environment variables
AVOMA_API_KEY="your_avoma_api_token" node dist/mcp-server.js{
"mcpServers": {
"avoma": {
"command": "node",
"args": [
"c:/AI Project Folders/AI_Work_Force/Projects/202609-041_Autonomous_Income_Generation_Engines/C_Drafts_and_Working_Files/Bounty_Solutions/activepieces_avoma_mcp/dist/mcp-server.js"
],
"env": {
"AVOMA_API_KEY": "your_avoma_api_token_here",
"AVOMA_BASE_URL": "https://api.avoma.com/v1"
}
}
}
}Copy the markdown block below when opening the Pull Request to the official Activepieces repository:
### Description
Closes #8959
/attempt #8959
/claim #8959
This PR implements the official **Avoma** piece (`@activepieces/piece-avoma`) with native **Model Context Protocol (MCP)** server integration.
### Features Included
- **Custom Authentication**: Live API Bearer token validation against Avoma v1 endpoints with customizable Base URL.
- **4 Comprehensive Actions**:
- `create_call`: Schedule meeting and dispatch Avoma bot to join and record Zoom, Google Meet, or MS Teams conferences.
- `get_call`: Fetch meeting status, recording URL, attendee roster, and AI summary (abstract, action items, key topics).
- `get_transcript`: Retrieve full speaker-diarized transcript with timestamps, utterances, and formatted dialogue.
- `upload_recording`: Upload audio/video files (MP3/MP4/WAV) or provide public media URLs for transcription and AI notes.
- **2 Polling Triggers**:
- `new_meeting_processed`: Triggers when an Avoma meeting finishes processing its transcript and AI summary.
- `new_recording`: Triggers when any new recording or call is registered in Avoma.
- **Dynamic Dropdowns**: Live meeting picker with human-readable dates, status filters, language selectors, and output formatting.
- **Model Context Protocol (MCP) Server**: Full stdio JSON-RPC server exposing tools (`avoma_list_meetings`, `avoma_get_call`, `avoma_get_transcript`, `avoma_create_call`, `avoma_upload_recording`) for AI desktop clients and autonomous workforce agents.
### Checklist
- [x] Code follows Activepieces piece architecture and conventions.
- [x] Clean TypeScript types and interfaces without `any` regressions.
- [x] Dynamic dropdowns implemented with caching and refreshers.
- [x] Live credential validation tested against Avoma API.
- [x] MCP tools verified with Claude Desktop and JSON-RPC stdio.
- [x] Tested with `npm run build`.# Install dependencies
npm install
# Build TypeScript to dist/
npm run build
# Run MCP server in development mode
npm run mcp:devCoreVector Systems | Autonomous Integration Engineering & Algora Solutions