§ 指南 · 能力

通过 MCP 将 AI 代理的音频转换为MIDI 。

发布日期:2026年10月

Doseedo的转录 其音乐分析工具位于 MCP 服务器上。连接后,代理程序会将录音转录成音频文件。 笔记 ——音高、起始点、偏移点、力度、自信度——所有乐器模型都集成在一个界面中,并回答围绕它们的问题:什么 钥匙 这是什么? 速度 仪表在哪里? 低拍什么是 和弦而我刚才写的这部分在和声上是完全正确的。这些分析工具是同步的,而且完全免费,因此它们就像一个网格,供代理在渲染乐段或在会话中放置音符之前进行参考。

工具

转录是一项异步任务——服务器的说明是耗时 15 到 60 秒,最多两个积分,通常情况下不计积分——需要等待一段时间。 doseedo_wait_task这四款分析工具在同一次调用中即可完成响应,且无需积分。

真实输出,来自真实茎杆

为了更具体地说明这一点,而不是仅仅描述,以下是…… doseedo_analyze_song 这是从我们公开即兴演奏的独奏钢琴部分开始的,录制于 2026 年 10 月 15 日,并经过剪辑调整为所需形状(完整的回复包含 421 个和弦和 25 个速度映射点):

{
  "status": "done",
  "kind": "analyze_song",
  "bpm": 91,
  "key": { "name": "C# major", "root": 1, "scale": "major", "confidence": 0.769 },
  "meter": "4/4",
  "beats_per_bar": 4,
  "chords": [
    { "chord": "F#maj7", "start": 21.03, "end": 24.09, "start_beat": 0, "end_beat": 5, "confidence": 0.73 },
    { "chord": "F#m7",   "start": 24.09, "end": 24.79, "start_beat": 5, "end_beat": 6, "confidence": 0.83 },
    { "chord": "Bm",     "start": 24.79, "end": 25.55, "start_beat": 6, "end_beat": 7, "confidence": 0.70 },
    …
  ],
  "tempo_map": [ { "bpm": 90.35, "time": 21.03 }, { "bpm": 85.91, "time": 53.03 }, { "bpm": 90.65, "time": 64.15 }, … ],
  "downbeats": [ 22.19, 24.79, 27.52, 30.20, … ],
  "sections": [ { "name": "Section A", "position_beats": 0 }, { "name": "Section A", "position_beats": 33.65 }, … ],
  "dynamics": { "fade_in_sec": 21.03, "fade_out_start": 219.82 },
  "truncated": [ { "path": "chords", "kept": 105, "total": 421 } ],
  "next": "The full result is kept: GET https://api.doseedo.com/api/jobs/ 用你的钥匙。”}

有三点值得注意。 置信度数据是真实的 — 主音为 0.77,每个和弦为 0.6 至 0.87 — 经纪人应将 0.6 的和弦视为草稿。 节奏图漂移 (全程速度在 86 到 102 bpm 之间)因为独奏钢琴演奏自由节奏没有固定的节奏型,所以根据这段录音编写的乐谱应该使用节奏图,而不是单拍子。 bpm而且,这首曲子还有一段很长的无声引子: fade_in_sec: 21 这就是为什么第一个和弦从第 21 秒开始的原因。

在同一茎上生长, doseedo_detect_chords ——节拍跟踪图表——听到开头是 Ebm7 在 166.7 bpm(双倍速,和声源自其关系小调)的情况下,使用不同的网格。这种差异是真实信息,并非错误:密集或自由节奏的录音是两种工具都难以处理的情况,而配方本身的说明也指出,为了获得可靠的图表,应在混音中分离出的和声干音或干净的录音中检测和弦。此次捕获中对分析服务的首次调用也在服务空闲 45 秒后超时;错误指示代理等待 30 秒后重试一次,重试在几秒钟内得到响应。

应该问什么?

> What key and tempo is ./ref.wav in, and where do the
  sections change?

> Transcribe the sax solo in ./solo.wav — tenor, monophonic —
  and show me the notes in beats at the song's tempo.

> Separate ./mix.wav, transcribe the bass stem, and put the
  notes on the Bass track of my "Bridge Demo" session.

> Here's the horn section stem: two trumpets, a trombone and
  a tenor. Give me each chair's part.

> Check the harmony of this progression I wrote before you
  render it.

第三个提示正是 MCP 上设置此功能的意义所在:笔记并不会止步于文件。代理会将它们写入会话轨道。 set_midi_notes (由 DAW 的乐器演奏的精确音符),或将其渲染为音频。 doseedo_render_midi 在模拟乐器上,或者将它们交给会话构建。MIDI 保持不变—— MIDI绝不会在代理背后修改或纠正音符。

音轨,而不是.mid文件——以及原因

doseedo_transcribe 返回的音符格式为结构化的JSON而非标准MIDI文件,因为代理程序需要处理这种格式的数据:它可以按置信度进行过滤,并量化到网格中。 doseedo_beat_grid 返回结果、将和弦拆分为多个声部,或检查结果是否与预期一致。 doseedo_analyze_midi 在任何操作提交之前。如果目标是生成一个文件,项目工具会写入该文件: doseedo_separate_stems 和 include_midi 和 doseedo_audio_to_session 将每个音轨的MIDI导入到Logic或Ableton原生项目中,然后…… 网络工具 下载 .mid 直接地。 音频转乐谱 是同一管道的终点。

分析是免费的,并且是同步的;转录费用很低(配方中说最多两个积分,如果是 CPU 型号,则不收取任何费用); doseedo_quote 首先,所有价格均由客户自行决定。通话记录可由每位客户撤销。 设置 → API 密钥.

从你的经纪人那里转录一份

连接服务器,将其指向录音,然后询问它使用的是哪个密钥——这个密钥是空闲的。

Doseedo MCP 服务器 →

常问问题

是否有用于音频到MIDI转录的 MCP 服务器?

是的。Doseedo Doseedo服务器除了提供doseedo _analyze_song、 doseedo _detect_chords、 doseedo _beat_grid 和doseedo _analyze_midi 之外,还提供了doseedo _transcribe(将音频转换为音符,并提供乐器、音域和复音提示,包括按座位划分的管乐部分)等函数。它适用于 Claude、ChatGPT、Cursor、Gemini CLI、Codex 以及任何 MCP 客户端。

转录结果是什么?

音符以JSON提供——音高、起始点和结束点(以秒为单位,如果指定了速度,则以节拍为单位)、力度和置信度——或者,使用 `want:"f0"`,获取连续的音高轮廓。要获取.mid文件,请使用网页工具,或者让分离功能或会话构建将MIDI写入项目。

它能检测出歌曲的调、节奏和和弦吗?

是的doseedo _analyze_song 函数会在一次同步调用中返回歌曲的调号、每分钟节拍数(BPM)、节拍、重拍、段落和和弦;detect_chords 和 beat_grid 函数则会单独返回图表和网格。这些函数都不需要消耗积分。

经纪人可以将转录的笔记导入我的 DAW 吗?

是的。它可以通过 `set_midi_notes` 将它们写入会话轨道,通过 `render_midi` 将它们渲染成音频并应用到建模乐器上,或者让 `audio_to_session` 使用逐音轨MIDI构建整个项目。在 Dø Desktop 运行的情况下,写入Logic会话的音符会出现在打开的项目中。

它能处理复音和分段吗?

“复调”中的“poly”指和弦;“section”指按乐器位置(例如“trumpet,trumpet,trombone,tenor_sax”)或音区代码记录管乐部分;“solo”指单声部旋律。

Doseedo MCP 服务器 · 一个 URL,每个客户

通过 DAW
通过人工智能客户端
按能力

有关的