Skip to main content
Glama
liba2k
by liba2k

Fellow MCP Server

A local MCP (Model Context Protocol) server that wraps the Fellow.ai API, providing tools to access meeting data, transcripts, summaries, action items, and participants.

Features:

  • Local SQLite database for caching meeting data

  • Automatic incremental sync to keep action items fresh

  • Full-text search across cached notes

  • Find meetings by participant

Installation

npm install -g fellow-mcp

Setup

1. Get your Fellow API credentials

  1. Log into your Fellow account

  2. Navigate to Developer API settings in your User settings

  3. Generate a new API key

  4. Note your workspace subdomain (the part before .fellow.app in your URL)

2. Configure your MCP client

Add the following to your MCP client configuration (e.g., ~/.config/opencode/opencode.json):

{
  "mcp": {
    "fellow": {
      "type": "local",
      "command": ["npx", "-y", "fellow-mcp"],
      "environment": {
        "FELLOW_API_KEY": "YOUR_FELLOW_API_KEY_HERE",
        "FELLOW_SUBDOMAIN": "YOUR_SUBDOMAIN"
      },
      "enabled": true
    }
  }
}

Available Tools

API Tools (Direct Fellow API calls)

search_meetings

Search for meetings/recordings in Fellow.

Parameters:

  • title (optional): Filter by meeting title (case-insensitive partial match)

  • created_at_start (optional): Filter meetings created after this date (ISO format)

  • created_at_end (optional): Filter meetings created before this date (ISO format)

  • limit (optional): Maximum number of results (1-50, default 20)

get_meeting_transcript

Get the full transcript of a meeting recording with speaker labels and timestamps.

Parameters:

  • recording_id (optional): The ID of the recording

  • meeting_title (optional): Search by meeting title

get_meeting_summary

Get the meeting summary/notes content including agenda items, discussion topics, and decisions.

Parameters:

  • note_id (optional): The ID of the note

  • recording_id (optional): Get the summary for a recording's associated note

  • meeting_title (optional): Search by meeting title

get_action_items

Extract action items from a single meeting's notes.

Parameters:

  • note_id (optional): The ID of the note

  • meeting_title (optional): Search by meeting title

get_meeting_participants

Get the list of participants/attendees for a meeting.

Parameters:

  • note_id (optional): The ID of the note

  • meeting_title (optional): Search by meeting title

Database Tools (Local SQLite cache)

sync_meetings

Sync meetings from Fellow API to local database.

Parameters:

  • force (optional, default: false): If true, performs full re-sync. Otherwise does incremental sync (only new/updated since last sync)

  • include_transcripts (optional, default: false): If true, also fetches and stores transcripts (slower)

get_all_action_items

Get all action items from the local database. Automatically performs incremental sync first to ensure data is fresh.

Parameters:

  • assignee (optional): Filter by assignee name (partial match)

  • show_completed (optional, default: false): If true, includes completed action items

  • since (optional): Only return action items from meetings on or after this date (ISO format: YYYY-MM-DD)

get_meetings_by_participants

Find meetings that included specific participants.

Parameters:

  • emails (required): List of email addresses to search for

  • require_all (optional, default: false): If true, only return meetings where ALL specified participants attended

search_cached_notes

Full-text search across all cached meeting notes (titles and content).

Parameters:

  • query (required): Search query

get_sync_status

Get the current sync status and database statistics.

Local Database

Meeting data is cached in a local SQLite database at ~/.fellow-mcp/fellow.db. This enables:

  • Fast local searches

  • Querying across all action items

  • Finding meetings by participant

  • Offline access to cached data

The database stores:

  • Notes (meeting summaries, agendas, content)

  • Recordings (with optional transcripts)

  • Action items (parsed from notes with assignee/due date extraction)

  • Participants (email addresses)

Environment Variables

Variable

Required

Description

FELLOW_API_KEY

Yes

Your Fellow API key

FELLOW_SUBDOMAIN

Yes

Your Fellow workspace subdomain

Development

# Clone the repository
git clone <repo-url>
cd fellow-mcp

# Install dependencies
npm install

# Create .env file with your credentials
echo "FELLOW_API_KEY=your_api_key_here" > .env
echo "FELLOW_SUBDOMAIN=your_subdomain" >> .env

# Watch mode for development
npm run dev

# Build
npm run build

# Test API connection
node --env-file=.env test-api.js

# Test MCP server
FELLOW_API_KEY=your_key FELLOW_SUBDOMAIN=your_subdomain node test-mcp.js

Requirements

  • Node.js >= 18.0.0

  • A Fellow.ai account with API access

License

MIT

API Reference

This MCP server wraps the Fellow Developer API. The API uses:

  • X-API-KEY header for authentication

  • POST requests for list operations (with JSON body for filters/pagination)

  • GET requests for retrieving individual resources

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/liba2k/fellow-mcp'

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