M

MCP Server Azure Function

This project demonstrates how to create an MCP server using Azure Functions and interact through the proxy mode of GitHub Copilot Chat. It includes configuration methods for local and remote MCP servers, as well as a guide for deploying Azure Functions via Terraform.
2 points
7
Installation
Copy the following command to your Client for configuration
Note: Your key is sensitive information, do not share it with anyone.

🚀 Azure Functions ⚡️❤️ MCP Server

This repository is part of a video on my YouTube channel, which demonstrates how to create an MCP (Model Context Protocol) server using Azure Functions and integrate it with the proxy mode of GitHub Copilot Chat.

Watch the YouTube video

🚀 Quick Start

✨ Features

This project allows you to create an MCP server using Azure Functions and interact with it through GitHub Copilot Chat.

📦 Installation

To create an MCP server using Azure Functions, you can use the following library:

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

For more details about this NuGet package, please visit: https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Mcp

💻 Usage Examples

Basic Usage

To test the example code, you need to run the project locally:

func start

You can use the MCP inspector:

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

You can also interact with this MCP server using GitHub Copilot Chat. To do this, simply create a .vscode/mcp.json file or include the following section in your .vscode/settings.json:

{
    "inputs": [
        {
            "type": "promptString",
            "id": "mcp-azure-function-key",
            "description": "Key to access the Azure function",
            "password": true
        },
        {
            "type": "promptString",
            "id": "mcp-azure-function-name",
            "description": "Name to access the Azure function"
        }
    ],
    "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}"
        //     }
        // }
    }
}

You can also add an MCP via the command line:

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

Advanced Usage

If you are using Terraform to deploy Azure resources, make sure to include the following in your outputs.tf file:

output "function_name" {
  value = azure_function.name
}

output "function_master_key" {
  value = azure_function.master_key
}

After deployment, you can find the function name and master key in the Terraform output.

📚 Documentation

Install the NuGet Package

Install the following NuGet package in your project:

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

Run the Project

Start your Azure Functions project:

func start

When prompted for the function name and master key, provide the corresponding information you found in the Azure portal.

Test the MCP Server

Use the following command to test if the MCP server is running correctly:

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

Configure GitHub Copilot Chat

To configure the MCP server in GitHub Copilot Chat, follow these steps:

  1. Create or edit the .vscode/settings.json file in your project root directory.
  2. Add the following content to configure the MCP server:
{
    "inputs": [
        {
            "type": "promptString",
            "id": "mcp-azure-function-key",
            "description": "Key to access the Azure function",
            "password": true
        },
        {
            "type": "promptString",
            "id": "mcp-azure-function-name",
            "description": "Name to access the Azure function"
        }
    ],
    "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}"
        //     }
        // }
    }
}

📄 Conclusion

I hope this guide is helpful to you! If you have any questions, please feel free to contact me.

N
Notte Browser
Certified
Notte is an open-source full-stack network AI agent framework that provides browser sessions, automated LLM-driven agents, web page observation and operation, credential management, etc. It aims to transform the Internet into an agent-friendly environment and reduce the cognitive burden of LLMs by describing website structures in natural language.
658
4.5 points
S
Search1api
The Search1API MCP Server is a server based on the Model Context Protocol (MCP), providing search and crawling functions, and supporting multiple search services and tools.
TypeScript
342
4 points
D
Duckduckgo MCP Server
Certified
The DuckDuckGo Search MCP Server provides web search and content scraping services for LLMs such as Claude.
Python
827
4.3 points
B
Bing Search MCP
An MCP server for integrating Microsoft Bing Search API, supporting web page, news, and image search functions, providing network search capabilities for AI assistants.
Python
227
4 points
M
MCP Alchemy
Certified
MCP Alchemy is a tool that connects Claude Desktop to multiple databases, supporting SQL queries, database structure analysis, and data report generation.
Python
321
4.2 points
P
Postgresql MCP
A PostgreSQL database MCP service based on the FastMCP library, providing CRUD operations, schema inspection, and custom SQL query functions for specified tables.
Python
110
4 points
M
MCP Scan
MCP-Scan is a security scanning tool for MCP servers, used to detect common security vulnerabilities such as prompt injection, tool poisoning, and cross-domain escalation.
Python
615
5 points
A
Agentic Radar
Agentic Radar is a security scanning tool for analyzing and assessing agentic systems, helping developers, researchers, and security experts understand the workflows of agentic systems and identify potential vulnerabilities.
Python
555
5 points
Featured MCP Services
D
Duckduckgo MCP Server
Certified
The DuckDuckGo Search MCP Server provides web search and content scraping services for LLMs such as Claude.
Python
827
4.3 points
G
Gitlab MCP Server
Certified
The GitLab MCP server is a project based on the Model Context Protocol that provides a comprehensive toolset for interacting with GitLab accounts, including code review, merge request management, CI/CD configuration, and other functions.
TypeScript
85
4.3 points
M
Markdownify MCP
Markdownify is a multi-functional file conversion service that supports converting multiple formats such as PDFs, images, audio, and web page content into Markdown format.
TypeScript
1.7K
5 points
N
Notion Api MCP
Certified
A Python-based MCP Server that provides advanced to-do list management and content organization functions through the Notion API, enabling seamless integration between AI models and Notion.
Python
140
4.5 points
U
Unity
Certified
UnityMCP is a Unity editor plugin that implements the Model Context Protocol (MCP), providing seamless integration between Unity and AI assistants, including real - time state monitoring, remote command execution, and log functions.
C#
563
5 points
F
Figma Context MCP
Framelink Figma MCP Server is a server that provides access to Figma design data for AI programming tools (such as Cursor). By simplifying the Figma API response, it helps AI more accurately achieve one - click conversion from design to code.
TypeScript
6.7K
4.5 points
M
Minimax MCP Server
The MiniMax Model Context Protocol (MCP) is an official server that supports interaction with powerful text-to-speech, video/image generation APIs, and is suitable for various client tools such as Claude Desktop and Cursor.
Python
752
4.8 points
G
Gmail MCP Server
A Gmail automatic authentication MCP server designed for Claude Desktop, supporting Gmail management through natural language interaction, including complete functions such as sending emails, label management, and batch operations.
TypeScript
282
4.5 points
AIbase
Zhiqi Future, Your AI Solution Think Tank
© 2025AIbase