ParrotScribe MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ParrotScribe MCP Servershow me the latest 10 transcript entries"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ParrotScribe MCP Server (Deprecated) & Lex Copilot
This MCP server is deprecated. It willcontinue to work for users who stay on Parrot Scribe versions before 0.4.0, but it will not work once you upgrade to 0.4.0 or newer.
Use the integrated MCP server built into Parrot Scribe instead.
An MCP (Model Context Protocol) server that enables AI agents to interact with the ParrotScribe transcription service on macOS.
Meet Lex: Your Tactical Meeting Copilot
If you are using Opencode, I recommend that you use the pre-configured agent called Lex. Lex transforms passive transcription into an active research and navigation tool.
Real-time Context: Ask "What's that?" or "What did they just say?" to get instant explanations.
Zero-Latency Knowledge: Proactively loads domain-specific skills based on transcript keywords.
Tactical Summaries: Generates structured meeting notes, identifying key facts and action items.
Persona-Ready: Tailor Lex to any role (Journalist, Researcher, Engineer) via private directives.
Installing Lex
Ensure you are on Parrot Scribe
< 0.4.0and this MCP server is configured in your environment.Copy
agent/lex.mdfrom this repository into your local.opencode/agent/directory.
Related MCP server: @hyperwhisper/mcp
What It Does
ParrotScribe captures real-time audio from your microphone and system audio, transcribes it using Whisper, and this MCP server exposes that transcription data to AI agents. This enables workflows like:
Meeting Monitor: AI monitors a live call and surfaces relevant information
Action Item Tracker: AI detects commitments and prepares follow-up actions
Real-time Researcher: AI looks up technical terms mentioned in conversation
Session Summarizer: AI generates structured summaries after calls
Prerequisites
macOS with ParrotScribe installed
Node.js 18 or higher
The
pscribeCLI must be available in your PATH (it will be if ParrotScribe is installed correctly)Parrot Scribe version < 0.4.0 (once
0.4.0is released, this package is unsupported)
Legacy Installation (Parrot Scribe < 0.4.0 only)
If you are using Parrot Scribe 0.4.0 (or newer), do not install this package. Use the app's integrated MCP server.
Option 1: NPX (Recommended)
No installation needed. Configure your AI agent to run:
npx @johanthoren/parrotscribe-mcp-serverOption 2: Global Install
npm install -g @johanthoren/parrotscribe-mcp-serverThen run with:
parrotscribe-mcp-serverOption 3: From Source
git clone https://github.com/johanthoren/parrotscribe-mcp.git
cd parrotscribe-mcp
npm install
npm run build
node dist/index.jsConfiguration
Opencode
Add to your ~/.config/opencode/opencode.jsonc:
{
"mcp": {
"parrotscribe": {
"type": "local",
"command": ["npx", "@johanthoren/parrotscribe-mcp-server"]
}
}
}Claude Code
Add to your project's .mcp.json or global MCP config:
{
"mcpServers": {
"parrotscribe": {
"command": "npx",
"args": ["@johanthoren/parrotscribe-mcp-server"]
}
}
}Claude Desktop
Add to your claude_desktop_config.json (typically at ~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"parrotscribe": {
"command": "npx",
"args": ["@johanthoren/parrotscribe-mcp-server"]
}
}
}Environment Variables (Optional)
Variable | Description | Default |
| Path to the |
|
Available Tools
Tool | Description |
| Start real-time audio transcription |
| Stop/pause the current transcription |
| Get service status, session ID, duration |
| Get recent transcript entries with filtering |
| Display complete sessions with time-based filtering |
| Search for patterns across transcript sessions |
| List past transcription sessions |
| Force start a new session |
pscribe_tail Parameters
Parameter | Type | Description |
| number | Number of entries to return (default: 10) |
| number | Start from line N (for polling) |
| string | Filter: |
| string | Read from a specific session |
pscribe_cat Parameters
Parameter | Type | Description |
| string[] | Session IDs to display (from pscribe_sessions) |
| string | Show sessions starting after this ISO8601 timestamp |
| string | Show sessions starting before this ISO8601 timestamp |
| number | Show last N sessions |
| string | Filter: |
Use pscribe_cat for historical queries like "summarize yesterday's standup" - the AI converts natural language time references to ISO8601.
pscribe_grep Parameters
Parameter | Type | Description |
| string | The pattern to search for (regex supported) - required |
| string | Only search sessions starting after this ISO8601 timestamp |
| string | Only search sessions starting before this ISO8601 timestamp |
| string | Filter: |
| boolean | Case-insensitive search |
| boolean | Show match count per session instead of matches |
| number | Show N lines after each match (-A) |
| number | Show N lines before each match (-B) |
| number | Show N lines before and after each match (-C) |
Use pscribe_grep for queries like "did anyone mention deployment last week?" or "find all references to the API".
Output Format: TOON
The server returns transcript data in TOON format, a token-efficient format designed for LLM consumption:
transcript{timestamp,source,status,segment,confidence,duration,language,text}:
2024-01-15T14:30:00+01:00,M,C,1,0.95,2.5,en,Hello world
2024-01-15T14:30:05+01:00,S,C,2,0.92,3.1,sv,Hej darFields
Field | Description |
| ISO8601 with timezone |
|
|
|
|
| Incrementing segment number |
| Whisper confidence score (0.0-1.0) |
| Segment duration in seconds |
| ISO 639-1 code (e.g., |
| Transcribed content |
Polling Strategy
For real-time monitoring, agents should:
Call
pscribe_statusto ensure a session is activeCall
pscribe_tailwithn: 10to get initial contextNote the
last_linenumber from the response metadataPeriodically call
pscribe_tailwithsince_line: last_line + 1Use
status: "confirmed"to focus on finalized transcriptions
Example Prompts
See the examples/ directory for ready-to-use prompts:
standup.md: Daily standup meeting assistant
retro.md: Sprint retrospective facilitator
code-review.md: Code review meeting tracker
pair-programming.md: Pair programming session monitor
adr.md: Architecture Decision Record generator
Security & Privacy
Local-Only: Data flows exclusively from the local
pscribeCLI to the local AI agent via stdioZero-Cloud: No analytics, no telemetry, no intermediate servers
User Control: You decide when transcription is active and which AI agent receives the data
Development
# Install dependencies
npm install
# Development mode (auto-reload)
npm run dev
# Build
npm run build
# Test with MCP inspector
npm run inspectLicense
MIT
Links
This server cannot be installed
Maintenance
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
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/johanthoren/parrotscribe-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server