API VEGA

MCP Server, взаимодействующий с Azure AI Foundry (экспериментальный)

Сервер Model Context Protocol (MCP) для Azure AI Foundry, предоставляющий единый набор инструментов для моделей, знаний, оценки и прочего.

Важное уведомление

MCP Server для Azure AI Foundry (экспериментальный) переместился в облако и теперь доступен как Foundry MCP Server (preview). Пожалуйста, ознакомьтесь с официальной публичной документацией по адресу Начало работы с Foundry MCP Server (preview). Этот репозиторий на GitHub содержит устаревшую информацию о предыдущей экспериментальной реализации сервера и больше не будет обновляться. Вместо этого обратитесь к новому Foundry MCP Server, размещённому и управляемому удалённо, который обладает следующими преимуществами:

  • Облачный интерфейс для оркестрации инструментов ИИ: Foundry MCP Server (preview) обеспечивает безопасную, масштабируемую конечную точку для MCP-совместимых клиентов. Развертывать инфраструктуру не требуется, что обеспечивает бесшовную интеграцию и сценарии с несколькими агентами.

  • Идентификация и контроль доступа: сервер обеспечивает аутентификацию и авторизацию через Microsoft Entra ID. Все операции выполняются в рамках разрешений авторизованного пользователя (флоу On-Behalf-Of).

  • Сфокусированные на сценариях, расширяемые инструменты: MCP Server предоставляет растущий набор инструментов для чтения и записи моделей, развертываний, оценок и агентов в Microsoft Foundry. Инструменты расширяемы, что позволяет разработчикам и агентам взаимодействовать с сервисами без знания бэкенд-API или схем данных.

  • Ускорение продуктивности агентов и разработчиков: естественные языковые рабочие процессы (через MCP-клиенты и крупные языковые модели) позволяют быстро находить и вызывать инструменты, упрощая разработку и оркестрацию нескольких агентов.

Оставшаяся часть этого репозитория (включая кодовую базу) объясняет более устаревший MCP Server, который взаимодействовал с Azure AI Foundry (экспериментальный).


Доступные инструменты

Возможности: Модели

КатегорияИнструментОписание
Исследованиеlist_models_from_model_catalogПолучает список поддерживаемых моделей из каталога Azure AI Foundry.
list_azure_ai_foundry_labs_projectsПолучает список передовых AI-моделей из Azure AI Foundry Labs, доступных в Microsoft Research.
get_model_details_and_code_samplesПолучает детальную информацию о конкретной модели из каталога Azure AI Foundry.
Разработкаget_prototyping_instructions_for_github_and_labsПредоставляет полные инструкции и руководство по настройке для начала работы с моделями из Azure AI Foundry и Azure AI Foundry Labs.
Развертываниеget_model_quotasПолучает квоты модели для конкретного региона Azure.
create_azure_ai_services_accountСоздаёт учетную запись Azure AI Services.
list_deployments_from_azure_ai_servicesПолучает список развертываний в Azure AI Services.
deploy_model_on_ai_servicesРазворачивает модель на Azure AI Services.
create_foundry_projectСоздаёт новый проект Azure AI Foundry.

Возможности: Знания

КатегорияИнструментОписание
Индексlist_index_namesПолучить все имена индексов в AI Search Service
list_index_schemasПолучить все схемы индексов в AI Search Service
retrieve_index_schemaПолучить схему для конкретного индекса в AI Search Service
create_indexСоздать новый индекс
modify_indexИзменить определение существующего индекса
delete_indexУдалить существующий индекс
Документadd_documentДобавить документ в индекс
delete_documentУдалить документ из индекса
Запросquery_indexПоиск в конкретном индексе и получение совпадающих документов
get_document_countВернуть общее количество документов в индексе
Индексаторlist_indexersПолучить все имена индексоров в AI Search Service
get_indexerПолучить полное определение конкретного индексера из AI Search Service
создайте_indexerСоздать новый индексатор в Search Service с указанным умением, индексом и источником данных
delete_indexerУдалить индексатор по имени из AI Search Service
Источник данныхlist_data_sourcesПолучить все имена источников данных в AI Search Service
get_data_sourceПолучить полное определение конкретного источника данных
Набор навыковlist_skill_setsПолучить все имена наборов навыков в AI Search Service
get_skill_setПолучить полное определение конкретного набора навыков
Содержимоеfk_fetch_local_file_contentsПолучить содержимое локального файла (пример JSON, документ и т.д.)
fk_fetch_url_contentsПолучить содержимое по URL (пример JSON, документ и т.д.)

