Token导航 LogoToken导航TokenDH.com
MCP Server Whisper logo
音视频stdio官方级别未说明来源级核验

MCP Server Whisper

MCP Server

MCP Server Whisper是一个基于Model Context Protocol的音频转录和处理服务,利用OpenAI的Whisper和GPT-4o模型提供高级音频转录、格式转换、文本转语音等功能。

工具数

8

提示词数

0

GitHub Stars

54

资源数

0
音频处理多模型支持PythonClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

arcaputo3

提供方

arcaputo3

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run pre-commit install

详细介绍

MCP服务器低语

使用OpenAI的Whisper和GPT-4o模型进行高级音频转录和处理的模型上下文协议(MCP)服务器。

](https://pypi.org/project/mcp-server-whisper/) ![License: MIT](https://opensource.org/licenses/MIT) ![Python 3.10+](https://www.python.org/downloads/) CI Status ![Built with uv](https://github.com/astral-sh/uv)

\[!警告\] 这个项目已经转移了。 主动开发已迁移到 TJC-LP/桑扎鲁。此存储库将不再维护并存档。请将您的依赖关系和问题更新到新的仓库。

概述

MCP Server Whisper提供了一种通过OpenAI最新的转录和语音服务处理音频文件的标准化方法。通过实施 模型上下文协议,它使像克劳德这样的人工智能助手能够与音频处理功能无缝交互。

主要特点:

  • 🔍 高级文件搜索 具有正则表达式模式、文件元数据过滤和排序功能
  • MCP本地并行处理 -同时调用多个工具
  • 🔄 格式转换 支持的音频类型之间
  • 📦 自动压缩 用于超大文件
  • 🎯 多模型转录 支持所有OpenAI音频模型
  • 🗣️ 交互式音频聊天 GPT-4o音频型号
  • ✏️ 增强转录 具有专门的提示和时间戳支持
  • 🎙️ 文本转语音生成 具有可定制的语音、指令和速度
  • 📊 综合元数据 包括持续时间、文件大小和格式支持
  • 🚀 高性能缓存 用于重复操作
  • 🔒 类型安全响应 所有工具输出均采用Pydantic模型
注: 该项目是非官方的,不隶属于OpenAI,也不得到OpenAI的认可或赞助。它为OpenAI的公开API提供了一个模型上下文协议接口。

安装

# Clone the repository
git clone https://github.com/arcaputo3/mcp-server-whisper.git
cd mcp-server-whisper

# Using uv 
uv sync

# Set up pre-commit hooks
uv run pre-commit install

环境设置

创建一个 .env 基于提供的文件 .env.example:

cp .env.example .env

编辑 .env 根据您的实际值:

OPENAI_API_KEY=your_openai_api_key
AUDIO_FILES_PATH=/path/to/your/audio/files

注: 环境变量必须在运行时可用。使用Claude进行本地开发时,请使用以下工具 dotenv-cli 加载它们(请参阅下面的用法部分)。

用法

与克劳德共同发展

该项目包括 .mcp.json 用于使用Claude进行本地开发的配置文件。要使用它:

  1. 确保您的 .env 文件配置了所需的环境变量
  2. 加载环境变量后启动Claude:
bunx dotenv-cli -- claude

这将:

  • 从您的 .env 文件
  • 使用配置的MCP服务器启动Claude .mcp.json
  • 在开发过程中启用热重新加载

.mcp.json 配置:

{
  "mcpServers": {
    "whisper": {
      "command": "uv",
      "args": ["run", "mcp-server-whisper"],
      "env": {
        "OPENAI_API_KEY": "${OPENAI_API_KEY}",
        "AUDIO_FILES_PATH": "${AUDIO_FILES_PATH}"
      }
    }
  }
}

暴露的MCP工具

音频文件管理

  • list_audio_files -列出具有全面过滤和排序选项的音频文件:

- 根据文件名的正则表达式模式匹配进行筛选 - 按文件大小、持续时间、修改时间或格式过滤 - 按名称、大小、持续时间、修改时间或格式排序 - 返回类型安全 FilePathSupportParams 包含完整元数据

  • get_latest_audio -获取包含型号支持信息的最新修改的音频文件

音频处理

  • convert_audio -将音频文件转换为支持的格式(mp3或wav)

- 退货 AudioProcessingResult 带输出路径

  • compress_audio -压缩超过大小限制的音频文件

- 退货 AudioProcessingResult 带输出路径

转录

  • transcribe_audio -使用OpenAI模型的高级转录:

- 支持 whisper-1, gpt-4o-transcribe,以及 gpt-4o-mini-transcribe - 引导转录的自定义提示 - 单词和段级定时的可选时间戳粒度 - JSON响应格式选项 - 退货 TranscriptionResult 带有文本、使用数据和可选时间戳

  • chat_with_audio -使用GPT-4o音频模型的交互式音频分析:

- 支持 gpt-4o-audio-preview (推荐)和注明日期的版本 - 注: gpt-4o-mini-audio-preview 对音频聊天有限制,不建议使用 - 自定义系统和用户提示 - 提供对音频内容的对话响应 - 退货 ChatResult 带回复文本

  • transcribe_with_enhancement -使用专用模板增强转录:

- detailed -包括音调、情感和背景细节 - storytelling -将成绩单转化为叙述形式 - professional -创建正式的、适合业务的转录 - analytical -增加了对语音模式和关键点的分析 - 退货 TranscriptionResult 输出增强

文本转语音

  • create_audio -使用OpenAI的TTS API生成文本到速度的音频:

- 支持 gpt-4o-mini-tts (首选)和其他语音模型 - 多种音色选项(合金、灰、民谣、珊瑚、回声、鼠尾草、微光、诗句、马林、雪松) - 速度调节和自定义说明 - 可自定义的输出文件路径 - 通过自动分割和连接音频片段来处理任何长度的文本 - 退货 TTSResult 带输出路径

支持的音频格式

型号支持的格式
转录flac、mp3、mp4、mpeg、mpga、m4a、ogg、wav、webm
聊天mp3、wav

注: 大于25MB的文件会自动压缩以满足API的限制。

Claude使用示例

Basic Audio Transcription

Claude, please transcribe my latest audio file with detailed insights.

克劳德将自动:

  1. 使用查找最新音频文件 get_latest_audio
  2. 确定合适的转录方法
  3. 使用以下方式处理文件 transcribe_with_enhancement 使用“详细”模板
  4. 返回增强的转录

Advanced Audio File Search and Filtering

Claude, list all my audio files that are longer than 5 minutes and were created after January 1st, 2024, sorted by size.

克劳德将:

  1. 将日期转换为时间戳
  2. 使用 list_audio_files 使用适当的过滤器:

- min_duration_seconds: 300 (5分钟) - min_modified_time: - sort_by: "size"

  1. 返回具有综合元数据的匹配音频文件的排序列表

Batch Processing Multiple Files

Claude, find all MP3 files with "interview" in the filename and create professional transcripts for each one.

克劳德将:

  1. 使用搜索文件 list_audio_files 带有模式和格式过滤器
  2. 使多个并行 transcribe_with_enhancement 工具调用(MCP本机处理并行性)
  3. 每次通话使用 enhancement_type: "professional" 并返回键入的 TranscriptionResult
  4. 在格式良好的输出中返回包含完整元数据的所有转录

Generating Text-to-Speech Audio

Claude, create audio with this script: "Welcome to our podcast! Today we'll be discussing artificial intelligence trends in 2025." Use the shimmer voice.

克劳德将:

  1. 使用 create_audio 工具包括:

- text_prompt 包含脚本 - voice: "shimmer" - model: "gpt-4o-mini-tts" (默认高质量型号) - instructions: "Speak in an enthusiastic, podcast host style" (可选) - speed: 1.0 (默认,可以调整)

  1. 生成音频文件并将其保存到配置的音频目录
  2. 提供生成的音频文件的路径

使用Claude Desktop进行配置

对于Claude Desktop的生产使用(与本地开发相反),请将其添加到您的 claude_desktop_config.json:

UVX

{
  "mcpServers": {
    "whisper": {
      "command": "uvx",
      "args": ["mcp-server-whisper"],
      "env": {
        "OPENAI_API_KEY": "your_openai_api_key",
        "AUDIO_FILES_PATH": "/path/to/your/audio/files"
      }
    }
  }
}

推荐(仅限Mac OS)

  • 安装 屏幕录像机Omi (免费)
  • AUDIO_FILES_PATH/Users//Movies/Omi Screen Recorder 并替换 `` 使用您的用户名
  • 当您使用该应用程序录制音频时,您可以与Claude并行转录多个文件

发展

该项目使用现代Python开发工具,包括 uv, pytest, ruff,以及 mypy.

# Run tests
uv run pytest

# Run with coverage
uv run pytest --cov=src

# Format code
uv run ruff format src

# Lint code
uv run ruff check src

# Run type checking (strict mode)
uv run mypy --strict src

# Run the pre-commit hooks
pre-commit run --all-files

CI/CD工作流程

该项目使用GitHub Actions for CI/CD:

  1. 棉绒和类型检查:通过ruff和严格的mypy类型检查确保代码质量
  2. 测试:在多个Python版本(3.10、3.11、3.12、3.13、3.14、3.14t)上运行测试
  3. 发布与发布:双触发工作流程,实现灵活的发布管理

注: Python 3.14t是用于测试真正并行性的自由线程构建(没有GIL)。

创建新版本

发布工作流支持两种方法:

选项1:自动发布(推荐)

推送标签以自动创建发布并发布到PyPI:

# 1. Update version in pyproject.toml
# Edit the version field manually, e.g., "1.0.0" -> "1.1.0"

# 2. Update __version__ in src/mcp_server_whisper/__init__.py to match

# 3. Update the lock file
uv lock

# 4. Commit the version bump
git add pyproject.toml src/mcp_server_whisper/__init__.py uv.lock
git commit -m "chore: bump version to 1.1.0"

# 5. Create and push the version tag
git tag v1.1.0
git push origin main
git push origin v1.1.0

这将:

  • 验证标记版本是否与pyproject.toml匹配
  • 构建包
  • 使用自动生成的笔记创建GitHub版本
  • 自动发布到PyPI

选项2:手动释放

通过GitHub UI手动创建发布,然后可选择发布:

  1. 首选 发布 在GitHub上
  2. 点击“起草新版本”
  3. 创建新标签或选择现有标签
  4. 填写发布详细信息
  5. 点击“发布发布”

发布版本时,工作流将自动发布到PyPI。您还可以创建草稿发布以延迟发布。

API设计理念

MCP服务器耳语遵循 扁平、类型安全的API设计 针对MCP客户端进行了优化:

  • 平淡的争论:所有工具都接受平面参数而不是嵌套对象,以实现更简单、更直观的调用
  • 类型安全响应:每个工具都返回一个强类型的Pydantic模型(TranscriptionResult, ChatResult, AudioProcessingResult, TTSResult)
  • 单项操作:一个调用处理一个文件,MCP协议本机处理并行性
  • 每个文件错误处理:故障仅限于单个操作,而不是整个批次
  • 自我记录:类型提示在IDE和AI模型中提供自动补全和验证

这种设计使AI助手更容易正确使用工具并可靠地处理结果。

运作原理

有关详细的体系结构信息,请参见 架构文档.

MCP Server Whisper基于模型上下文协议构建,该协议规范了人工智能模型与外部工具和数据源的交互方式。服务器:

  1. 展示音频处理能力:通过具有扁平、类型安全API的标准化MCP工具接口
  2. 实现并行处理:使用anyio结构化并发;MCP客户端以本机方式处理并行性
  3. 管理文件操作:处理检测、验证、转换和压缩
  4. 提供丰富的转录:通过不同的OpenAI模型和增强模板
  5. 优化性能:具有用于重复操作的缓存机制
  6. 确保类型安全:所有响应都使用Pydantic模型进行验证和IDE支持

在引擎盖下,它使用:

  • pydub 用于音频文件操作(带 audioop-lts 适用于Python 3.13+)
  • anyio 用于结构化并发和任务组管理
  • aioresult 用于收集并行任务组的结果
  • OpenAI最新的转录模型(包括gpt-4o-transcript)
  • OpenAI的GPT-4o音频模型可增强理解
  • OpenAI的gpt-4o-mini-tts用于高质量语音合成
  • FastMCP用于简化MCP服务器实施
  • 整个代码库中的类型提示和严格的mypy验证

贡献

欢迎投稿!请按照以下步骤操作:

  1. 分叉存储库
  2. 为您的功能创建新分支(git checkout -b feature/amazing-feature)
  3. 进行更改
  4. 运行测试和linting(uv run pytest && uv run ruff check src && uv run mypy --strict src)
  5. 提交您的更改(git commit -m 'Add some amazing feature')
  6. 推到分支(git push origin feature/amazing-feature)
  7. 打开拉取请求

许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

致谢

______________________________________________________________________

Made with ❤️ by Richie Caputo

目录标签

目录标签

音频处理多模型支持PythonClaude本地部署语音转录文本转语音高级文件管理

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

8

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP