About Grain MCP Server
Grain MCP Server connects MCP clients to Grain, a meeting recording and transcription service. It uses browser automation to list meetings and download transcripts without requiring Grain's enterprise API.
Key features
- 01List Grain meetings
- 02Download meeting transcripts
- 03Save transcripts as VTT or SRT
- 04Authenticate through a browser session
Use cases
- 01Find a meeting by title or date
- 02Save a meeting transcript locally
- 03Retrieve meeting details for an MCP workflow
MCP support
It exposes Grain meeting retrieval and transcript-download tools to MCP clients. Browser automation is used, and the first use requires logging in to Grain.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEGrain MCP Server
A Model Context Protocol server for Grain, a service that records and transcribes meetings.
This server provides integration with Grain through MCP, allowing users to access Grain functionality without needing the enterprise API (which is only available on enterprise subscriptions) or paid integrations like Zapier. The service is based on Playwright for browser automation.
Installation
Manual Installation
Add the Grain MCP server configuration to your MCP client:
{
"mcpServers": {
"grain_uvx": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/eadm/grain-mcp-server",
"grain-mcp-server",
"--user-data-dir",
"<absolute-path-to-browser-session-data>"
]
}
}
}
Replace <absolute-path-to-browser-session-data> with the absolute path where you want to store the browser session data. On first MCP usage, you will need to login to Grain via the browser.
Components
Tools
-
get_all_meetings: Retrieve all meetings from Grain- Returns a list of dictionaries containing meeting information, including:
id(string): Meeting IDtitle(string): Meeting titleurl(string): URL to access the meetingdate(string): Meeting date in ISO format
- Returns a list of dictionaries containing meeting information, including:
-
download_meeting_transcript: Download a meeting transcript- Required inputs:
absolute_save_path(string): The file path where the transcript will be savedmeeting_id(string): The unique identifier of the meetingtranscription_type(string): The format of the transcript file ("vtt" or "srt")
- Returns:
bool: True if the download was successful, False otherwise
- Required inputs:
Usage Examples
Some example prompts you can use with your MCP client to interact with Grain:
-
"Show me all my recent meetings" → execute the
get_all_meetingstool to retrieve a list of all meetings stored in Grain -
"Download the transcript for my last team meeting" → use
get_all_meetingsto find the meeting, then usedownload_meeting_transcriptto download its transcript
Development
- Install dependencies:
uv sync
- Run the application:
uv run grain-mcp-server
- Run with debug mode:
uv run grain-mcp-server --debug
- Run tests:
uv run pytest
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.
