December 4th, 2025
compellinglikeheartcelebrate15 reactions

Locking Down MCP: Create a Private Registry on Azure API Center and Enforce It in GitHub Copilot And VS Code

Two Options: Pick Your MCP Registry Adventure 🎒

Option 1: Self-hosted MCP Registry

Option 2: Azure API Center (the easy path)

What We’re Building 🚀

GitHub + Azure API Center + Vscode

Step 1: Create Your Azure API Center Instance

Note:  Please make sure that you are using data endpoint and not the portal endpoint

✅  data endpoint: https://private-mcp-registry.data.eastus.azure-apicenter.ms

🚫 portal endpoint: https://private-mcp-registry.portal.eastus.azure-apicenter.ms

API Center Overview

Step 2 : Register MCP Servers

MCP Discovery Azure API Center
API List on Azure API Center

Step 3: Enable the API Center Portal and Anonymous Access

This is where the fun began for me.

Turn on the API Center portal (so Save + publish works)

Enable anonymous access to the data API

Step 4: Find the Real MCP Registry Endpoint

curl "https://private-mcp-registry.data.eastus.azure-apicenter.ms/workspaces/default/v0.1/servers"
{
"servers": [
{
"server": {
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
"name": "msdocs-mcp-server",
"description": "AI assistant with real-time access to official Microsoft documentation.",
"version": "Original",
"remotes": [
{
"type": "sse",
"url": "https://learn.microsoft.com/api/mcp"
}
]
},
"_meta": {
"io.modelcontextprotocol.registry/official": {
"status": "active",
"createdAt": "2025-11-21T10:57:54.753206+00:00",
"updatedAt": "2025-11-21T10:58:01.1231068+00:00",
"isLatest": true
},
"x-ms-id": "b8c6e77d-f266-4a0a-a341-cc9e97c15280"
}
},
{
"server": {
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
"name": "atlassian-mcp-server",
"description": "Connect to Jira and Confluence for issue tracking and documentation.",
"version": "Original",
"remotes": [
{
"type": "sse",
"url": "https://mcp.atlassian.com/v1/sse"
}
]
},
"_meta": {
"io.modelcontextprotocol.registry/official": {
"status": "active",
"createdAt": "2025-11-21T10:58:13.1934455+00:00",
"updatedAt": "2025-11-21T10:58:18.6788839+00:00",
"isLatest": true
},
"x-ms-id": "f9894e12-64f9-49ca-84a1-d01fcd4278c8"
}
}
],
"metadata": {
"count": 2
}
}


Step 5 : Configure GitHub’s MCP Registry URL

 

GitHub MCP Settings

Behind the scenes, VS Code will now call:

https://private-mcp-registry.data.eastus.azure-apicenter.ms/workspaces/default/v0.1/servers

Step 6: Test in VS Code

vscode Disabled servers
Vscode MCP Server Disabled
Vscode MCP settings
Vscode MCP extensions
Vscode logs

Note: If you don’t see the correct registry being picked up, simply restart VS Code and try again.

Summary

Setting up a private MCP registry with Azure API Center is absolutely possible today, and once you know the correct workspace-scoped endpoint, things work smoothly with GitHub Copilot and VS Code. However, keep in mind that the Azure API Center registry endpoint is public when anonymous access is enabled. Currently, this is acceptable because Copilot integration depends on unauthenticated access. Even so, the ideal long-term approach is a private, authenticated MCP registry endpoint.

This capability isn’t supported yet, but I fully expect GitHub to introduce authentication and private-endpoint support in the near future. Until then, users can continue to rely on the public endpoint model.

Alternatively, if you need full control right now, a self-hosted MCP registry offers the most flexibility. In exchange, you’ll need to implement the v0.1 MCP Registry specification yourself and also ensure that CORS and endpoint behaviors are properly configured

Troubleshooting

