{"id":47876,"date":"2026-10-15T17:38:40","date_gmt":"2026-10-15T15:38:40","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/?p=47876"},"modified":"2026-10-15T17:38:42","modified_gmt":"2026-10-15T15:38:42","slug":"oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/","title":{"rendered":"OCI-managed MCP Server: Troubleshooting ORA-12170 errors with Private Endpoint connectivity"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">We recently worked on a customer proof of concept (PoC) involving Oracle databases hosted in Oracle Cloud Infrastructure (OCI) within private VCN subnets.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The goal was to evaluate OCI-managed MCP servers and determine whether extending their available toolsets with additional database operations could reduce reliance on agent skills. By exposing reusable operations as MCP tools, we aimed to reduce token consumption and associated costs while improving execution efficiency, without compromising the security of databases hosted in private VCN subnets.<\/p>\n\n\n\n<h2 id=\"h-provision-oci-resources-when-rtfm-isn-t-enough\" class=\"wp-block-heading\">Provision OCI-resources: When RTFM Isn\u2019t Enough<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Provisioning an MCP server requires an underlying database connection that combines database credentials with network connectivity to the target database, typically through a private endpoint. This connection allows the MCP server to access the database securely while keeping it within the private VCN.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The detailed setup procedure is beyond the scope of this article, as Oracle provides official documentation covering the prerequisites, configuration, and provisioning for <a href=\"https:\/\/docs.oracle.com\/en-us\/iaas\/database-tools\/doc\/private-endpoints.html\">Database Tools Private Endpoints<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In short, the documentation mentions using Zero Trust Packet Routing (ZPR) alongside, or instead of, Network Security Groups (NSGs) to control network access.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">So far, so good. We already use NSGs exclusively to manage network traffic.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">However, the documentation does not clearly spell out which specific NSG rules are required or whether ingress rules alone are sufficient. After digging deeper into the documentation, we found the missing piece of the puzzle:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/docs.oracle.com\/en-us\/iaas\/database-management\/doc\/create-database-management-private-endpoint.html\" target=\"_blank\" rel=\"noreferrer noopener\">Creating a Database Management Private Endpoint<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The key takeaway is that the Network Security Groups (NSGs) associated with the private endpoint must have appropriate ingress and egress rules to permit the required network traffic.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is where things got more interesting. Our environment already hosted several databases interconnected through Oracle database links, with ingress and egress rules in place for the relevant subnets, including the newly provisioned private endpoint. Yet, despite these existing network configurations, the MCP server still could not connect to the target database.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 id=\"h-ora-12170-cannot-connect-tcp-connect-timeout\" class=\"wp-block-heading\">ORA-12170: Cannot connect. TCP connect timeout<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"936\" height=\"134\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/OCI-DBaaS-edp-conn-ORA-12170.png\" alt=\"\" class=\"wp-image-47905\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/OCI-DBaaS-edp-conn-ORA-12170.png 936w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/OCI-DBaaS-edp-conn-ORA-12170-300x43.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/OCI-DBaaS-edp-conn-ORA-12170-768x110.png 768w\" sizes=\"auto, (max-width: 936px) 100vw, 936px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Clearly, something was missing. We therefore dug deeper into the private endpoint\u2019s specific network security requirements to identify the root cause of the connectivity issue.<br><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Still Getting ORA-12170, But Why?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Hold on a minute! We quickly went through the OCI Console to double-check our network configuration:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u2705 Verified the private endpoint&#8217;s NSG ingress and egress rules.<\/li>\n\n\n\n<li>\u2705 Confirmed that the databases and the private endpoint were deployed in the same subnet.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Everything looked correct at first glance, yet the dreaded <code>ORA-12170: TNS:Connect timeout occurred<\/code> error persisted.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>What were we missing? Time to bring in Oracle Support!<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">While working with Oracle Support, we took a closer look at the NSG configuration and the private endpoint&#8217;s VNIC. Something caught our attention: an entry was missing from the list, but we hadn&#8217;t initially considered it relevant.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This prompted us to inspect the private endpoint configuration in greater detail using the OCI Command Line Interface (OCI CLI).<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>jerome_witt@cloudshell:~ (eu-zurich-1)$ oci dbtools private-endpoint get \\\n  --private-endpoint-id ${EDP_OCID}  \\\n  --query 'data.{\"nsg-ids\": \"nsg-ids\", \"private-endpoint-vnic-id\": \"private-endpoint-vnic-id\", \"security-attributes\": \"security-attributes\"}' \\\n  --output json\n{\n  <strong>\"nsg-ids\": null<\/strong>,\n  \"private-endpoint-vnic-id\": \"ocid1.vnic.oc1.eu-zurich-1.xxxxxxxxxxxxxxxxx\",\n  \"security-attributes\": {}\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><br>Oh! The nsg-ids field is null! That was the missing piece of the puzzle.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">After updating the private endpoint with the appropriate NSG, we ran the following OCI CLI command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>oci dbtools private-endpoint update \\ \n  --private-endpoint-id ${EDP_OCID} \\\n  --nsg-ids '&#091;\"${NSG_ATTACHED_TO_DB_OCID}\"]'<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">And then, the magic happened! The database connection succeeded, and the dreaded ORA-12170 error was gone.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">After explicitly associating the appropriate NSG with the Database Tools private endpoint, connectivity was restored. The OCI CLI output had revealed that the <code>nsg-ids<\/code> field was <code>null<\/code>, a detail we had overlooked when initially checking the configuration through the OCI Console.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"347\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/Screenshot-2026-10-15-at-17.23.54-1024x347.png\" alt=\"\" class=\"wp-image-47907\" srcset=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/Screenshot-2026-10-15-at-17.23.54-1024x347.png 1024w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/Screenshot-2026-10-15-at-17.23.54-300x102.png 300w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/Screenshot-2026-10-15-at-17.23.54-768x261.png 768w, https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/Screenshot-2026-10-15-at-17.23.54.png 1120w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">This behavior may be related to recent changes in OCI as Oracle continues to rapidly develop and roll out its core Deep Data Security capabilities.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">What had initially looked like a correctly configured network turned out to be missing a crucial piece: the NSG association explicitly configured on the Database Tools private endpoint itself.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><br><\/p>\n\n\n\n<h2 id=\"h-lessons-learned\" class=\"wp-block-heading\">Lessons Learned<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Never blindly trust the console! Always verify the underlying configuration using the OCI CLI.<\/li>\n\n\n\n<li>Have fun troubleshooting!<strong> <\/strong>Sometimes, the smallest configuration detail makes all the difference.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">By the way, it seems we&#8217;re not alone. Others have apparently encountered similar database connectivity issues when configuring OCI Database Tools but none were using NSGs exclusively.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For further reference, these Oracle Support knowledge base articles may be useful:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>KB64948 \u2014 <em>How to Connect to the Autonomous Database (Private Endpoint Access)<\/em><\/li>\n\n\n\n<li>KB42277 \u2014 <em>OCI \u2014 Enable Database Management Fails<\/em><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"has-small-font-size wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>We recently worked on a customer proof of concept (PoC) involving Oracle databases hosted in Oracle Cloud Infrastructure (OCI) within private VCN subnets. The goal was to evaluate OCI-managed MCP servers and determine whether extending their available toolsets with additional database operations could reduce reliance on agent skills. By exposing reusable operations as MCP tools, [&hellip;]<\/p>\n","protected":false},"author":25,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":"","_members_access_role":[],"_members_access_error":""},"categories":[955,198,2966],"tags":[2810,4281,1375,96],"type_dbi":[3654,2728],"class_list":["post-47876","post","type-post","status-publish","format-standard","hentry","category-cloud","category-database-management","category-oci","tag-ai","tag-mcp","tag-oci","tag-oracle","type-ai","type-oracle"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.6 (Yoast SEO v28.7) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>OCI-managed MCP Server: Troubleshooting ORA-12170 errors with Private Endpoint connectivity - dbi Blog<\/title>\n<meta name=\"description\" content=\"Troubleshooting OCI-managed MCP server connectivity to private Oracle databases. Learn how a missing NSG association on a Database Tools private endpoint caused ORA-12170 and how to resolve it using the OCI CLI.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"OCI-managed MCP Server: Troubleshooting ORA-12170 errors with Private Endpoint connectivity\" \/>\n<meta property=\"og:description\" content=\"Troubleshooting OCI-managed MCP server connectivity to private Oracle databases. Learn how a missing NSG association on a Database Tools private endpoint caused ORA-12170 and how to resolve it using the OCI CLI.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-15T15:38:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-15T15:38:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/OCI-DBaaS-edp-conn-ORA-12170.png\" \/>\n\t<meta property=\"og:image:width\" content=\"936\" \/>\n\t<meta property=\"og:image:height\" content=\"134\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"J\u00e9r\u00f4me Witt\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"J\u00e9r\u00f4me Witt\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/\"},\"author\":{\"name\":\"J\u00e9r\u00f4me Witt\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/a2d3ecddaf732850101a39b9d62c31b7\"},\"headline\":\"OCI-managed MCP Server: Troubleshooting ORA-12170 errors with Private Endpoint connectivity\",\"datePublished\":\"2026-10-15T15:38:40+00:00\",\"dateModified\":\"2026-10-15T15:38:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/\"},\"wordCount\":704,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2026\\\/10\\\/OCI-DBaaS-edp-conn-ORA-12170.png\",\"keywords\":[\"ai\",\"MCP\",\"OCI\",\"Oracle\"],\"articleSection\":[\"Cloud\",\"Database management\",\"OCI\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/\",\"name\":\"OCI-managed MCP Server: Troubleshooting ORA-12170 errors with Private Endpoint connectivity - dbi Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2026\\\/10\\\/OCI-DBaaS-edp-conn-ORA-12170.png\",\"datePublished\":\"2026-10-15T15:38:40+00:00\",\"dateModified\":\"2026-10-15T15:38:42+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/a2d3ecddaf732850101a39b9d62c31b7\"},\"description\":\"Troubleshooting OCI-managed MCP server connectivity to private Oracle databases. Learn how a missing NSG association on a Database Tools private endpoint caused ORA-12170 and how to resolve it using the OCI CLI.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2026\\\/10\\\/OCI-DBaaS-edp-conn-ORA-12170.png\",\"contentUrl\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2026\\\/10\\\/OCI-DBaaS-edp-conn-ORA-12170.png\",\"width\":936,\"height\":134},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"OCI-managed MCP Server: Troubleshooting ORA-12170 errors with Private Endpoint connectivity\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/#\\\/schema\\\/person\\\/a2d3ecddaf732850101a39b9d62c31b7\",\"name\":\"J\u00e9r\u00f4me Witt\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/17095c081578ca53f52ec4030ba2bde72cc18badb325cd2ba1ee2831106507ad?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/17095c081578ca53f52ec4030ba2bde72cc18badb325cd2ba1ee2831106507ad?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/17095c081578ca53f52ec4030ba2bde72cc18badb325cd2ba1ee2831106507ad?s=96&d=mm&r=g\",\"caption\":\"J\u00e9r\u00f4me Witt\"},\"description\":\"J\u00e9rome Witt started his Consultant career a few years ago. He is specialized in database and infrastructure management, engineering, and optimization. He is very skilled in Oracle high availability, backup &amp; recovery, and tuning technologies. His expertise also includes the open source field (Linux\\\/Unix), advanced Perl, Shell, Windows PowerShell programming, and Automation tools (UC4). J\u00e9r\u00f4me Witt is Oracle Certified Professional 11g (OCP 11g), Oracle Certified Expert Tuning (OCE), and ITIL V3 Foundation certified. Prior to joining dbi services, J\u00e9r\u00f4me Witt was Consultant at Trivadis in Basel. He also worked as a Junior Automation specialist at Selmoni AG in Basel. J\u00e9r\u00f4me Witt holds a BTS degree in Information Systems and Industrial Networks from France. His branch-related experience covers Pharma, Health Care, Banking &amp; Financial Services, Energy, Automotive etc.\",\"url\":\"https:\\\/\\\/www.dbi-services.com\\\/blog\\\/author\\\/jerome-witt\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"OCI-managed MCP Server: Troubleshooting ORA-12170 errors with Private Endpoint connectivity - dbi Blog","description":"Troubleshooting OCI-managed MCP server connectivity to private Oracle databases. Learn how a missing NSG association on a Database Tools private endpoint caused ORA-12170 and how to resolve it using the OCI CLI.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/","og_locale":"en_US","og_type":"article","og_title":"OCI-managed MCP Server: Troubleshooting ORA-12170 errors with Private Endpoint connectivity","og_description":"Troubleshooting OCI-managed MCP server connectivity to private Oracle databases. Learn how a missing NSG association on a Database Tools private endpoint caused ORA-12170 and how to resolve it using the OCI CLI.","og_url":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/","og_site_name":"dbi Blog","article_published_time":"2026-10-15T15:38:40+00:00","article_modified_time":"2026-10-15T15:38:42+00:00","og_image":[{"width":936,"height":134,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/OCI-DBaaS-edp-conn-ORA-12170.png","type":"image\/png"}],"author":"J\u00e9r\u00f4me Witt","twitter_card":"summary_large_image","twitter_misc":{"Written by":"J\u00e9r\u00f4me Witt","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/"},"author":{"name":"J\u00e9r\u00f4me Witt","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/a2d3ecddaf732850101a39b9d62c31b7"},"headline":"OCI-managed MCP Server: Troubleshooting ORA-12170 errors with Private Endpoint connectivity","datePublished":"2026-10-15T15:38:40+00:00","dateModified":"2026-10-15T15:38:42+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/"},"wordCount":704,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/OCI-DBaaS-edp-conn-ORA-12170.png","keywords":["ai","MCP","OCI","Oracle"],"articleSection":["Cloud","Database management","OCI"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/","url":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/","name":"OCI-managed MCP Server: Troubleshooting ORA-12170 errors with Private Endpoint connectivity - dbi Blog","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/OCI-DBaaS-edp-conn-ORA-12170.png","datePublished":"2026-10-15T15:38:40+00:00","dateModified":"2026-10-15T15:38:42+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/a2d3ecddaf732850101a39b9d62c31b7"},"description":"Troubleshooting OCI-managed MCP server connectivity to private Oracle databases. Learn how a missing NSG association on a Database Tools private endpoint caused ORA-12170 and how to resolve it using the OCI CLI.","breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/OCI-DBaaS-edp-conn-ORA-12170.png","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2026\/10\/OCI-DBaaS-edp-conn-ORA-12170.png","width":936,"height":134},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/oci-managed-mcp-server-troubleshooting-ora-12170-errors-with-private-endpoint-connectivity\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"OCI-managed MCP Server: Troubleshooting ORA-12170 errors with Private Endpoint connectivity"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/a2d3ecddaf732850101a39b9d62c31b7","name":"J\u00e9r\u00f4me Witt","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/17095c081578ca53f52ec4030ba2bde72cc18badb325cd2ba1ee2831106507ad?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/17095c081578ca53f52ec4030ba2bde72cc18badb325cd2ba1ee2831106507ad?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/17095c081578ca53f52ec4030ba2bde72cc18badb325cd2ba1ee2831106507ad?s=96&d=mm&r=g","caption":"J\u00e9r\u00f4me Witt"},"description":"J\u00e9rome Witt started his Consultant career a few years ago. He is specialized in database and infrastructure management, engineering, and optimization. He is very skilled in Oracle high availability, backup &amp; recovery, and tuning technologies. His expertise also includes the open source field (Linux\/Unix), advanced Perl, Shell, Windows PowerShell programming, and Automation tools (UC4). J\u00e9r\u00f4me Witt is Oracle Certified Professional 11g (OCP 11g), Oracle Certified Expert Tuning (OCE), and ITIL V3 Foundation certified. Prior to joining dbi services, J\u00e9r\u00f4me Witt was Consultant at Trivadis in Basel. He also worked as a Junior Automation specialist at Selmoni AG in Basel. J\u00e9r\u00f4me Witt holds a BTS degree in Information Systems and Industrial Networks from France. His branch-related experience covers Pharma, Health Care, Banking &amp; Financial Services, Energy, Automotive etc.","url":"https:\/\/www.dbi-services.com\/blog\/author\/jerome-witt\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/47876","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/25"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=47876"}],"version-history":[{"count":11,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/47876\/revisions"}],"predecessor-version":[{"id":47914,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/47876\/revisions\/47914"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=47876"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=47876"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=47876"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=47876"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}