Возможности: Оценка

КатегорияИнструментОписание
Утилиты оценкиlist_text_evaluatorsПеречень доступных оценителей текста.
list_agent_evaluatorsПеречень доступных оценителей агентов.
get_text_evaluator_requirementsПоказать требования к входным данным для каждого оценителя текста.
get_agent_evaluator_requirementsПоказать требования к входным данным для каждого оценителя агента.
Оценка текстаrun_text_evalЗапустить один или несколько оценителей текста на файле JSONL или его содержимом.
format_evaluation_reportПреобразовать результаты оценки в удобный Markdown-отчет.
Оценка агентаagent_query_and_evaluateСформулировать запрос к агенту и оценить его ответ с использованием выбранных оценителей. Полная оценка агента.
run_agent_evalОценить взаимодействие одного агента с конкретными данными (запрос, ответ, вызовы инструментов, определения).
Сервис агентовlist_agentsПеречень всех агентов Azure AI, доступных в текущем проекте.
connect_agentОтправить запрос указанному агенту.
query_default_agentЗапросить дефолтного агента, заданного в переменных окружения.

Возможности: Доработка (Fine-tuning)

КатегорияИнструментОписание
Тонкая настройкаfetch_finetuning_statusПолучение детального статуса и метаданных по заданию тонкой настройки, включая состояние работы, модель, времена создания и завершения, гиперпараметры и ошибки.
list_finetuning_jobsСписок всех заданий тонкой настройки в ресурсе, с идентификаторами задач и их текущими статусами.
get_finetuning_job_eventsХронологический список всех событий по конкретному заданию тонкой настройки, с временными метками и подробными сообщениями для каждого шага обучения, оценки и завершения.
get_finetuning_metricsМетрики обучения и оценки по конкретному заданию тонкой настройки, включая кривые потерь, точность и другие показатели.
list_finetuning_filesСписок всех файлов, доступных для тонкой настройки в Azure OpenAI, включая идентификаторы файлов, имена, назначения и статусы.
execute_dynamic_swagger_actionВыполнение любого инструмента, динамически сгенерированного по спецификации Swagger, для гибких вызовов API в продвинутых сценариях.
list_dynamic_swagger_toolsПеречень динамически зарегистрированных инструментов из Swagger-спецификации, для обнаружения и автоматизации доступных конечных точек API.

Примеры подсказок

Модели

Исследование моделей
  • Как вы можете помочь мне найти подходящую модель?

  • Какие модели можно использовать из Azure AI Foundry?

  • Какие OpenAI-модели доступны в Azure AI Foundry?

  • Какие модели наиболее популярны в Azure AI Foundry? Выберите 10 моделей.

  • Какие модели подходят для рассуждений? Приведите примеры в двух корзинах: крупные модели и маленькие модели.

  • Можете сравнить Phi-модели и объяснить различия?

  • Покажите карточку модели для Phi-4-reasoning.

  • Можете показать, как тестировать модель?

  • Что означает бесплатная площадка (free playground) в Azure AI Foundry?

  • Можно ли использовать токен GitHub для тестирования моделей?

  • Покажите последние модели, поддерживающие токен GitHub.

  • Кто являются издателями моделей в Azure AI Foundry?

  • Покажите модели от Meta.

  • Покажите модели с лицензией MIT.

Сборка прототипов
  • Можете описать, как вы можете помочь мне построить прототип, используя модель?

  • Опишите, как построить прототип, который использует модель OpenAI с моим токеном GitHub. Не пытайтесь создать его сейчас.

  • Посоветуйте несколько сценариев для прототипов с моделями.

  • Расскажите про Azure AI Foundry Labs.

  • Расскажите подробнее о Magentic One

  • Что такое Omniparser и какие есть потенциальные сценарии использования?

  • Можете помочь построить прототип с Omniparser?

Развёртывание моделей OpenAI
  • Можете помочь развернуть модели OpenAI?

  • Какие шаги нужно предпринять, чтобы развернуть модели OpenAI на Azure AI Foundry?

  • Можете помочь понять, как можно использовать модели OpenAI на Azure AI Foundry с использованием токена GitHub? Можно ли использовать это в продакшене?

  • У меня уже есть ресурс Azure AI Services. Могу ли я развернуть на нём модели OpenAI?

  • Что означает квота на модели OpenAI в Azure AI Foundry?

  • Получите текущую квоту для вашего ресурса AI services.

