Azure MCP サーバー
Azureサービスと連携するためのモデルコンテキストプロトコルサーバーの実装です。現在、Azure Blob StorageとAzure Cosmos DB (NoSQL API)をサポートしています。このサーバーを介して実行されるすべての操作は自動的にログに記録され、 audit://azure-operationsリソースエンドポイントからアクセスできます。
Claudeデスクトップアプリでローカルで実行する
Smithery経由でインストール
Smithery経由で Claude Desktop 用の Azure MCP Server を自動的にインストールするには:
手動インストール
**リポジトリのクローンを作成する:**このリポジトリをローカル マシンにクローンします。
Azure 資格情報の設定: Azure 資格情報を設定します。このサーバーには、Blob Storage、Cosmos DB、App Configuration への適切な権限を持つ Azure アカウントが必要です。DefaultAzureCredential
DefaultAzureCredential使用すると、複数の認証方法を順番に試行します。**環境変数:**次の環境変数を設定します。
AZURE_STORAGE_ACCOUNT_URL: Azure ストレージ アカウントの URL (例:https://<your_account_name>.blob.core.windows.net)。AZURE_COSMOSDB_ENDPOINT: Azure Cosmos DB アカウントのエンドポイント URL。AZURE_COSMOSDB_KEY: Azure Cosmos DB アカウントの主キーまたはセカンダリキー。重要: このキーはパスワードのように扱い、安全に保管してください。AZURE_APP_CONFIGURATION_ENDPOINT: Azure App Configuration インスタンスの URL。
**Azure CLI:**あるいは、Azure CLI を使用して認証することもできます。必要な権限を持つアカウントでログインしていることを確認してください。このサーバーは
DefaultAzureCredential使用しているため、環境変数が指定されていない場合は、Azure CLI の資格情報で自動的に認証されます。ログインするには、az login使用してください。
Claude Desktop を構成する:
claude_desktop_config.jsonファイルに次の構成を追加します。macOS:
~/Library/Application\ Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%/Claude/claude_desktop_config.json
"mcpServers": { "mcp-server-azure": { "command": "uv", "args": [ "--directory", "/path/to/repo/azure-mcp-server", "run", "azure-mcp-server" ] } }/path/to/repo/azure-mcp-serverクローンされたリポジトリへの実際のパスに置き換えます。Claude デスクトップをインストールして起動します。Claudeデスクトップ アプリをインストールして開きます。
セットアップのテスト: Claude に Azure ツールを使用して読み取りまたは書き込み操作(例:Blob Storage コンテナーの作成、Cosmos DB へのアイテムの追加)を実行してもらいます。問題が発生した場合は、こちらのMCP デバッグドキュメントを参照してください。
Related MCP server: MCP Server for Apache OpenDAL™
利用可能なツール
Azure Blob ストレージ操作
**blob_container_create:**新しいBlob Storageコンテナを作成します。container_name
container_name必要です。**blob_container_list:**構成されたアカウント内のすべての Blob Storage コンテナーを一覧表示します。
blob_container_delete: Blob Storage コンテナーを削除します。container_name
container_name必要です。blob_upload: BLOB(ファイル)をBlob Storageコンテナにアップロードします。container_name、
blob_name、container_name``file_content(Base64エンコード)が必要です。blob_delete: Blob Storage コンテナーから BLOB を削除します。container_name と
blob_name``container_name必要です。blob_list: Blob Storage コンテナー内の BLOB を一覧表示します。container_name
container_name必要です。blob_read: Blob StorageからBLOBの内容を読み取ります。container_nameと
blob_name``container_name必要です。内容をテキストとして返します。
Azure Cosmos DB (NoSQL API) 操作
コンテナ操作
**cosmosdb_container_create:**データベース内に新しい Cosmos DB コンテナを作成します。container_name と
partition_keyが必要です。database_namedatabase_nameオプションで、デフォルトはdefaultdbです。partition_keypartition_keyパーティションキーを定義する JSON オブジェクトである必要container_nameあります(例:{"paths": ["/myPartitionKey"], "kind": "Hash"})。cosmosdb_container_describe: Cosmos DB コンテナの詳細を取得します。container_name
container_name必要です。database_namedatabase_nameオプションで、デフォルトはdefaultdbです。database_name**:**データベース内のすべてのCosmos DBコンテナを一覧表示します。database_nameはオプションで、デフォルトはdefaultdbです。cosmosdb_container_delete: Cosmos DB コンテナを削除します。container_name
container_name必要です。database_namedatabase_nameオプションで、デフォルトはdefaultdbです。
アイテム操作
cosmosdb_item_create: Cosmos DB コンテナ内に新しいアイテムを作成します。container_name
container_name``item(アイテムを表す JSON オブジェクト)が必要です。database_namedatabase_nameオプションで、デフォルトはdefaultdbです。itemにパーティションキーフィールドと値が含まれていることを確認してください。cosmosdb_item_read: Cosmos DB コンテナからアイテムを読み取ります。container_name、
item_id、partition_keyが必要です。database_namedatabase_nameオプションで、デフォルトはdefaultdbです。partition_keypartition_key``container_name読み取るアイテムのパーティションキー値と一致する必要があります。cosmosdb_item_replace: Cosmos DB コンテナー内の既存のアイテムを置き換えます。container_name、
item_id、partition_key、およびitem(更新されたアイテム全体を表す JSON オブジェクト)が必要です。database_namedatabase_name省略可能で、デフォルトはdefaultdbです。partition_keypartition_key``container_name置き換え対象のアイテムのパーティションキー値と一致する必要があります。cosmosdb_item_delete: Cosmos DB コンテナからアイテムを削除します。container_name、
item_id、partition_keyが必要です。database_namedatabase_nameオプションで、デフォルトはdefaultdbです。partition_keypartition_key``container_name削除するアイテムのパーティションキー値と一致する必要があります。cosmosdb_item_query: SQLクエリを使用して、Cosmos DBコンテナ内のアイテムをクエリします。container_nameと
queryが必要です。database_namedatabase_nameオプションで、デフォルトはdefaultdbです。オプションで、パラメーター化クエリ用のparameters配列を指定container_nameます。
Azure アプリ構成操作
app_configuration_kv_read: Azure App Configuration から
keyと値を読み取ります。key パラメーターはオプションで、キーパターンによるフィルタリングが可能です(ワイルドカードをサポート、例: 'app1/label')。app_configuration_kv_write: Azure App Configuration にキーと値の書き込みまたは更新を行います。key と
valueパラメータが必要です。省略可能なパラメータには、key/value にラベルを適用するためのlabelと、コンテンツタイプ(例: 'application/json')を指定するためのcontent_typeがあります。app_configuration_kv_delete: Azure App Configurationからキーと値を削除します。key
keyが必要です。labellabelはオプションで、削除するキーのラベル付きバージョンを指定します。
Cosmos DB に関する重要な注意事項:
パーティションキー: Cosmos DB では、効率的なデータの保存と取得のためにパーティションキーが必要です。コンテナーを作成する際には、パーティションキーを定義する必要があります。アイテムの読み取り、置換、または削除を行う際には、アクセスするアイテムの正しいパーティションキー値を指定する必要があります。パーティションキーはデータ内のプロパティです。
大文字と小文字の区別: Cosmos DB リソース名(データベース、コンテナー、アイテム ID)とパーティション キーの値は大文字と小文字が区別されます。ツール呼び出しでは、大文字と小文字を正しく区別してください。
デフォルトデータベース:
database_nameが指定されていない場合、サーバーはデフォルトでSampleDBというデータベースを使用します。このデータベースが存在することを確認するか、ツール呼び出しの引数で必要なデータベース名を明示的に指定してください。
このREADMEには、ClaudeデスクトップアプリケーションでAzure MCPサーバーをセットアップして使用するために必要な情報が記載されています。Azureの資格情報は安全に管理してください。プロトコルの詳細については、MCPのドキュメントを参照してください。