M

MCP Server Azure Function

该项目展示了如何使用Azure Functions创建MCP服务器,并通过GitHub Copilot Chat的代理模式进行交互。包含本地和远程MCP服务器的配置方法,以及通过Terraform部署Azure Function的指南。
2分
20
安装
复制以下命令到你的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服务推荐
F
Figma Context MCP
Framelink Figma MCP Server是一个为AI编程工具(如Cursor)提供Figma设计数据访问的服务器,通过简化Figma API响应,帮助AI更准确地实现设计到代码的一键转换。
TypeScript
7.0K
4.5分
D
Duckduckgo MCP Server
已认证
DuckDuckGo搜索MCP服务器,为Claude等LLM提供网页搜索和内容抓取服务
Python
1.2K
4.3分
F
Firecrawl MCP Server
Firecrawl MCP Server是一个集成Firecrawl网页抓取能力的模型上下文协议服务器,提供丰富的网页抓取、搜索和内容提取功能。
TypeScript
4.4K
5分
B
Baidu Map
已认证
百度地图MCP Server是国内首个兼容MCP协议的地图服务,提供地理编码、路线规划等10个标准化API接口,支持Python和Typescript快速接入,赋能智能体实现地图相关功能。
Python
1.0K
4.5分
E
Edgeone Pages MCP Server
EdgeOne Pages MCP是一个通过MCP协议快速部署HTML内容到EdgeOne Pages并获取公开URL的服务
TypeScript
432
4.8分
E
Exa Web Search
已认证
Exa MCP Server是一个为AI助手(如Claude)提供网络搜索功能的服务器,通过Exa AI搜索API实现实时、安全的网络信息获取。
TypeScript
2.1K
5分
M
Minimax MCP Server
MiniMax Model Context Protocol (MCP) 是一个官方服务器,支持与强大的文本转语音、视频/图像生成API交互,适用于多种客户端工具如Claude Desktop、Cursor等。
Python
1.1K
4.8分
C
Context7
Context7 MCP是一个为AI编程助手提供实时、版本特定文档和代码示例的服务,通过Model Context Protocol直接集成到提示中,解决LLM使用过时信息的问题。
TypeScript
5.6K
4.7分
AIbase
智启未来,您的人工智能解决方案智库
© 2025AIbase