Area: Ingestion Issues
Sub-Area: Snowflake MCP / OAuth Integration Configuration
Issue
When setting up a Snowflake External MCP (Model Context Protocol) server to connect with DataHub, the connector does not appear in Snowflake's CoWork Connectors picker after completing the Snowflake-side configuration steps. The MCP server is created in Snowflake but is not discoverable or authenticatable within the Snowflake CoWork UI, preventing users from authorizing the DataHub connector and accessing metadata tools.
Error Messages
The DataHub connector requires authentication before its tools become available.Unable to retrieve metadata or structure. The DataHub connector, which provides data context, lineage, and metadata, requires authentication before its tools become available.
You Might Be Asking
- Why is my Snowflake MCP connector not showing up in the CoWork Connectors list after I created the external MCP server?
- Do I need to register a callback URL on the DataHub side for Snowflake OAuth to work?
- What value should I use for
OAUTH_RESOURCE_URLwhen creating the Snowflake API integration for DataHub MCP? - Where in Snowflake's UI does the DataHub MCP connector appear — in the general Data Products gallery or inside a Cortex Agent configuration?
Solution
- Verify where to look for the connector. The DataHub MCP connector does not appear in Snowflake's general Data Products → Connectors gallery. It only appears in the Connectors picker inside a specific Cortex Agent's configuration (Snowflake CoWork, Capabilities tab → Connectors). Confirm you are looking in the correct location before proceeding.
-
Check your existing Snowflake objects. Run the following queries in your Snowflake environment to confirm whether the API integration and external MCP server were created successfully:
Review the output to confirm both objects exist and are in anSHOW API INTEGRATIONS LIKE 'datahub%'; SHOW EXTERNAL MCP SERVERS LIKE 'datahub%'; DESCRIBE API INTEGRATION datahub_mcp_api_integration;ENABLEDstate. -
Set the correct
OAUTH_RESOURCE_URL. A common misconfiguration is an incorrect or missingOAUTH_RESOURCE_URLin the Snowflake API integration. When creating or recreating the API integration, use the following value:
If you created the integration with a different value, drop and recreate the integration with the correct one.OAUTH_RESOURCE_URL = 'https://mcp.datahub.com' -
Recreate the API integration with the correct parameters. A complete example of the Snowflake API integration for DataHub MCP is shown below. Replace
<your-datahub-instance-url>with the base URL of your DataHub Cloud instance:CREATE OR REPLACE API INTEGRATION datahub_mcp_api_integration API_PROVIDER = datahub OAUTH_RESOURCE_URL = 'https://mcp.datahub.com' API_ALLOWED_PREFIXES = ('https://<your-datahub-instance>.acryl.io/') ENABLED = TRUE; -
Recreate the external MCP server if it was created before the API integration was corrected:
CREATE OR REPLACE EXTERNAL MCP SERVER datahub_mcp API_INTEGRATION = datahub_mcp_api_integration MCP_SERVER_URL = 'https://<your-datahub-instance>.acryl.io/mcp' ENABLED = TRUE; - Authenticate the connector in CoWork. After the objects are correctly configured, navigate to your Cortex Agent in Snowflake CoWork → Capabilities tab → Connectors, locate the DataHub connector, and complete the OAuth authorization flow.
Additional Notes
DataHub Cloud uses Dynamic Client Registration for OAuth, which means DataHub does not maintain a static allowlist of OAuth callback URLs that customers need to register. Snowflake registers its own callback URL automatically as part of the OAuth handshake. You do not need to request that DataHub add any Snowflake callback URL to a server-side configuration. The most common root cause for the connector not appearing is an incorrect OAUTH_RESOURCE_URL value in the Snowflake API integration — specifically, using a value other than https://mcp.datahub.com. This value is non-obvious and is not always prominently displayed in setup guides, making it a frequent point of misconfiguration. This behavior applies to DataHub Cloud (Acryl-managed) deployments. If you are self-hosting DataHub, the MCP endpoint URL may differ.
Related Documentation
- Ask DataHub Plugins: Snowflake MCP Setup Guide
- Snowflake MCP — Step 3: Create an OAuth Security Integration
Tags: snowflake, mcp, oauth, api-integration, cortex-agent, connector-not-appearing, oauth-resource-url, cowork, external-mcp-server, datahub-cloud