音频检索生成服务器

通过AI将音频文件转换为可搜索的知识库,支持对会议、播客、讲座等音频内容进行自然语言搜索。

  • by matheusslg
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 matheusslg/mcp-audio-rag

使用说明

MCP音频RAG服务器

使用人工智能将您的音频文件转换为可搜索的知识库。向克劳德询问有关您的会议、播客、讲座或任何音频内容的问题。

这是什么?

这是一个MCP(模型上下文协议)服务器,它允许您:

  1. 转录 使用谷歌Gemini AI的任何音频文件
  2. 商店 可搜索数据库中的转录
  3. 搜索 使用自然语言浏览所有音频内容

设置完成后,您可以简单地问Claude以下问题:

  • “他们在我的会议录音中讨论了什么预算?”
  • “在我的播客收藏中查找机器学习的提及”
  • “昨天讲座的要点是什么?”

运作原理

┌─────────────┐     ┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│ Audio File  │ ──▶ │   Gemini    │ ──▶ │  Chunking   │ ──▶ │  Supabase   │
│ (.mp3, etc) │     │ Transcribe  │     │ + Embedding │     │  (pgvector) │
└─────────────┘     └─────────────┘     └─────────────┘     └─────────────┘
                                                                   │
┌─────────────┐     ┌─────────────┐     ┌─────────────┐            │
│   Claude    │ ◀── │   Results   │ ◀── │   Search    │ ◀──────────┘
│  Response   │     │ + Snippets  │     │   Query     │
└─────────────┘     └─────────────┘     └─────────────┘

快速开始

先决条件

步骤1:克隆并安装

git clone https://github.com/matheusslg/mcp-audio-rag.git
cd mcp-audio-rag
npm install

步骤2:设置辅助数据库

  1. 在以下位置创建新项目 网站 supabase.com
  2. 首选 SQL编辑器 在您的仪表板中
  3. 粘贴并运行以下内容 supabase/schema.sql

第3步:获取API密钥

Supabase (设置→ API):

  • 复制 项目Url → SUPABASE_URL
  • 复制 service_role密钥 → SUPABASE_SERVICE_KEY

谷歌AI工作室:

步骤4:配置

cp .env.example .env

编辑 .env:

GEMINI_API_KEY=your-key-here
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_SERVICE_KEY=your-service-role-key

第五步:加入克劳德

适用于Claude Code CLI (~/.claude.json):

{
  "mcpServers": {
    "audio-rag": {
      "command": "npx",
      "args": ["tsx", "/full/path/to/mcp-audio-rag/src/server.ts"],
      "env": {
        "GEMINI_API_KEY": "your-key",
        "SUPABASE_URL": "https://your-project.supabase.co",
        "SUPABASE_SERVICE_KEY": "your-service-role-key"
      }
    }
  }
}

适用于克劳德桌面 (~/Library/Application Support/Claude/claude_desktop_config.json 在Mac上):

配置与上述相同。

用法

转录音频

只需告诉克劳德转录一个文件:

Transcribe /path/to/meeting.mp3

想要使用特定的模型吗?只要问:

Transcribe /path/to/lecture.m4a using gemini-2.5-pro

搜索您的音频

问一些自然的问题:

What did they say about the project timeline?
Search for mentions of "budget" in my recordings
Find discussions about AI in my podcasts

管理您的图书馆

List all my transcribed audio files
Delete the recording from last week
Get the full transcript of meeting.mp3
Summarize the podcast episode

可用型号

型号 最适合
gemini-2.5-flash 默认 -快速准确,平衡性好
gemini-2.5-flash-lite 最快、最便宜-适合批量加工
gemini-2.5-pro 最佳音质-复杂音频,多扬声器
gemini-3-pro-preview 最新-尖端功能
gemini-2.0-flash 可靠-上一代
gemini-2.0-flash-lite 快速-上一代

支持的音频格式

.mp3 .mp4 .m4a .wav .webm .mpeg .mpga

可用工具

工具 说明
ingest_audio 转录并存储音频文件
search_transcripts 使用自然语言搜索音频
list_transcripts 列出所有转录的音频文件
get_full_transcript 获取文件的完整副本
summarize_audio 生成成绩单的AI摘要
delete_transcript 从数据库中删除转录的文件

故障排除

问题 解决方案
“未找到相关片段” 尝试重新表述您的搜索,或检查是否摄入了音频
“缺少环境变量” 检查您的 .env 文件或Claude配置包含所有3个键
Supabase错误 确保您正在使用 service_role 钥匙,不是 anon 钥匙
慢转录 使用 gemini-2.5-flash-lite 为了更快的处理

支持这个项目

如果这个项目为你节省了时间或帮助了你,考虑给我买杯咖啡!

许可证

麻省理工学院-随心所欲地使用它!


Made with Gemini + Supabase + Claude