fireflies mcp

Local 2025-09-01 00:28:16 0

Enables access to Fireflies.ai API for retrieving, searching, and summarizing meeting transcripts with various filtering options and formats.


MCP Server for the Fireflies.ai API, enabling transcript retrieval, search, and summary generation.

Features

  • Transcript Management: Retrieve and search meeting transcripts with filtering options
  • Detailed Information: Get comprehensive details about specific transcripts
  • Advanced Search: Find transcripts containing specific keywords or phrases
  • Summary Generation: Generate concise summaries of meeting transcripts in different formats

Tools

  1. fireflies_get_transcripts
  2. Retrieve a list of meeting transcripts with optional filtering
  3. Inputs:
    • limit (optional number): Maximum number of transcripts to return
    • from_date (optional string): Start date in ISO format (YYYY-MM-DD)
    • to_date (optional string): End date in ISO format (YYYY-MM-DD)
  4. Returns: Array of transcript objects with basic information

  5. fireflies_get_transcript_details

  6. Get detailed information about a specific transcript
  7. Inputs:
    • transcript_id (string): ID of the transcript to retrieve
  8. Returns: Comprehensive transcript details including speakers, content, and metadata

  9. fireflies_search_transcripts

  10. Search for transcripts containing specific keywords
  11. Inputs:
    • query (string): Search query to find relevant transcripts
    • limit (optional number): Maximum number of transcripts to return
  12. Returns: Array of matching transcript objects

  13. fireflies_generate_summary

  14. Generate a summary of a meeting transcript
  15. Inputs:
    • transcript_id (string): ID of the transcript to summarize
    • format (optional string): Format of the summary ('bullet_points' or 'paragraph')
  16. Returns: Generated summary text

Setup

Fireflies API Key

Create a Fireflies API Key with appropriate permissions: - Go to the Fireflies.ai dashboard - Navigate to Settings > API - Generate a new API key - Copy the generated key

Usage with Claude Desktop

To use this with Claude Desktop, add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "fireflies": {
      "command": "npx",
      "args": [
        "-y",
        "@props-labs/mcp/fireflies"
      ],
      "env": {
        "FIREFLIES_API_KEY": "<YOUR_API_KEY>"
      }
    }
  }
}

Installation

  1. Clone this repository
  2. Install dependencies:
npm install
# or
pnpm install
  1. Build the project:
npm run build
# or
pnpm build

Usage

Starting the Server

FIREFLIES_API_KEY=your_api_key npm start
# or
FIREFLIES_API_KEY=your_api_key pnpm start

You can also use the setup script:

./setup.sh
FIREFLIES_API_KEY=your_api_key npm start

License

This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

[
  {
    "description": "Retrieve a list of meeting transcripts with optional filtering. By default, returns up to 20 most recent transcripts with no date filtering. Note that this operation may take longer for large datasets and might timeout. If a timeout occurs, a minimal set of transcript data will be returned.",
    "inputSchema": {
      "properties": {
        "from_date": {
          "description": "Start date in ISO format (YYYY-MM-DD). If not specified, no lower date bound is applied. Using a narrower date range can help prevent timeouts.",
          "type": "string"
        },
        "limit": {
          "description": "Maximum number of transcripts to return (default: 20). Consider using a smaller limit if experiencing timeouts.",
          "type": "number"
        },
        "to_date": {
          "description": "End date in ISO format (YYYY-MM-DD). If not specified, no upper date bound is applied. Using a narrower date range can help prevent timeouts.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "name": "fireflies_get_transcripts"
  },
  {
    "description": "Retrieve detailed information about a specific transcript. Returns a human-readable formatted transcript with speaker names and text, along with metadata and summary information.",
    "inputSchema": {
      "properties": {
        "transcript_id": {
          "description": "ID of the transcript to retrieve",
          "type": "string"
        }
      },
      "required": [
        "transcript_id"
      ],
      "type": "object"
    },
    "name": "fireflies_get_transcript_details"
  },
  {
    "description": "Search for transcripts containing specific keywords, with optional date filtering. Returns a human-readable list of matching transcripts with metadata and summary information.",
    "inputSchema": {
      "properties": {
        "from_date": {
          "description": "Start date in ISO format (YYYY-MM-DD) to filter transcripts by date. If not specified, no lower date bound is applied.",
          "type": "string"
        },
        "limit": {
          "description": "Maximum number of transcripts to return (default: 20)",
          "type": "number"
        },
        "query": {
          "description": "Search query to find relevant transcripts",
          "type": "string"
        },
        "to_date": {
          "description": "End date in ISO format (YYYY-MM-DD) to filter transcripts by date. If not specified, no upper date bound is applied.",
          "type": "string"
        }
      },
      "required": [
        "query"
      ],
      "type": "object"
    },
    "name": "fireflies_search_transcripts"
  },
  {
    "description": "Generate a summary of a meeting transcript",
    "inputSchema": {
      "properties": {
        "format": {
          "description": "Format of the summary (bullet_points or paragraph)",
          "enum": [
            "bullet_points",
            "paragraph"
          ],
          "type": "string"
        },
        "transcript_id": {
          "description": "ID of the transcript to summarize",
          "type": "string"
        }
      },
      "required": [
        "transcript_id"
      ],
      "type": "object"
    },
    "name": "fireflies_generate_summary"
  }
]