Denon AVR について
ローカルの telnet プロトコルで Denon AVR ホームシアターレシーバーを操作する MCP サーバーです。電源、音量、ミュート、入力切替、状態確認に対応し、環境変数または YAML で設定できます。
主な機能
- 01電源オンとスタンバイの操作
- 02音量の設定と調整
- 03ミュート操作
- 04入力ソースの選択
- 05レシーバー状態の取得
活用シーン
- 01MCP クライアントからレシーバーの音量を調整
- 02テレビ、ゲーム機、Blu-ray の入力を切替
- 03電源、ミュート、入力状態を確認
MCP 対応
MCP クライアントに Denon AVR の操作・状態確認ツールを公開します。Denon AVR Control の telnet プロトコルでレシーバーと通信します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
10掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| level | integer | はい | 音量レベル(0~98) |
詳細
Denon MCP サーバー
英語での概要。 ローカルの Telnet 制御プロトコル経由で Denon AVR ホームシアターレシーバーを操作する MCP サーバーです。電源、音量、ミュート、入力、ステータスを制御できます。DENON_HOST / DENON_PORT(DHCP で IP が変わったときにレシーバーを追跡する場合は、オプションで DENON_MAC)または config.yaml で設定します。単独で実行できます(PyPI 公開後は uvx denon-mcp)。
ローカルの Denon AVR Control(Telnet)プロトコル経由で Denon AVR ホームシアターを操作する MCP サーバーです。
デモ

docs/demo/record.sh を使って実機で録画しました。最小構成の MCP クライアント(docs/demo/mcp_demo.py)が、環境変数に DENON_HOST を設定して stdio でサーバーを起動し、ツールを一覧表示して get_status(読み取り専用)を呼び出します。
対応モデル
- Denon AVR-X1700H DAB
- Denon AVR Control プロトコルに対応するその他の AVR-X シリーズモデル
設定
設定の解決順序:環境変数、次に YAML ファイル(DENON_CONFIG、なければ ./config.yaml、次にサーバーの隣にある config.yaml、サーバーが Lyra のディレクトリツリーにインストールされている場合は Lyra 側の設定ファイル)。サーバーは Lyra がなくても単独で動作します。
DHCP 予約を利用しない場合は、mac(または DENON_MAC)も設定してください。IP アドレスに応答がなくなった場合、サーバーはローカルネットワークの近隣テーブルから MAC アドレスを使って Denon を見つけます(検索は最短でも 2 分間隔で実行されます)。見つかった新しい IP アドレスに切り替えます。
ワンラインインストール
uvx denon-mcp # après publication sur PyPI ; en attendant : uvx --from git+https://github.com/amineutron/denon-mcp denon-mcp
Claude Desktop / Claude Code の設定(mcpServers):
{ "denon": { "command": "uvx", "args": ["denon-mcp"], "env": { "DENON_HOST": "192.0.2.22" } } }
config.yaml に追加します:
denon:
host: "192.0.2.10" # IP du Denon (exemple)
port: 23 # Port telnet (default: 23)
以下の値は例です。お使いの機器の値に置き換えてください
(IP アドレスはレシーバーのネットワークメニューに表示されています。MAC アドレスは AA:BB:CC:DD:EE:FF 形式で、DHCP 予約や Wake-on-LAN に使用できます)。
利用可能なツール
| ツール | 役割 |
|---|---|
volume_set | Denon の音量を指定したレベル(0~98)に設定します。80 は基準の 0 dB です。 |
volume_up | Denon の音量を上げます。 |
volume_down | Denon の音量を下げます。 |
mute_on | Denon をミュートにします。 |
mute_off | Denon のミュートを解除します。 |
mute_toggle | Denon のミュートを切り替えます(オン/オフ)。 |
power_on | Denon AVR の電源を入れます。 |
power_off | Denon AVR の電源を切ります(スタンバイ)。 |
get_status | Denon のステータスを返します:音量、電源(オン/スタンバイ/不明)、ミュート状態、入力(BD、TV、GAME など)、接続状態。 |
set_input | Denon の入力ソースを切り替えます(BD、TV、GAME、SAT/CBL、DVD、MPLAY)。 |
入力ソース
BD:Blu-ray/BD プレーヤーTV:TV 入力GAME:ゲーム機SAT/CBL:衛星放送/ケーブルDVD:DVD プレーヤーMPLAY:メディアプレーヤー
対応エイリアス:bluray、blu-ray、cable、sat、media、mediaplayer
音量スケール
- 0~98:Denon のスケール(0 = -80 dB、80 = 基準の 0 dB、98 = +18 dB)
- 通常の視聴:30~50
- ホームシアター:50~70
- 推奨最大値:80(0 dB)
Denon AVR Control プロトコル
ポート 23 での Telnet コマンド:
MV44:音量 44MV?:現在の音量を問い合わせますMVUP/MVDOWN:音量を上げる/下げるPWON/PWSTANDBY:電源オン/オフMUON/MUOFF:ミュートオン/オフSIBD:Blu-ray 入力
HDMI ARC に関する注意
ホームシアターをテレビに HDMI ARC/eARC で接続している場合:
- テレビの音量は無効になります
- 音量はホームシアター側で制御します
tv.volume_*コマンドは動作しません- 代わりに
denon.volume_*を使用してください
手動テスト
# Test connexion
echo "MV?" | nc 192.0.2.10 23
# Régler volume à 44
echo "MV44" | nc 192.0.2.10 23
# Allumer
echo "PWON" | nc 192.0.2.10 23
インストール
denon-mcp # installé (pip, uvx) ; `denon-mcp --help` liste les réglages
python -m denon_mcp # équivalent, depuis tout environnement où le paquet est installé
python server.py # depuis un clone, sans installation (lanceur minimal, code dans denon_mcp/)
コードは denon_mcp パッケージ内にあり、モジュール名が競合することなく、ほかの MCP サーバーと並べてインストールできます。
MCP 設定を通じて、Lyra がサーバーを自動的に起動します。
Lyra エコシステムの一部
| リポジトリ | 役割 |
|---|---|
| lyra | 音声対応の DevOps アシスタント。デフォルトでローカル動作(AGPL-3.0) |
| fedora-agents | MCP:KVM 仮想マシンとバックアップ |
| mcp-tracking | MCP + API + 長時間タスクのダッシュボード |
| neutroncore | ホームラボ用 PWA ハブ |
| hue-mcp | Philips Hue MCP(ThomasRohde/hue-mcp のフォーク) |
| pylips-mcp | Philips TV MCP |
| denon-mcp | Denon アンプ MCP |
| catt-mcp | Chromecast および DLNA MCP |
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。