远程MCP服务器

Azure Container Apps上的远程MCP服务器,使用SSE传输并通过API密钥进行认证。

  • by MiguelAngelGutierrezMaya
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 miguelangelgutierrezmaya/weather-mcp-server

使用说明

Azure容器应用远程MCP服务器示例

此MCP服务器使用SSE传输,并使用API密钥进行身份验证。

在本地运行

先决条件:

在本地运行服务器:

uv venv
uv sync

# linux/macOS
export API_KEYS=<AN_API_KEY>
# windows
set API_KEYS=<AN_API_KEY>

uv run fastapi dev main.py

VS代码MCP配置(MCP.json):

{
    "inputs": [
        {
            "type": "promptString",
            "id": "weather-api-key",
            "description": "Weather API Key",
            "password": true
        }
    ],
    "servers": {
        "weather-sse": {
            "type": "sse",
            "url": "http://localhost:8000/sse",
            "headers": {
                "x-api-key": "${input:weather-api-key}"
            }
        }
    }
}

部署到Azure容器应用程序

az containerapp up -g <RESOURCE_GROUP_NAME> -n weather-mcp --environment mcp -l westus --env-vars API_KEYS=<AN_API_KEY> --source .

如果部署成功,Azure CLI将返回应用程序的URL。您可以使用此URL从Visual Studio代码连接到服务器。

如果部署失败,请在更新CLI和Azure容器应用扩展后重试:

az upgrade
az extension add -n containerapp --upgrade