Issue Solution
401 Unauthorized Verify you have the correct user role on the Azure API Center resource.
Save + Publish Button Greyed Out Enable anonymous access to the APIs
404 Not found MCP registry endpoint must include the workspaces/default segment in the URL
404 Not Found You are using data endpoint and not the portal endpoint

✅  data endpoint: https://private-mcp-registry.data.eastus.azure-apicenter.ms

🚫 portal endpoint: https://private-mcp-registry.portal.eastus.azure-apicenter.ms

 

Resources

Author

Sr. Solutions Engineer

14 comments

Leave a comment

Your email address will not be published. Required fields are marked *

Sort by :
  • Your comment is awaiting moderation.
    turkeyapartment.com

    На этом ресурсе есть возможность найти арендную квартиру в Турции.
    На портале (аренда виллы в Турции) собраны разные объекты для аренды жилья в Турции.
    Данный сервис даст возможность найти жилье в Турции.

  • Your comment is awaiting moderation.
    Michaelkak 3 days ago

    A generic pharmaceutical is a preparation that is manufactured to mirror a brand-name drug in dosage, purity, and effectiveness.
    Such a drug contains the same active ingredient as the reference product, but often differs in excipients and price.
    For market entry, a generic drug must prove therapeutic equivalence to the innovator product, ensuring it’s as safe and efficacious.
    silagra back pain

  • Your comment is awaiting moderation.
    ReubenSlory 6 days ago

    Букмекерские конторы предоставляют возможность делать пари на спортивные события.
    Важно выбирать проверенных операторов, а также тщательно изучать коэффициенты до заключением ставки.
    Ставки способны превратиться интересным хобби, однако стоит придерживаться принципы ответственной игры и ограничивать бюджет.
    https://crafty.omskdaily.ru/CUU1STfKYi4H/

  • Your comment is awaiting moderation.
    Jerryswesk 7 days ago

    Слоты — это самые востребованные развлечения в казино.
    Их главное преимущество — несложные правила, красочная графика и разнообразие дополнительных возможностей.
    Пользователи могут подбирать автоматы по тематике, количеству линий и размеру риска.
    https://s7.superlooks.ru/xPko7UGayIP7/

  • Your comment is awaiting moderation.
    ReubenSlory 7 days ago

    Букмекерские конторы предлагают шанс делать ставки на различные матчи.
    Следует выбирать лицензированных букмекеров, а также внимательно анализировать кэфы перед оформлением ставки.
    Ставки могут стать увлекательным хобби, однако важно придерживаться баланс осознанного подхода и ограничивать расходы.
    https://smmexpert.fashiopnpromo.ru/eaZXUkTHYcVZ/

  • Your comment is awaiting moderation.
    GELAYVOVE

    Осознанный подход к гемблингу — это выбор, при которой азарт служат способом досуга, а не средством поправить финансовое положение.
    Она базируется на управлении временем и расходами, а ещё на понимании личных границ.
    https://rosotels.ru/detail/2026-07-12-bachevsk-v-rukakh-rf-ukreplenie-pozitsiy-na-sumskom-napravlenii.htm

  • Your comment is awaiting moderation.
    hasfaniyot.net

    הפורטל הזה מעניק מבחר עשיר של שירותים המיועדים למשתמשים המקומי.
    באתר תוכלו לגלות תכנים מגוונים בנושא למבוגרים באיכות מעולה.
    השירות נותנת אפשרות קלה לחומרים אלו באמצעות שמירה על פרטיות המשתמש.
    https://hasfaniyot.net/

  • Your comment is awaiting moderation.
    мужские кроссовки Dolce Gabbana

    Сникеры бренда — это безупречный союз неповторимой классики и актуальных трендов.
    Главной особенностью данных кроссовок является запоминающийся дизайн с применением дорогих материалов и узнаваемой отделки.
    Такие модели замечательно смотрятся для повседневной жизни, добавляя в стиль штрих гламура.
    https://balmain1.ru/balmain/871-kollaboratsii-dolce-and-gabbana-kogda-moda-vykhodit-za-predely-podiuma/

  • Your comment is awaiting moderation.
    get 1 week ago

    Осознанный гемблинг — это стратегия к игровым развлечениям, основанный на самоограничении и понимании последствий.
    Эта концепция подразумевает добровольное лимитирование времени и бюджета на игру.
    Любой игрок должен предварительно определять пределы потерь и строго их соблюдать.
    https://sport.sneakerside.ru/df4CrvIMQLrw/

  • Your comment is awaiting moderation.
    get

    Для учителей профессиональное развитие жизненно необходимы, поскольку они способствуют осваивать современные методики.
    За счёт подобным занятиям специалисты способны приспосабливаться к изменяющимся условиям образовательной среды.
    Как результат значительно повышается качество педагогической работы, что благотворно влияет на учениках и их достижения.
    https://53news.ru/infomaterialy/distanczionnye-kursy-povysheniya-kvalifikaczii-dlya-vospitatelej-uchimsya-komfortno-i-bez-otryva-ot-raboty.html

  • Your comment is awaiting moderation.
    get

    Ответственная игра — это подход к азартным сессиям, основанный на самоограничении и осознании рисков.
    Эта концепция подразумевает осознанное лимитирование времени и бюджета на игру.
    Каждый участник должен заранее устанавливать пределы потерь и неукоснительно их соблюдать.
    https://traveler.fashiopnpromo.ru/Ko8xBzifqKCO/

  • Your comment is awaiting moderation.
    get 1 week ago

    Prudent betting is a collection of practices that ensure betting stays a form of entertainment instead of a source of stress or loss.
    Key aspects include setting individual boundaries on duration and wagers, as well as being aware of the indicators of problematic behaviour.
    In essence, this approach encourages informed choices and supports users to maintain balance over their playing habits.
    https://nanmed.ru/read/3953-psikhologiya-igry-v-aviator-upravlenie-bankrollom-i-emotsiyami/

  • Your comment is awaiting moderation.
    get 1 week ago

    Разумное отношение к азарту — это стратегия к казино, основанный на контроле и осознании последствий.
    Она включает добровольное лимитирование времени и бюджета на игру.
    Каждый участник обязан заранее определять лимиты потерь и строго их соблюдать.
    https://u4.superpodium.com/Dj85xGmYo5SD/

  • Your comment is awaiting moderation.
    GELAYVOVE 1 week ago

    Осознанный подход к гемблингу — это выбор, при которой игры служат способом досуга, а не стремлением заработать.
    Такой подход базируется на управлении временем и бюджетом, а также на осознании личных границ.
    https://eurasia-log.ru/blog/2026-07-10-polnyy-obzor-igrovykh-avtomatov-v-randx-casino/

  • Your comment is awaiting moderation.
    get

    Осознанный гемблинг — это подход к казино, основанный на контроле и понимании рисков.
    Она предполагает осознанное ограничение времени и денег на процесс.
    Любой игрок обязан заранее определять лимиты потерь и неукоснительно их придерживаться.
    https://nashipesni.ru/pub/2026-06-29-bonusy-i-promokody-1win-dlya-novykh-igrokov-v-aviator/

  • Your comment is awaiting moderation.
    get

    Responsible gambling is a set of principles that guarantee betting remains a form of entertainment rather than a means of financial strain.
    Key aspects include setting individual boundaries on time and money spent, as well as recognising the signs of harmful behaviour.
    Ultimately, responsible gambling promotes informed decisions and supports users to keep control over their playing activities.
    https://relax-spb.ru/read-info/2945-semya-olivera-tri-uchredila-fond-ispolnyayushchiy-poslednyuyu-volyu-muzykanta.html

  • Your comment is awaiting moderation.
    get 1 week ago

    Осознанный гемблинг — это принцип к азартным сессиям, основанный на контроле и осознании последствий.
    Она подразумевает осознанное ограничение времени и бюджета на игру.
    Каждый участник обязан заранее устанавливать лимиты ставок и неукоснительно их придерживаться.
    https://nashipesni.ru/pub/2026-06-30-sluzhba-sotsfonda-v-zavolzhe-pereezzhaet-v-novoe-pomeshchenie/

  • Your comment is awaiting moderation.
    get 2 weeks ago

    Prudent betting is a collection of practices that guarantee betting stays a form of entertainment instead of a source of financial strain.
    It involves establishing individual boundaries on time and wagers, as well as recognising the signs of harmful behaviour.
    Ultimately, responsible gambling encourages conscious decisions and supports users to maintain balance over their playing activities.
    https://ipcfms.ru/read/376-the-history-of-rich-casino-and-its-evolution-in-the-online-gaming-industry.html

  • Your comment is awaiting moderation.
    get 2 weeks ago

    Ответственная игра — это принцип к азартным сессиям, базирующийся на контроле и осознании рисков.
    Она подразумевает осознанное ограничение времени и расходов на процесс.
    Каждый игрок обязан предварительно определять пределы ставок и неукоснительно их придерживаться.
    https://omskapteka.ru/info/471-understanding-the-psychology-of-cashman-casino-users-what-attracts-players-to-the-platform.htm

  • Your comment is awaiting moderation.
    get

    Разумное отношение к азарту — это подход к азартным сессиям, основанный на контроле и понимании последствий.
    Эта концепция включает осознанное лимитирование продолжительности и бюджета на процесс.
    Каждый игрок обязан заранее определять пределы ставок и неукоснительно их соблюдать.
    https://legicon-pravo.ru/data/3484-ozen-life-maadhoo-privatnyy-oazis-na-maldivakh.html

  • Your comment is awaiting moderation.
    get

    Осознанный гемблинг — это стратегия к азартным сессиям, базирующийся на самоограничении и понимании рисков.
    Эта концепция предполагает добровольное лимитирование времени и бюджета на процесс.
    Любой участник должен заранее устанавливать пределы ставок и строго их соблюдать.
    https://liveforsport.ru/full-text/1603-outline-2026-finalnyy-laynap-raskryt-190-muzykantov-art-installyatsii-i-kulinarnyy-kaleydoskop-u-dubny.html

  • Your comment is awaiting moderation.
    get

    Ответственная игра — это комплекс правил, ориентированных на сохранение эмоционального и материального равновесия участника.
    Базовая идея заключается в том, что процесс должна рассматриваться только как досуг, а не как способ заработка.
    Пользователю следует предварительно определять ограничения по длительности и бюджету и строго их придерживаться.
    https://omskapteka.ru/info/442-uralskiy-khalk-obvenchal-sebya-s-krasavitsey-roskosh-i-drama-v-teatre-venetsiano.htm
    Важно уметь распознавать ранние признаки проблемного поведения, такие как желание отыграться и игнорирование обязанностями.
    Операторы обязаны предоставлять функции самоконтроля: тайм-ауты, ограничения пополнений и блокировку аккаунта.
    Следование этих рекомендаций даёт возможность удержать игру в комфортных рамках, не нанося вреда себе и окружающим.

  • Your comment is awaiting moderation.
    Tirz.pro

    Препарат Оземпик является инновационным лекарством для лечения диабета 2 типа.
    Указанный медикамент применяется инъекционно раз в неделю благодаря удобной ручки-дозатора.
    Центральное воздействие Оземпика — активировать рецепторы, что приводит понижение уровня сахара в крови.
    Tirz.pro
    Кроме контроля гликемии, это средство способствует умеренному снижению веса.
    Курс Оземпика должен назначаться только специалистом с учётом противопоказаний.
    При использовании могут встречаться побочные эффекты, такие как тошнота или диарея, которые часто исчезают со временем.

  • Your comment is awaiting moderation.
    AndrewCam

    Getting medications online is very handy.
    It’s possible to purchase at any hour with no leaving your house.
    Internet pharmacies allow you to quickly check prices and locate the lowest deal.
    Your meds are sent directly to your address, cutting a trip and hassle.
    can you drink alcohol with sildenafil
    There is no need to wait in annoying queues at a brick-and-mortar pharmacy.
    For chronic conditions, auto reorders ensure therapy hassle‑free.
    In short, online shopping for meds saves your hours and energy.

  • Your comment is awaiting moderation.
    AndrewCam

    Arzneimittel online zu erwerben ist unglaublich einfach.
    Man kann 24/7 bestellen, ganz ohne das Haus verlassen zu brauchen.
    Internetapotheken erlauben einen einfachen Preisvergleich verschiedener Anbieter.
    Ihre Bestellung wird bequem an die Haustür geschickt.
    kamagra gold tablet
    So spart man sich zeitraubende Wartezeiten in der Vor-Ort- Apotheke.
    Für Menschen mit dauerhaften Erkrankungen bietet sich oft wiederkehrende Nachbestellungen an.
    Zusammenfassend schont der Onlinekauf von Arzneien Zeit und Nerven.

  • Your comment is awaiting moderation.
    Brandonwap

    В наши дни сеть является жизненно важной составляющей нашей жизни.
    Он даёт мгновенный возможность доступа к огромному массиву знаний.
    За счёт всемирной паутине люди в состоянии общаться с близкими и партнёрами в любой точке мира.
    В сфере труда, учёбы и коммерции интернет превратилась в основной канал связи.
    https://sochidaily.ru/read/2026-05-08-sochinskaya-naberezhnaya-pod-pritselom-teplyakov-proveril-gotovnost-glavnoy-arterii-kurorta-k-letnemu-natisku.html
    Помимо этого, интернет предлагает неисчерпаемые варианты для отдыха и саморазвития.
    Без выхода в сеть сегодня сложно представить как домашние, так и рабочие задачи.
    Именно поэтому доступ к стабильному интернету воспринимается базовой необходимостью нашего времени.

  • Your comment is awaiting moderation.
    ReubenSlory

    Ставки на спорт приобрели невероятную известность во всем мире.
    Ключевой фактор этого кроется в возможности испытать настоящий возбуждение.
    Во время просмотра матчей ставки приносят дополнительные интерес к игре.
    Фанаты не просто поддерживать за спортсменов, но и зарабатывать на результатах.
    Удобные онлайн-платформы превращают процесс ставок легким а также быстрым для широкой аудитории.
    Множество вариантов видов спорта позволяет каждому болельщику выбрать что-то интересное.
    Поэтому спортбеттинг делают соревнования намного увлекательным и волнующим.
    https://creativemind.nash-mihailovsk.ru/rivalitet-tsska-s-drugimi-moskovskimi-klubami-3762146/

  • Your comment is awaiting moderation.
    ShawnFub

    Dressing well creates a strong first impression.
    A outfit speaks volumes before a person actually say a single word.
    This enhances your own confidence and mindset noticeably.
    A polished look signals professionalism in the workplace.
    https://triplephinix.com/read-blog/6160
    Fashionable choices allow you to showcase your unique identity.
    Others often perceive well-dressed people as more capable and reliable.
    Ultimately, investing in your wardrobe is an valuable step in yourself.

  • Your comment is awaiting moderation.
    порно видео

    Сайты 18+ существуют как специализированные платформы с возрастными рамками.
    Данных порталов основная цель — гарантировать доступ к материалам, адресованному только совершеннолетней публике.
    Эти веб-сайты дают шанс создателям публиковать работы, не предназначенные для несовершеннолетних.
    Они играют и просветительскую функцию в области интимного здоровья.
    Администраторы подобных сайтов обязаны соблюдать законодательные требования о размещении подобного материала.
    Помимо прочего, данные порталы нередко применяют специальные меры проверки пользователей.
    Таким образом, существование таких ресурсов — это ответ на природный интерес определённой аудитории.
    порно видео

  • Your comment is awaiting moderation.
    оэрн

    Недропользование — это направление деятельности, связанный с освоением природных ресурсов.
    Оно включает разведку полезных ископаемых и их рациональное использование.
    Эта отрасль регулируется нормативными актами, направленными на охрану окружающей среды.
    Эффективное управление в недропользовании способствует экономическому росту.
    оэрн

  • e · Edited

    A nice gotcha (or bug, pls fix). If you leave the “Description” field empty in the MCP Server configuration (so directly under API Center – APIs – Overview), then in the VS Code extension, the MCP server won’t be visible at all.

    • Tajinder SinghMicrosoft employee

      Thanks e . I will pass this on to the product team . Hopefully we can get a fix asap.

  • Alex Carlock

    I believe I followed this correctly, but when running @mcp, I see no MCP servers listed. Also, when I go to my API center website, select an MCP server, and click to Install in Visual Studio Code, the MCP server is installed, but it has an “!” saying that the MCP server is not allowed. Accessing the data.westeurope.azure-apicenter.ms/workspaces/default/v0.1/servers URL for the site does display JSON list of the MCP servers. The URL listed in GitHub Copilot is the data.westeurope.azure-apicenter.ms/workspaces/default URL. Any thoughts?

    • tjsingh85Microsoft employee Author

      Hey Alex, if you are getting the right json on the workspaces/default/v0.1/servers that means API center is configured correctly. On the GitHub Side if you have configured the policy then restrat your vscode and policy should be working as described in the Blogpost. I am not 100% sure what’s your question is ?

  • Chris Capell

    I’ve been searching for a month for the missing link to get this working and this did the trick. I can’t thank you enough for posting this.

      • Fred Derkens

        Also a big thanks from me, spend 3 hrs to figure this out without luck and your tip on the workspace made tit work for me. Thx for taking the time to publish this.

  • Benoit MoussaudMicrosoft employee

    Great Article. If you are looking for a complete sample to expose an API using MCP With Azure APIM and API Center (bicep files included), please look at my repository https://github.com/bmoussaud/mcp-azure-apim

  • W Sz

    Daamn, I thought I could protect the endpoint from totally public accessibility by making it reachable only through a VPN connection.

    • tjsingh85Microsoft employee Author

      The registry can be on a private network as long as the developer’s machine running e.g VS Code can reach it.The registry URL just needs to be reachable from wherever the IDE is running. GitHub’s servers never need to access it.

      • e

        So, what’s really missing for me is just having Private Endpoint support for API Center, or just some basic firewall support. This way we can have it private (but still anonymous inside the network, which is fine in 99% of cases). Now I’m thinking of just continuously copying over the registry definition to something inside our network, crazy to even have to think of such workarounds if you think about all the features API Center already has!

      • Alessandro Surace

        HI TJ,
        thanks for sharing this interesting post.
        So if I understand it correctly, even if I go for for a self-hosted – private MCP registry, I need to open to internet in anonymous mode to allow GitHub’s servers to access it.
        If this is true, I don’t see currently any advantage in having it self-hosted.
        Can you be please more precise when this connection between GitHub servers and APIC can be completely private?
        Thanks
        Alessandro

        • tjsingh85Microsoft employee Author

          Hey Alessandro,

          What i understood from the product team is that the connection is between Client and the registry. GitHub provides a policy to define a registry URL and enforces that policies on copilot side.
          So self hosting doesnt have any clear advantage. APIC makes it easy and fast to provide V0.1 specificaiton JSON thats important for registry format. Also you can create your own MCP serves and host is on Azure and expose it via APIC.

          • Alessandro Surace

            So, if the connection is between IDE and MCP registry, I don’t need to have the MCP registry open to internet and anonymous to allow Github’s Servers to reach it.
            Is it correct? In such case the private registry will really be private.