Быстрый старт с GitHub Copilot

Этот шаблон GitHub имеет минимальную настройку с конфигурацией MCP сервера и всеми необходимыми зависимостями, что облегчает запуск ваших проектов.

Это помогает автоматически настроить MCP сервер в вашем окружении VS Code под настройки пользователя.

Вам понадобится установленный uvx в вашей среде для запуска сервера.

Ручная настройка

Установите uv, следуя инструкции по Installing uv.

Создайте новое рабочее пространство в VS Code.

(Необязательно) Создайте файл .env в корне вашего рабочего пространства для установки переменных окружения.

Создайте .vscode/mcp.json в корне вашего рабочего пространства.

{
    "servers": {
        "mcp_foundry_server": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "--prerelease=allow",
                "--from",
                "git+https://github.com/azure-ai-foundry/mcp-foundry.git",
                "run-azure-ai-foundry-mcp",
                "--envFile",
                "${workspaceFolder}/.env"
            ]
        }
    }
}

Нажмите кнопку Start для сервера в файле .vscode/mcp.json.

Откройте GitHub Copilot чат в режиме Agent и начинайте задавать вопросы.

См. Дополнительные примеры для продвинутой настройки для более подробной информации о том, как настроить MCP Server.

Настройка переменных окружения

Чтобы безопасно передавать информацию в MCP Server, например API-ключи, конечные точки и прочие чувствительные данные, можно использовать переменные окружения. Это особенно важно для инструментов, которым нужна аутентификация или доступ к внешним сервисам.

Вы можете задать переменные окружения в файле .env в корне проекта. Вы можете указать путь к файлу .env при настройке MCP Server, и сервер автоматически загрузит эти переменные при запуске.

См. пример файла .env для образца конфигурации.

КатегорияПеременнаяОбязательна?Описание
МодельGITHUB_TOKENНетGitHub токен для тестирования моделей бесплатно с ограничениями по скорости.
ЗнанияAZURE_AI_SEARCH_ENDPOINTВсегдаURL-адрес конечной точки вашего сервиса Azure AI Search. Он должен выглядеть так: https://<имя_поиска>.search.windows.net/.
AZURE_AI_SEARCH_API_VERSIONНетВерсия API, которую следует использовать. По умолчанию 2025-03-01-preview.
SEARCH_AUTHENTICATION_METHODВсегдаservice-principal или api-search-key.
AZURE_TENANT_IDДа, если используете service-principalИдентификатор вашего арендатора Azure Active Directory.
AZURE_CLIENT_IDДа, если используете service-principalИдентификатор Service Principal (регистрация приложения).
AZURE_CLIENT_SECRETДа, если используете service-principalСекретное значение для Service Principal.
AZURE_AI_SEARCH_API_KEYДа, если используете api-search-keyAPI-ключ для вашего Azure AI Search.
ОценкаEVAL_DATA_DIRВсегдаПуть к набору данных JSONL для оценки.
AZURE_OPENAI_ENDPOINTОценивание текстаКонечная точка для Azure OpenAI.
AZURE_OPENAI_API_KEYОценивание текстаAPI-ключ для Azure OpenAI.
AZURE_OPENAI_DEPLOYMENTОценивание текстаИмя развёртывания (например, gpt-4o).
AZURE_OPENAI_API_VERSIONОценивание текстаВерсия API OpenAI.
AZURE_AI_PROJECT_ENDPOINTСервисы агентовИспользуется для запросов и оценки агентов Azure AI.

Примечания

  • Модель

    • GITHUB_TOKEN используется для аутентификации через GitHub API при тестировании моделей. Он не обязателен, если вы исследуете модели из каталога Foundry.
  • Знания

    • См. Создание сервиса поиска, чтобы узнать больше о provisioning сервиса поиска.
    • Azure AI Search поддерживает несколько методов аутентификации. Можно использовать либо аутентификацию через Microsoft Entra, либо аутентификацию на основе ключа. Выбор зависит от ваших требований к безопасности и вашей Azure-среды.
    • См. Аутентификация, чтобы узнать больше о методах аутентификации для сервиса поиска.
  • Оценка

    • Если вы используете инструменты агентов или оценочные средства безопасности, убедитесь, что учётные данные проекта Azure действительны.
    • Если вы занимаетесь только оценкой качества текста, достаточно конечной точки и ключа OpenAI.

Лицензия

MIT License. См. LICENSE для подробностей.