Azure API Management е услуга, която предоставя Gateway над вашите API крайни точки. Как работи: Azure API Management действа като прокси пред вашите API и може да реши какво да прави с входящите заявки.
Използвайки го, добавяте множество функции като:
- Сигурност – можете да използвате всичко от API ключове, JWT до управлявана идентичност.
- Ограничаване на честотата – страхотна функция, която ви позволява да решите колко заявки да преминават за определен времеви интервал. Това помага да се гарантира, че всички потребители имат добро изживяване и че вашата услуга не е претоварена със заявки.
- Мащабиране и балансиране на натоварването – можете да настроите множество крайни точки, за да разпределите натоварването, и също така да решите как да "балансирате натоварването".
- AI функции като семантично кеширане, ограничение на токени, мониторинг на токени и други. Това са страхотни функции, които подобряват отзивчивостта и ви помагат да следите разхода на токени. Прочетете повече тук.
Model Context Protocol бързо се превръща в стандарт за агентни AI приложения и начин за излагане на инструменти и данни по последователен начин. Azure API Management е естествен избор, когато трябва да "управлявате" API. MCP сървърите често се интегрират с други API, за да обработват заявки към инструмент например. Затова комбинирането на Azure API Management и MCP има много смисъл.
В този конкретен случай ще научим как да изложим API крайни точки като MCP сървър. Правейки това, можем лесно да направим тези крайни точки част от агентно приложение, като същевременно използваме функциите на Azure API Management.
- Избирате методите на крайни точки, които искате да изложите като инструменти.
- Допълнителните функции, които получавате, зависят от това какво конфигурирате в секцията за политики за вашия API. Но тук ще ви покажем как можете да добавите ограничаване на честотата.
Ако вече имате API в Azure API Management, чудесно, тогава можете да пропуснете тази стъпка. Ако не, вижте този линк: импортиране на API в Azure API Management.
За да изложим API крайните точки, следвайте тези стъпки:
-
Отидете в Azure Portal на следния адрес https://portal.azure.com/?Microsoft_Azure_ApiManagement=mcp. Отидете до вашия API Management инстанс.
-
В лявото меню изберете APIs > MCP Servers > + Create new MCP Server.
-
В API изберете REST API, който да изложите като MCP сървър.
-
Изберете една или повече API операции, които да изложите като инструменти. Можете да изберете всички операции или само конкретни операции.
-
Изберете Create.
-
Отидете в менюто APIs и MCP Servers, трябва да видите следното:
MCP сървърът е създаден и API операциите са изложени като инструменти. MCP сървърът е изброен в панела MCP Servers. Колоната URL показва крайната точка на MCP сървъра, която можете да извикате за тестване или в клиентско приложение.
Azure API Management има основната концепция за политики, където задавате различни правила за вашите крайни точки, като например ограничаване на честотата или семантично кеширане. Тези политики се създават в XML.
Ето как можете да настроите политика за ограничаване на честотата на вашия MCP сървър:
-
В портала, под APIs, изберете MCP Servers.
-
Изберете MCP сървъра, който сте създали.
-
В лявото меню, под MCP, изберете Policies.
-
В редактора на политики добавете или редактирайте политиките, които искате да приложите към инструментите на MCP сървъра. Политиките се дефинират в XML формат. Например, можете да добавите политика за ограничаване на заявките към инструментите на MCP сървъра (в този пример, 5 заявки на всеки 30 секунди на клиентски IP адрес). Ето XML, който ще причини ограничаване на честотата:
<rate-limit-by-key calls="5" renewal-period="30" counter-key="@(context.Request.IpAddress)" remaining-calls-variable-name="remainingCallsPerIP" />
Ето изображение на редактора на политики:
Нека се уверим, че нашият MCP сървър работи както трябва.
За това ще използваме Visual Studio Code и GitHub Copilot в режим Agent. Ще добавим MCP сървъра към файл mcp.json. Правейки това, Visual Studio Code ще действа като клиент с агентни способности и крайните потребители ще могат да въвеждат заявки и да взаимодействат със сървъра.
Ето как да добавите MCP сървъра във Visual Studio Code:
-
Използвайте MCP: Add Server команда от Command Palette.
-
Когато бъдете подканени, изберете типа сървър: HTTP (HTTP или Server Sent Events).
-
Въведете URL на MCP сървъра в API Management. Пример: https://.azure-api.net/-mcp/sse (за SSE крайна точка) или https://.azure-api.net/-mcp/mcp (за MCP крайна точка), обърнете внимание на разликата между транспортите
/sseили/mcp. -
Въведете ID на сървъра по ваш избор. Това не е важна стойност, но ще ви помогне да запомните какво представлява този сървър.
-
Изберете дали да запазите конфигурацията в настройките на работното пространство или в потребителските настройки.
-
Настройки на работното пространство – Конфигурацията на сървъра се запазва в файл .vscode/mcp.json, достъпен само в текущото работно пространство.
mcp.json
"servers": { "APIM petstore" : { "type": "sse", "url": "url-to-mcp-server/sse" } }
или ако изберете стрийминг HTTP като транспорт, ще бъде малко по-различно:
"servers": { "APIM petstore" : { "type": "http", "url": "url-to-mcp-server/mcp" } }
-
Потребителски настройки – Конфигурацията на сървъра се добавя към глобалния файл settings.json и е достъпна във всички работни пространства. Конфигурацията изглежда подобно на следното:
-
Трябва също да добавите конфигурация, заглавие, за да се уверите, че се удостоверява правилно към Azure API Management. Използва заглавие, наречено Ocp-Apim-Subscription-Key.
- Ето как можете да го добавите към настройките:
, това ще причини показване на подкана за въвеждане на стойността на API ключа, която можете да намерите в Azure Portal за вашия Azure API Management инстанс.
- За да го добавите към mcp.json, можете да го добавите така:
"inputs": [ { "type": "promptString", "id": "apim_key", "description": "API Key for Azure API Management", "password": true } ] "servers": { "APIM petstore" : { "type": "http", "url": "url-to-mcp-server/mcp", "headers": { "Ocp-Apim-Subscription-Key": "Bearer ${input:apim_key}" } } }
Сега сме готови, независимо дали в настройките или в .vscode/mcp.json. Нека го тестваме.
Трябва да има икона за инструменти, където изложените инструменти от вашия сървър са изброени:
-
Кликнете върху иконата за инструменти и трябва да видите списък с инструменти като този:
-
Въведете заявка в чата, за да извикате инструмента. Например, ако сте избрали инструмент за получаване на информация за поръчка, можете да попитате агента за поръчка. Ето примерна заявка:
get information from order 2Сега ще видите икона за инструменти, която ви подканва да продължите с извикването на инструмент. Изберете да продължите с изпълнението на инструмента, и трябва да видите резултат като този:
това, което виждате по-горе, зависи от инструментите, които сте настроили, но идеята е да получите текстов отговор като горния
Ето как можете да научите повече:
-
Python пример: Защитени отдалечени MCP сървъри с Azure API Management (експериментално)
-
Използване на разширението Azure API Management за VS Code за импортиране и управление на API
-
Регистриране и откриване на отдалечени MCP сървъри в Azure API Center
-
AI Gateway Страхотен репо, който показва много AI възможности с Azure API Management
-
AI Gateway работилници Съдържа работилници с използване на Azure Portal, което е чудесен начин да започнете да оценявате AI възможности.
Отказ от отговорност:
Този документ е преведен с помощта на AI услуга за превод Co-op Translator. Въпреки че се стремим към точност, моля, имайте предвид, че автоматизираните преводи може да съдържат грешки или неточности. Оригиналният документ на неговия роден език трябва да се счита за авторитетен източник. За критична информация се препоръчва професионален човешки превод. Ние не носим отговорност за недоразумения или погрешни интерпретации, произтичащи от използването на този превод.







