graindrop
Watches a Dropbox folder for new audio files, transcribes them, and serves audio and transcript via MCP tools and resources.
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., "@graindroplist new recordings"
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.
graindrop
Audio capture pipeline. Listens for audio files, transcribes via whisper.cpp, and serves audio + transcript through an MCP server.
Audio file → graindrop → whisper.cpp → manifest.json → MCP server (:8648)Any MCP-compatible agent (Hermes, Claude Code, Cursor, etc.) connects to the graindrop MCP and discovers new recordings as they land.
One-sentence pitch
A self-contained daemon that watches a directory, transcribes anything that lands in it, and presents the results to any AI agent through a standard protocol — no cloud, no subscriptions, no vendor lock-in.
Related MCP server: io.github.chicogong/ffvoice
How it works
Drop an audio file (
.m4a,.wav,.mp3) into the watched directorygraindrop copies it to
audio/, transcribes via whisper.cpp totranscripts/, archives the original to_archive/, and logs it inmanifest.jsonThe MCP server exposes the recording to any connected agent through tools and resources
The agent reads the transcript, fetches the audio, and does what it does
Quick start
# Install
pip install graindrop
# or from source:
git clone https://github.com/stuartmhannon/graindrop
cd graindrop
pip install -e .
# Start the MCP server
graindrop-mcp --port 8648
# The server watches ~/Dropbox/graindrop/ by default
# Drop an .m4a in there and the MCP server picks it upMCP Tools
Tool | Purpose |
| List all recordings, newest first |
| List only unacknowledged recordings |
| Full transcript text for a recording |
| Audio file path for a recording |
| Mark a recording as read |
| Summary counts |
MCP Resources
URI | Content |
| Plain text transcript |
| Binary audio (m4a/wav) |
Configuration
graindrop-mcp --port 8648 --dir ~/grain/reference/graindrop--port: HTTP SSE port (default: 8648)--dir: Data directory (default:~/grain/reference/graindrop)
The watched directory defaults to ~/Dropbox/graindrop/. Override by editing WATCH_DIR in graindrop_mcp.py.
Storage layout
~/grain/reference/graindrop/
├── audio/{slug}.{ext} ← canonical audio copy
├── transcripts/{slug}.txt ← whisper transcript
├── _archive/{original} ← source file backup
├── manifest.json ← searchable index
├── graindrop_mcp.py ← MCP server
├── graindrop_watcher.py ← processing scriptRequirements
Python 3.10+
whisper.cpp (for transcription)
ffmpeg (for audio conversion)
mcp[cli](installed automatically)
Agent integration
Hermes Agent
Add to ~/.hermes/config.yaml:
mcp_servers:
graindrop:
url: http://127.0.0.1:8648/sse
transport: sseAny MCP client
Connect to http://127.0.0.1:8648/sse using the MCP protocol's HTTP SSE transport. Call tools/list to discover available tools, then tools/call to invoke them.
License
MIT — do what you want, just don't blame us.
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.
Related MCP Servers
- Alicense-qualityBmaintenanceEnables AI agents to speak and listen in real-time with interruption handling, using local ML models and hot-swappable adapters.Last updated20MIT
- Alicense-qualityAmaintenanceMCP server for offline speech-to-text and speaker diarization, enabling AI agents to transcribe audio locally without cloud APIs.Last updated3MIT
- Alicense-qualityBmaintenanceLocal-first speech-to-text and text-to-speech MCP server. Hot-swappable engines via config.yaml — no code changes, no API keys required.Last updated2MIT
- Alicense-qualityCmaintenanceLocal podcast transcription, embedding, and semantic search with an MCP server for AI assistant integration. All processing runs on your machine.Last updatedMIT
Related MCP Connectors
Continuity protocol for autonomous AI agents. Agent messaging with SMTP bridge and LN payments.
Sovereign Agent OS — Persistent Memory, Governance & Compliance for AI Agents.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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/stuartmhannon/graindrop'
If you have feedback or need assistance with the MCP directory API, please join our Discord server