Remote MCP with Azure Functions logo

Remote MCP with Azure Functions

by Azure-Samples

This is a quickstart template to easily build and deploy a custom remote MCP server to the cloud using Azure functions. You can clone/restore/run on your local machine with debugging, and `azd up` to have it in the cloud in a couple minutes.

View on GitHub

Last updated: N/A

What is Remote MCP with Azure Functions?

This is a remote MCP (Model Context Protocol) server implemented using Azure Functions. It allows you to run MCP server logic in the cloud, leveraging the scalability and cost-effectiveness of serverless computing.

How to use Remote MCP with Azure Functions?

To use this server, you need to clone the repository, install the necessary prerequisites (Node.js, Azure Functions Core Tools, Azure Developer CLI, Docker), and deploy it to Azure using the azd up command. You can then connect to the remote MCP server from a client application, such as VS Code with GitHub Copilot or MCP Inspector, by providing the function app URL and the required system key.

Key features of Remote MCP with Azure Functions

  • Easy deployment to Azure using Azure Developer CLI (azd)

  • Secure communication using HTTPS and keys

  • Integration with Azure services like API Management and App Service for enhanced security and authentication

  • Support for network isolation using VNET

  • Example MCP tools for saving and retrieving snippets

Use cases of Remote MCP with Azure Functions

  • Running MCP servers in a scalable and cost-effective manner

  • Integrating MCP functionality into cloud-based applications

  • Securing MCP communication with Azure security features

  • Enabling remote access to MCP servers from various clients

FAQ from Remote MCP with Azure Functions

What is MCP?

MCP stands for Model Context Protocol. It's a protocol for communication between tools and services, often used in the context of AI and code editing.

What are Azure Functions?

Azure Functions is a serverless compute service that enables you to run code on-demand without having to explicitly provision or manage infrastructure.

How do I get the system key for the Azure Function?

You can obtain the system key from the Azure portal or using the Azure CLI (az functionapp keys list --resource-group <resource_group> --name <function_app_name>). Look for the key named mcp_extension.

Can I use this with GitHub Copilot?

Yes, this sample provides instructions on how to connect to the remote MCP server from VS Code using GitHub Copilot.

How do I clean up the resources after I'm done?

You can use the azd down command to delete the function app and its related resources from Azure.