MCP Server Azure Function
該項目展示瞭如何使用Azure Functions創建MCP服務器,並通過GitHub Copilot Chat的代理模式進行交互。包含本地和遠程MCP服務器的配置方法,以及通過Terraform部署Azure Function的指南。
評分 : 2分
下載量 : 7.1K
🚀 Azure Functions ⚡️❤️ MCP 服務器
本項目展示瞭如何利用 Azure Functions 創建 MCP(模型上下文協議)服務器,並將其與 GitHub Copilot Chat 的代理模式結合使用,為開發者提供便捷的開發體驗。
🚀 快速開始
本項目旨在利用 Azure Functions 創建 MCP 服務器,並與 GitHub Copilot Chat 的代理模式結合使用。以下是快速開始的步驟:
- 安裝用於創建 MCP 服務器的 NuGet 包。
- 運行項目。
- 測試 MCP 服務器。
- 配置 GitHub Copilot Chat。
- 若使用 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 服務器,請按照以下步驟操作:
- 在您的項目根目錄中創建或編輯
.vscode/settings.json文件。 - 添加以下內容以配置 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 輸出中找到函數名稱和主密鑰。
結語 👋🏻
希望這個指南對您有所幫助!如果有任何問題,請隨時與我聯繫。

Markdownify MCP
Markdownify是一個多功能文件轉換服務,支持將PDF、圖片、音頻等多種格式及網頁內容轉換為Markdown格式。
TypeScript
22.4K
5分

Baidu Map
已認證
百度地圖MCP Server是國內首個兼容MCP協議的地圖服務,提供地理編碼、路線規劃等10個標準化API接口,支持Python和Typescript快速接入,賦能智能體實現地圖相關功能。
Python
27.7K
4.5分

Firecrawl MCP Server
Firecrawl MCP Server是一個集成Firecrawl網頁抓取能力的模型上下文協議服務器,提供豐富的網頁抓取、搜索和內容提取功能。
TypeScript
77.2K
5分

Sequential Thinking MCP Server
一個基於MCP協議的結構化思維服務器,通過定義思考階段幫助分解複雜問題並生成總結
Python
23.1K
4.5分

Notion Api MCP
已認證
一個基於Python的MCP服務器,通過Notion API提供高級待辦事項管理和內容組織功能,實現AI模型與Notion的無縫集成。
Python
13.1K
4.5分

Magic MCP
Magic Component Platform (MCP) 是一個AI驅動的UI組件生成工具,通過自然語言描述幫助開發者快速創建現代化UI組件,支持多種IDE集成。
JavaScript
16.0K
5分

Edgeone Pages MCP Server
EdgeOne Pages MCP是一個通過MCP協議快速部署HTML內容到EdgeOne Pages並獲取公開URL的服務
TypeScript
18.0K
4.8分

Context7
Context7 MCP是一個為AI編程助手提供即時、版本特定文檔和代碼示例的服務,通過Model Context Protocol直接集成到提示中,解決LLM使用過時信息的問題。
TypeScript
51.7K
4.7分

