M

MCP Server Azure Function

該項目展示瞭如何使用Azure Functions創建MCP服務器,並通過GitHub Copilot Chat的代理模式進行交互。包含本地和遠程MCP服務器的配置方法,以及通過Terraform部署Azure Function的指南。
2分
8
安裝
複製以下命令到你的Client進行配置
注意:您的密鑰屬於敏感信息,請勿與任何人分享。

🚀 Azure Functions ⚡️❤️ MCP 服務器

本項目展示瞭如何利用 Azure Functions 創建 MCP(模型上下文協議)服務器,並將其與 GitHub Copilot Chat 的代理模式結合使用,為開發者提供便捷的開發體驗。

查看 YouTube 視頻

🚀 快速開始

本項目旨在利用 Azure Functions 創建 MCP 服務器,並與 GitHub Copilot Chat 的代理模式結合使用。以下是快速開始的步驟:

  1. 安裝用於創建 MCP 服務器的 NuGet 包。
  2. 運行項目。
  3. 測試 MCP 服務器。
  4. 配置 GitHub Copilot Chat。
  5. 若使用 Terraform 部署,需進行相應配置。

✨ 主要特性

  • 利用 Azure Functions:藉助 Azure Functions 的強大功能創建 MCP 服務器。
  • 與 GitHub Copilot Chat 集成:可與 GitHub Copilot Chat 的代理模式結合使用。
  • 支持多種測試和配置方式:提供多種測試命令和配置文件示例。

📦 安裝指南

為了使用 Azure Functions 創建 MCP 服務器,我們可以利用以下庫:

dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Mcp --version 1.0.0-preview.2

有關此 NuGet 包的詳細信息,請訪問:https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Mcp

💻 使用示例

基礎用法

要測試此示例代碼,您需要在本地運行項目:

func start

您可以使用 MCP 檢查工具:

npx @modelcontextprotocol/inspector http://localhost:7071/runtime/webhooks/mcp/sse

高級用法

您還可以使用 GitHub Copilot Chat 與此 MCP 服務器交互。為此,只需創建 .vscode/mcp.json 文件,或在 .vscode/settings.json 中包含以下部分:

{
    "inputs": [
        {
            "type": "promptString",
            "id": "mcp-azure-function-key",
            "description": "訪問 Azure 函數的密鑰",
            "password": true
        },
        {
            "type": "promptString",
            "id": "mcp-azure-function-name",
            "description": "訪問 Azure 函數的名稱"
        }
    ],
    "servers": {
        "local-mcp-azure-function": {
            "type": "sse",
            "url": "http://localhost:7071/runtime/webhooks/mcp/sse",
        },
        // "remote-mcp-azure-function": {
        //     "type": "sse",
        //     "url": "https://${input:mcp-azure-function-name}.azurewebsites.net/runtime/webhooks/mcp/sse",
        //     "headers": {
        //         "x-functions-key": "${input:mcp-azure-function-key}"
        //     }
        // }
    }
}

您還可以通過命令行添加 MCP:

code --add-mcp '{"name": "local-mcp", "type": "sse", "url": "http://localhost:7071/runtime/webhooks/mcp/sse"}'

📚 詳細文檔

安裝 NuGet 包

在您的項目中安裝以下 NuGet 包:

dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Mcp --version 1.0.0-preview.2

運行項目

啟動您的 Azure Functions 項目:

func start

當系統提示輸入函數名稱和主密鑰時,提供您在 Azure 門戶中找到的相應信息。

測試 MCP 服務器

使用以下命令測試 MCP 服務器是否正常運行:

npx @modelcontextprotocol/inspector http://localhost:7071/runtime/webhooks/mcp/sse

配置 GitHub Copilot Chat

要在 GitHub Copilot Chat 中配置 MCP 服務器,請按照以下步驟操作:

  1. 在您的項目根目錄中創建或編輯 .vscode/settings.json 文件。
  2. 添加以下內容以配置 MCP 服務器:
{
    "inputs": [
        {
            "type": "promptString",
            "id": "mcp-azure-function-key",
            "description": "訪問 Azure 函數的密鑰",
            "password": true
        },
        {
            "type": "promptString",
            "id": "mcp-azure-function-name",
            "description": "訪問 Azure 函數的名稱"
        }
    ],
    "servers": {
        "local-mcp-azure-function": {
            "type": "sse",
            "url": "http://localhost:7071/runtime/webhooks/mcp/sse",
        },
        // "remote-mcp-azure-function": {
        //     "type": "sse",
        //     "url": "https://${input:mcp-azure-function-name}.azurewebsites.net/runtime/webhooks/mcp/sse",
        //     "headers": {
        //         "x-functions-key": "${input:mcp-azure-function-key}"
        //     }
        // }
    }
}

使用 Terraform 部署

如果您使用 Terraform 部署 Azure 資源,請確保在 outputs.tf 文件中包含以下內容:

output "function_name" {
  value = azure_function.name
}

output "function_master_key" {
  value = azure_function.master_key
}

部署後,您可以在 Terraform 輸出中找到函數名稱和主密鑰。

結語 👋🏻

希望這個指南對您有所幫助!如果有任何問題,請隨時與我聯繫。

精選MCP服務推薦
M
Markdownify MCP
Markdownify是一個多功能文件轉換服務,支持將PDF、圖片、音頻等多種格式及網頁內容轉換為Markdown格式。
TypeScript
1.7K
5分
B
Baidu Map
已認證
百度地圖MCP Server是國內首個兼容MCP協議的地圖服務,提供地理編碼、路線規劃等10個標準化API接口,支持Python和Typescript快速接入,賦能智能體實現地圖相關功能。
Python
702
4.5分
F
Firecrawl MCP Server
Firecrawl MCP Server是一個集成Firecrawl網頁抓取能力的模型上下文協議服務器,提供豐富的網頁抓取、搜索和內容提取功能。
TypeScript
3.8K
5分
S
Sequential Thinking MCP Server
一個基於MCP協議的結構化思維服務器,通過定義思考階段幫助分解複雜問題並生成總結
Python
257
4.5分
E
Edgeone Pages MCP Server
EdgeOne Pages MCP是一個通過MCP協議快速部署HTML內容到EdgeOne Pages並獲取公開URL的服務
TypeScript
249
4.8分
N
Notion Api MCP
已認證
一個基於Python的MCP服務器,通過Notion API提供高級待辦事項管理和內容組織功能,實現AI模型與Notion的無縫集成。
Python
119
4.5分
M
Magic MCP
Magic Component Platform (MCP) 是一個AI驅動的UI組件生成工具,通過自然語言描述幫助開發者快速創建現代化UI組件,支持多種IDE集成。
JavaScript
1.7K
5分
C
Context7
Context7 MCP是一個為AI編程助手提供即時、版本特定文檔和代碼示例的服務,通過Model Context Protocol直接集成到提示中,解決LLM使用過時信息的問題。
TypeScript
5.2K
4.7分
AIbase
智啟未來,您的人工智慧解決方案智庫
© 2025AIbase