OPNsense MCP Server
OPNsense MCP Server
Claude Code、Cursor、その他のMCP互換ツールなどのAIアシスタントを通じてOPNsenseファイアウォールを管理するための、安全なModel Context Protocol(MCP)サーバー。
システム、ファイアウォール、ネットワーク、DNS、DHCP、VPN、HAProxy、サービス、診断、セキュリティの10ドメインにわたる81のツール。
要件
Python 3.11以上
OPNsense 24.7以降 — MCPサーバーはOPNsense 24.7で導入されたMVCベースのAPIエンドポイントに依存しています。それより古いバージョンは互換性のない異なるAPI構造を使用しています。サーバーは初回接続時にOPNsenseのバージョンを自動検出し、正しいエンドポイント命名(25.7以前はcamelCase、25.7以降はsnake_case)を選択します。OPNsense 26.xは、変更されたファームウェアステータス応答形式を含め、完全にサポートされています。
Related MCP server: OPNsense MCP Server
セキュリティモデル
このMCPサーバーは、セキュリティを最優先事項として設計されています:
デフォルトで読み取り専用 — 書き込み操作には
OPNSENSE_ALLOW_WRITES=trueによる明示的なオプトインが必要セーブポイント/ロールバック(OPNsense < 26.7のみ) — OPNsenseがまだセーブポイントAPIを提供している場合、ファイアウォールの変更には組み込みの60秒自動復元が使用されます。変更は明示的に確認する必要があり、確認しない場合は自動的にロールバックされます。OPNsense 26.7でそのAPIは上流で削除されました — サーバーは実行時に欠落したエンドポイントを検出し、自動ロールバックなしでファイアウォールの変更を即座に適用します
エンドポイントブロックリスト — 危険なエンドポイント(
halt、reboot、poweroff、firmware update/upgrade)はAPIクライアントレベルでハードブロックされ、呼び出すことはできませんAPIのみ — SSHアクセスなし、コマンド実行なし、設定ファイルの直接操作なし
ローカル転送 — STDIOのみ、ネットワーク公開されたHTTP/SSEエンドポイントなし
認証情報の露出なし — APIキーはツール出力、ログ、エラーメッセージに含まれることはありません
入力検証 — ホスト名パラメータはシェルメタキャラクタインジェクションに対して検証されます
機密データの除去 — 設定バックアップはデフォルトでパスワードとキーを除去します
クイックスタート
1. OPNsense APIキーを作成する
OPNsenseのWebインターフェースにログインします
System > Access > Usersに移動します
既存のユーザーを編集するか、専用のAPIユーザーを作成します:
本番環境では、必要な権限のみを持つ専用ユーザー(例:
mcp-api)を作成します読み取り専用アクセスの場合は、読み取り専用APIアクセスを持つグループにユーザーを割り当てます
API keysセクションまでスクロールし、**+**ボタンをクリックします
キー/シークレットのペアが生成され、ファイル(
apikey.txt)がダウンロードされますファイルには2行が含まれています —
key=your-api-key-hereとsecret=your-api-secret-hereこれらの認証情報を安全に保管してください — シークレットはOPNsenseから再度取得することはできません
ヒント: 読み取り専用のセットアップ(開始時にお勧め)では、権限を変更する必要はありません — デフォルトのAPIアクセスで全ての読み取り専用ツールに十分です。
2. インストール
# Using pip
pip install opnsense-mcp-server
# Using uv (recommended for isolated environments)
uv pip install opnsense-mcp-server
# Using Docker
docker pull uhlenheide/opnsense-mcp-server
# From source
git clone https://github.com/lucamarien/opnsense-mcp-server
cd opnsense-mcp-server
pip install -e .Dockerイメージ: 公式イメージは
uhlenheide/opnsense-mcp-serverで、このリポジトリから.github/workflows/publish-docker.ymlによってv*タグごとに公開されています。lucamarien/opnsense-mcp-serverイメージは存在しません — 以前のREADMEバージョンで誤って記載されていました。
3. AIアシスタントを設定する
Claude Code
プロジェクトの.mcp.jsonに追加します:
{
"mcpServers": {
"opnsense": {
"command": "opnsense-mcp",
"env": {
"OPNSENSE_URL": "https://192.168.1.1/api",
"OPNSENSE_API_KEY": "your-api-key-here",
"OPNSENSE_API_SECRET": "your-api-secret-here",
"OPNSENSE_VERIFY_SSL": "false",
"OPNSENSE_ALLOW_WRITES": "false"
}
}
}
}代替:
opnsense-mcpCLIがPATHにない場合は、"command": "python", "args": ["-m", "opnsense_mcp"]を使用します。
または、~/.claude/claude_code_config.jsonにグローバルに追加します。
Claude Code(Docker)
{
"mcpServers": {
"opnsense": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "OPNSENSE_URL=https://192.168.1.1/api",
"-e", "OPNSENSE_API_KEY=your-api-key-here",
"-e", "OPNSENSE_API_SECRET=your-api-secret-here",
"-e", "OPNSENSE_VERIFY_SSL=false",
"-e", "OPNSENSE_ALLOW_WRITES=false",
"uhlenheide/opnsense-mcp-server"
]
}
}
}Cursor
CursorのMCP設定(Settings > MCP)に追加します:
{
"mcpServers": {
"opnsense": {
"command": "opnsense-mcp",
"env": {
"OPNSENSE_URL": "https://192.168.1.1/api",
"OPNSENSE_API_KEY": "your-api-key-here",
"OPNSENSE_API_SECRET": "your-api-secret-here",
"OPNSENSE_VERIFY_SSL": "false"
}
}
}
}設定
環境変数 | デフォルト | 説明 |
| (必須) | OPNsense APIベースURL( |
| (必須) | OPNsenseユーザー設定からのAPIキー |
| (必須) | OPNsenseユーザー設定からのAPIシークレット |
|
| SSL証明書を検証(自己署名証明書の場合は |
|
| 書き込み操作を有効化(ファイアウォールルール、サービス制御) |
カスタムポート: OPNsenseのWeb GUIが標準以外のポート(例:10443)で実行されている場合は、URLに含めます:https://192.168.1.1:10443/api
利用可能なツール(81)
システム(7ツール)
ツール | 説明 |
| ファームウェアバージョン、製品名、アーキテクチャを含むシステム情報 |
| すべてのサービスとその実行状態を一覧表示します。パラメータ: |
| ゲートウェイの可用性、遅延、dpingerヘルスチェック |
|
|
| 完全な設定をスキャンし、セクションに解析し、ランタイムインベントリ(ファームウェア、プラグイン、DHCP、DNS、インターフェース、サービス)を収集します。結果はセッションごとにキャッシュされます。パラメータ: |
| 特定の設定セクションを構造化JSONとして取得します。パラメータ: |
| MCPサーバーバージョン、書き込みモードの状態、検出されたOPNsenseバージョン、APIスタイル、ファイアウォールの書き込みがまだセーブポイント/ロールバック保護を受けているかどうか |
ネットワーク(5ツール)
ツール | 説明 |
| インターフェースごとのトラフィック統計(送受信バイト数、パケット、エラー) |
| IPからMACアドレスへのマッピングを示すARPテーブル |
| IPv6からMACアドレスへのマッピングを示すNDP(Neighbor Discovery Protocol)テーブル |
| 全インターフェースのIPv6設定とアドレス状態(メソッド、ライブアドレス、サマリー) |
| 設定された静的ルート。パラメータ: |
ファイアウォール(21ツール)
ツール | 説明 | 書き込み |
| MVCファイアウォールフィルタールールを一覧表示します。パラメータ: | なし |
| エイリアス定義(IPリスト、ポートグループ、GeoIP、URL)を一覧表示します。パラメータ: | なし |
| NATポートフォワーディング(DNAT)ルールを一覧表示します。パラメータ: | なし |
| ファイアウォールルールカテゴリとそのUUIDを一覧表示します。パラメータ: | なし |
| クライアント側フィルタリング付きの最近のファイアウォールログエントリ。パラメータ: | なし |
| 保留中の変更を確認し、60秒の自動ロールバックをキャンセルします(OPNsense < 26.7。26.7+では | あり |
| セーブポイント付きでルールの有効/無効状態を切り替えます(OPNsense < 26.7)。パラメータ: | あり |
| セーブポイント付きで新しいフィルタールールを作成します(OPNsense < 26.7)。パラメータ: | あり |
| UUIDでフィルタールールをセーブポイント付きで削除します(OPNsense < 26.7)。パラメータ: | あり |
| 新しいエイリアスを作成します。パラメータ: | あり |
| セーブポイント付きでNATポートフォワーディングルールを作成します(OPNsense < 26.7)。パラメータ: | あり |
| 新しいファイアウォールルールカテゴリを作成します。パラメータ: | あり |
| UUIDでファイアウォールルールカテゴリをセーブポイント付きで削除します(OPNsense < 26.7)。パラメータ: | あり |
| セーブポイント付きでファイアウォールルールにカテゴリを割り当てます(OPNsense < 26.7)。パラメータ: | あり |
| RFC 4890に基づいてIPv6運用に必要な必須のICMPv6ルール(NDP、RA、ping6)を作成します。パラメータ: | あり |
| 既存のエイリアス(名前、内容、タイプ、説明)を更新します。読み取り・変更・書き込み。パラメータ: | あり |
| UUIDでエイリアスを削除します。まずルール参照を確認します。パラメータ: | あり |
| エイリアスの有効/無効状態を切り替えます。パラメータ: | あり |
| セーブポイント付きでフィルタールールフィールドを更新します(OPNsense < 26.7)。パラメータ: | あり |
| セーブポイント付きでNATポートフォワーディングルールを更新します(OPNsense < 26.7)。パラメータ: | あり |
| UUIDでNATポートフォワーディングルールをセーブポイント付きで削除します(OPNsense < 26.7)。パラメータ: | あり |
注: セーブポイント保護はOPNsense < 26.7でのみ存在します。26.7+では、これらのツールは変更を即時かつ恒久的に適用します — 書き込み操作とセーブポイントを参照してください。
DNS(13ツール)
ツール | 説明 | 書き込み |
| Unboundホストオーバーライド(ローカルDNSレコード)。パラメータ: | なし |
| DNSフォワードゾーン(ドメイン固有のサーバー)。パラメータ: | なし |
| Unboundリゾルバ統計(クエリ、キャッシュヒット、稼働時間) | なし |
| 保留中のDNSリゾルバ設定変更を適用します | あり |
| Unbound DNSホストオーバーライド(A/AAAAレコード)を追加して即時適用します。パラメータ: | あり |
| プロバイダーとステータスを含むDNSBLブロックリスト設定を一覧表示します。パラメータ: | なし |
| UUIDで完全なDNSBL設定を取得します(プロバイダー、許可リスト、設定)。パラメータ: | なし |
| DNSBL設定を更新します(読み取り・変更・書き込み)。パラメータ: | あり |
| 上書きせずにDNSBL許可リストにドメインを追加します。パラメータ: | あり |
| DNSBL許可リストからドメインを削除します。パラメータ: | あり |
| DNSBLブロックリストファイルを再読み込みし、Unboundを再起動します(設定変更なし、リカバリツール) | あり |
| Unbound DNSホストオーバーライドを更新して即時適用します。パラメータ: | あり |
| Unbound DNSホストオーバーライドを削除して即時適用します。パラメータ: | あり |
DHCP(8ツール)
ツール | 説明 | 書き込み |
| ISC DHCPサーバーからのアクティブなDHCPv4リース | いいえ |
| Kea DHCPサーバーからのDHCPv4リース。パラメータ: | いいえ |
| dnsmasq DNS/DHCPサーバーからのDHCPv4およびDHCPv6リース。パラメータ: | いいえ |
| 設定済みのDHCPアドレス範囲(RA設定付きのDHCPv4とDHCPv6の両方)。パラメータ: | いいえ |
| 新しいDHCP範囲(Router Advertisement設定付きのIPv4またはIPv6)を作成。パラメータ: | はい |
| 保留中のdnsmasq DNS/DHCP設定変更を適用 | はい |
| DHCP範囲(アドレス、リース時間、RA設定)を更新して適用。パラメータ: | はい |
| UUIDでDHCP範囲を削除して適用。パラメータ: | はい |
VPN(3ツール)
ツール | 説明 |
| WireGuardトンネルとピアのステータス(os-wireguardプラグインが必要) |
| IPsec VPNトンネルのステータス — IKE(フェーズ1)およびESP/AH(フェーズ2)セッション |
| OpenVPN接続ステータス — インスタンス、セッション、ルート |
HAProxy(8ツール)
HAProxyロードバランサーの完全な設定管理(os-haproxyプラグインが必要)。
ツール | 説明 | 書き込み |
| HAProxyサービスのステータスとバックエンドの健全性 | いいえ |
| タイプ別にHAProxyリソースを検索。パラメータ: | いいえ |
| 特定のリソースの詳細設定を取得。パラメータ: | いいえ |
| 適用前にHAProxy設定の構文を検証 | いいえ |
| 新しいHAProxyリソースを作成。パラメータ: | はい |
| 既存のHAProxyリソースを更新(部分更新)。パラメータ: | はい |
| UUIDでHAProxyリソースを削除。パラメータ: | はい |
| 保留中のHAProxy設定変更を適用 | はい |
注: HAProxyの変更はセーブポイント保護を使用しません — 再設定時に即座に適用されます。
opn_reconfigure_haproxyの前に必ずopn_haproxy_configtestを呼び出してください。
サービス(11ツール)
ツール | 説明 | 書き込み |
| ACME/Let's Encrypt証明書とそのステータス。パラメータ: | いいえ |
| スケジュールされたcronジョブ。パラメータ: | いいえ |
| CrowdSecセキュリティエンジンのステータスとアクティブな決定 | いいえ |
| CrowdSecセキュリティアラート(検出された脅威)。パラメータ: | いいえ |
| ダイナミックDNSアカウントとその更新ステータス。パラメータ: | いいえ |
| 新しいダイナミックDNSアカウントを作成。パラメータ: | はい |
| 保留中のダイナミックDNS設定変更を適用 | はい |
| ダイナミックDNSアカウントを更新(パスワードは書き込み専用)。パラメータ: | はい |
| UUIDでダイナミックDNSアカウントを削除。パラメータ: | はい |
| mDNSリピーターのステータスと設定(有効、インターフェース、ブロックリスト)。 | いいえ |
| クロスVLANデバイス検出(HomeKit、Chromecast、AirPlay)用にmDNSリピーターを設定。パラメータ: | はい |
診断(4ツール)
ツール | 説明 |
| ファイアウォールからホストにpingを送信して接続をテスト。パラメータ: |
| 宛先までのネットワークパスをトレース。パラメータ: |
| ファイアウォールからのDNSルックアップ。パラメータ: |
| アクティブなPFステートテーブルを照会。パラメータ: |
セキュリティ(1ツール)
ツール | 説明 |
| 包括的な11分野のセキュリティ監査: ファームウェア、ファイアウォールルール(MVC + レガシー、ポートグループ、安全でないプロトコル)、NATフォワーディング、DNSセキュリティ(DNSSEC、DoT)、システム強化(SSH、HTTPS、syslog)、サービス、証明書(ACME + システム + CA)、VPN(WireGuard設定、IPsec、OpenVPN)、HAProxy(ヘッダー、ヘルスチェック)、ゲートウェイ。検出結果はPCI DSS v4.0、BSI IT-Grundschutz、NIST 800-41、CISコンプライアンス参照でタグ付けされます。 |
書き込み操作とセーブポイント
書き込み操作にはOPNSENSE_ALLOW_WRITES=trueが必要です。OPNsense < 26.7では、ファイアウォールの変更はさらにOPNsenseのセーブポイントメカニズムを経由します:
ファイアウォール変更の前に、セーブポイントが自動的に作成されます
変更が適用されます(ルールのトグル、追加、削除)
60秒のカウントダウンが開始されます — 確認されない場合、OPNsenseは自動的に変更を元に戻します
opn_confirm_changesを返されたrevisionとともに使用して、変更を永続化します
これらのバージョンでは、AIアシスタントが悪いファイアウォール変更を行ってロックアウトされた場合、変更は60秒以内に自動的に元に戻ります。
OPNsense 26.7ではセーブポイント/ロールバックAPIが上流で削除されたため、26.7+では自動元に戻しはありません。 サーバーはバージョンカットオフをハードコードしていません: 最初のファイアウォール書き込み時にセーブポイントエンドポイントをプローブし、OPNsenseがエンドポイントが存在しないと応答した場合、セッションの残りは直接適用にダウングレードします。opn_mcp_infoを確認してください — そのsavepoint_supportフィールドは、まだ書き込みがプローブされていない場合はtrue、false、またはnullを報告します。書き込みツールは空のrevisionを返し、opn_confirm_changesはstatus: "not_applicable"で応答し、すべてのファイアウォール変更は即時かつ永続的です。
警告: OPNsense 26.7+では、書き込みを有効にする前に設定バックアップ(
opn_download_config、またはSystem > Configuration > Backups)を取得し、ボックスへの帯域外アクセスを維持してください — ロックアウトするルールは自動的に元に戻りません。
注:
opn_reconfigure_unbound、opn_reconfigure_haproxy、opn_reconfigure_ddclient、opn_reconfigure_dnsmasq、opn_configure_mdns_repeaterは書き込みを必要としますが、セーブポイントは使用しません — サービス設定の変更を適用し、自動的に元に戻すことはできません。
IPv6サポート
MCP経由で完全自動化
IPv6ファイアウォールルール —
ip_protocol="inet6"を使用したルールの作成(OPNsense < 26.7ではセーブポイント保護あり)HAProxy IPv6バインディング —
[::]:443または[2001:db8::1]:443のバインドアドレスを持つフロントエンドHAProxy IPv6バックエンド — IPv6アドレスを持つサーバー、バックエンドでの
resolvePrefer: ipv6IPv6対応ダイナミックDNS — IPv6対応のcheckipメソッドを使用するDDNSアカウント
DHCPv6レンジ(dnsmasq) — ルーターアドバタイズメント設定付きのIPv6 DHCPレンジ
DNS AAAAレコード — IPv6アドレスを持つUnboundホストオーバーライド
IPv6診断 —
ip_version="6"を使用したトレースルート、ホスト名によるping
手動でのGUI設定が必要
これらの設定はOPNsenseのMVC APIをサポートしておらず、Web GUIで設定する必要があります:
WAN IPv6設定 — DHCPv6プレフィックス委譲を使用したPPPoE、静的IPv6、SLAAC
LAN IPv6アドレス設定 — トラックインターフェースモード、静的/64割り当て、プレフィックスID
インターフェース割り当て — WAN/LAN/OPTロールへの物理ポートの割り当て
6to4/6rdトンネル — 移行トンネルメカニズム
既知の制限事項
ISC DHCP / Kea DHCPv6:未実装。DHCPv6レンジとルーターアドバタイズメントにはdnsmasq(現代のデフォルト)のみがサポートされています。ISC DHCPは非推奨です。Kea DHCPv6のリース表示はAPIでは制限されています。
radvd:独立したツールセットとしては未実装。Dnsmasqはレンジ設定を介してルーターアドバタイズメントをネイティブに処理します。インターフェースごとに実行するRAデーモンは1つのみにしてください。
デュアルスタックファイアウォールルール:
inet46(デュアルスタック)はMVC APIルール(opn_add_firewall_rule)では正しく機能します。ただし、レガシーXMLフィルタールール(GUI)でのinet46はPF出力を生成せずに静かに失敗します — これはレガシールールのみに影響する既知のOPNsenseバグです。レガシーGUIルール:従来のOPNsense GUIで作成されたファイアウォールルールは、MVC APIからはアクセスできません。読み取り専用アクセスには
opn_get_config_section("filter")を使用してください。
推奨されるIPv6移行ワークフロー
手動(GUI): WAN IPv6を設定(ISPからのDHCPv6-PDまたは静的)
手動(GUI): LANインターフェースを設定(プレフィックス委譲のためのトラックインターフェースモード)
MCP: RAフラグ付きの
opn_add_dnsmasq_rangeを使用してルーターアドバタイズメントを設定MCP: IPv6ファイアウォールルールを作成(NDP/RA/PMTUDのためにICMPv6を許可する必要があります)
MCP:
opn_add_dns_overrideを使用してIPv6 DNSレコードを追加MCP: IPv6 checkipメソッドを使用してダイナミックDNSを設定
MCP: HAProxyフロントエンドにIPv6バインドアドレスを追加
MCP:
opn_ping、opn_traceroute(ip_version="6")、opn_gateway_statusで検証
バージョン互換性
OPNsenseバージョン | ステータス |
24.7 (Thriving Tiger) | サポート対象 |
25.1 (Ultimate Unicorn) | サポート対象 |
25.7 (Visionary Viper) | サポート対象(snake_case APIを自動検出) |
26.1+ | サポート対象 |
サーバーは最初の接続時にOPNsenseのバージョンを自動検出し、正しいAPIエンドポイント命名規則(25.7以前はcamelCase、25.7以降はsnake_case)を選択します。
ファイアウォールルールに関する注意: opn_list_firewall_rules はMVC/自動化APIで管理されるルールを表示します。OPNsense GUIで設定されたルールは、このAPIからはアクセスできないレガシーフォーマットを使用します。これは既知のOPNsenseの制限事項です。
トラブルシューティング
接続の問題
「接続が拒否されました」またはタイムアウトエラー
OPNSENSE_URLが/apiで終わっていることを確認(例:https://192.168.1.1/api)非標準ポートを使用する場合は、ポートを含めてください:
https://192.168.1.1:10443/apiOPNsense Web GUIがMCPサーバーを実行しているマシンからアクセス可能であることを確認
SSL証明書エラー
自己署名証明書(OPNsenseのデフォルト設定)の場合、
OPNSENSE_VERIFY_SSL=falseを設定本番環境では、OPNsenseに適切な証明書をインストールし、
OPNSENSE_VERIFY_SSL=trueを維持
認証の問題
401 Unauthorized
OPNSENSE_API_KEYとOPNSENSE_API_SECRETが正しいことを確認APIキーは大文字小文字を区別します — ダウンロードした
apikey.txtから正確にコピーしてくださいAPIユーザーがOPNsenseで無効化されていないことを確認
APIユーザーが実行しようとしている操作に十分な権限を持っていることを確認
403 Forbidden
APIユーザーが要求されたエンドポイントに対する権限を持っていない可能性があります
書き込み操作の場合、
OPNSENSE_ALLOW_WRITES=trueが設定されていることを確認
ツール固有の問題
opn_list_firewall_rules が空の結果を返す
このツールはMVC/自動化ルールのみを表示し、レガシーGUIルールは表示しません
自動化APIまたは
opn_add_firewall_ruleを使用してルールを作成すると表示されます
opn_ping がタイムアウトする
ファイアウォールがターゲットホストへのルートを持っていない可能性があります
opn_gateway_statusでゲートウェイのステータスを確認デフォルトのタイムアウトは30秒(30ポーリングサイクル)です
opn_download_config に [REDACTED] の値が表示される
これはセキュリティ上のデフォルト動作です。パスワードとキーを含めるには
include_sensitive=trueを渡してください(AI会話での使用には注意が必要)
書き込み操作が「writes not enabled」で失敗する
MCPサーバー設定で
OPNSENSE_ALLOW_WRITES=trueを設定これは安全のためデフォルトで意図的に無効化されています
セーブポイント確認が失敗する
revisionパラメータは、書き込み操作で返されたものと正確に一致する必要があります確認は60秒以内に行う必要があります。そうしないと変更は自動的に元に戻ります
OPNsense 26.7以降にはセーブポイントAPIがありません:書き込みツールは空の
revisionを返し、opn_confirm_changesはstatus: "not_applicable"を返します。これは期待される動作であり、失敗ではありません — 変更はすでに永続的に適用されています
診断コマンド
MCPサーバーをデバッグする必要がある場合:
# Test API connectivity directly
curl -k -u "your-key:your-secret" https://your-opnsense-ip/api/core/firmware/status
# Run the server directly
python -m opnsense_mcp
# Run tests to verify installation
pytest -v開発
# Clone and install dev dependencies
git clone https://github.com/lucamarien/opnsense-mcp-server
cd opnsense-mcp-server
pip install -e ".[dev]"
# Run all tests (no real OPNsense needed — all tests use mocked API)
pytest -v
# Full CI pipeline (lint, format, type check, security scan, tests)
make validate
# Individual checks
ruff check src/ tests/ # Lint (includes bandit security checks)
ruff format src/ tests/ # Format
mypy src/ --strict # Type checkingベストプラクティス
一般的なファイアウォール設定タスクのためのドメイン固有ガイド:
WhatsApp通話ファイアウォールルール — URLテーブルエイリアスとスコープ付きルールを使用して、デフォルト拒否ファイアウォールを介してWhatsAppの音声/ビデオ通話を許可
これらのガイドは、実際のMCPツール使用パターンを示し、各アプローチの背後にあるセキュリティ上の考慮事項を説明しています。
コントリビューション
詳細なガイドラインについては CONTRIBUTING.md を参照してください。重要なポイント:
すべてのテストはモックされたAPIレスポンスを使用する必要があります — 実際のOPNsenseに接続しないでください
重複するツールはありません — 各ツールには明確な目的が必要です
明確なdocstringを書いてください — それらはAIがツールを選択するための唯一のガイドです
構造化データ(dict)を返し、フォーマットされた文字列は返さないでください
提出前に
make validateを実行してください
ライセンス
MIT
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
- AlicenseNot gradedqualityFmaintenanceA modular MCP server that provides access to over 2,000 OPNsense firewall management methods through 88 specialized tools. It enables AI assistants to securely manage firewall rules, network interfaces, and system diagnostics using a type-safe TypeScript interface.37073MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI clients to manage OPNsense firewall, interfaces, DHCP, DNS, routes, and services via natural language through 42 MCP tools.MIT
- AlicenseAqualityCmaintenanceEnables interaction with OPNsense firewalls through MCP tools for managing firewall rules, interfaces, DHCP leases, and system monitoring.26MIT
- AlicenseNot gradedqualityAmaintenanceThis MCP server enables AI agents to inspect and modify an OPNsense firewall via natural language, using a compact set of generic tools and a resource registry to cover 96 CRUD operations.29AGPL 3.0
Related MCP Connectors
Security-first WordPress MCP server. 129 tools for Claude, ChatGPT, Gemini. Free on wp.org.
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
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/lucamarien/opnsense-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server