io.github.Coalesce-Software-Inc/coalesce-transform
MCP server for managing Coalesce Transform workspaces, nodes, pipelines, and runs.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
coalesce-transform-mcpclaude mcp add coalesce-transform -e 'COALESCE_ACCESS_TOKEN=<your coalesce_access_token>' -e 'COALESCE_PROFILE=<COALESCE_PROFILE>' -e 'COALESCE_BASE_URL=<COALESCE_BASE_URL>' -e 'COALESCE_ORG_ID=<COALESCE_ORG_ID>' -e 'COALESCE_REPO_PATH=<COALESCE_REPO_PATH>' -e 'COALESCE_CACHE_DIR=<COALESCE_CACHE_DIR>' -e 'COALESCE_MCP_AUTO_CACHE_MAX_BYTES=<COALESCE_MCP_AUTO_CACHE_MAX_BYTES>' -e 'COALESCE_MCP_INLINE_RESPONSES=<COALESCE_MCP_INLINE_RESPONSES>' -e 'COALESCE_MCP_LINEAGE_TTL_MS=<COALESCE_MCP_LINEAGE_TTL_MS>' -e 'COALESCE_MCP_MAX_REQUEST_BODY_BYTES=<COALESCE_MCP_MAX_REQUEST_BODY_BYTES>' -e 'COALESCE_MCP_REQUEST_TIMEOUT_MS=<COALESCE_MCP_REQUEST_TIMEOUT_MS>' -e 'COALESCE_MCP_DETAIL_FETCH_TIMEOUT_MS=<COALESCE_MCP_DETAIL_FETCH_TIMEOUT_MS>' -e 'COALESCE_MCP_NODE_TYPE_RANKING_TIMEOUT_MS=<COALESCE_MCP_NODE_TYPE_RANKING_TIMEOUT_MS>' -e 'COALESCE_MCP_INVENTORY_CACHE_TTL_MS=<COALESCE_MCP_INVENTORY_CACHE_TTL_MS>' -e 'COALESCE_MCP_NODE_INDEX_CACHE_TTL_MS=<COALESCE_MCP_NODE_INDEX_CACHE_TTL_MS>' -e 'COALESCE_MCP_NODE_DETAIL_CACHE_TTL_MS=<COALESCE_MCP_NODE_DETAIL_CACHE_TTL_MS>' -e 'COALESCE_MCP_READ_ONLY=<COALESCE_MCP_READ_ONLY>' -e 'COALESCE_MCP_SKILLS_DIR=<COALESCE_MCP_SKILLS_DIR>' -e 'SNOWFLAKE_ACCOUNT=<SNOWFLAKE_ACCOUNT>' -e 'SNOWFLAKE_USERNAME=<SNOWFLAKE_USERNAME>' -e 'SNOWFLAKE_KEY_PAIR_KEY=<SNOWFLAKE_KEY_PAIR_KEY>' -e 'SNOWFLAKE_PAT=<your snowflake_pat>' -e 'SNOWFLAKE_KEY_PAIR_PASS=<your snowflake_key_pair_pass>' -e 'SNOWFLAKE_WAREHOUSE=<SNOWFLAKE_WAREHOUSE>' -e 'SNOWFLAKE_ROLE=<SNOWFLAKE_ROLE>' -- npx -y coalesce-transform-mcp@0.10.1
{
"mcpServers": {
"coalesce-transform": {
"command": "npx",
"args": [
"-y",
"coalesce-transform-mcp@0.10.1"
],
"env": {
"COALESCE_ACCESS_TOKEN": "<your coalesce_access_token>",
"COALESCE_PROFILE": "<COALESCE_PROFILE>",
"COALESCE_BASE_URL": "<COALESCE_BASE_URL>",
"COALESCE_ORG_ID": "<COALESCE_ORG_ID>",
"COALESCE_REPO_PATH": "<COALESCE_REPO_PATH>",
"COALESCE_CACHE_DIR": "<COALESCE_CACHE_DIR>",
"COALESCE_MCP_AUTO_CACHE_MAX_BYTES": "<COALESCE_MCP_AUTO_CACHE_MAX_BYTES>",
"COALESCE_MCP_INLINE_RESPONSES": "<COALESCE_MCP_INLINE_RESPONSES>",
"COALESCE_MCP_LINEAGE_TTL_MS": "<COALESCE_MCP_LINEAGE_TTL_MS>",
"COALESCE_MCP_MAX_REQUEST_BODY_BYTES": "<COALESCE_MCP_MAX_REQUEST_BODY_BYTES>",
"COALESCE_MCP_REQUEST_TIMEOUT_MS": "<COALESCE_MCP_REQUEST_TIMEOUT_MS>",
"COALESCE_MCP_DETAIL_FETCH_TIMEOUT_MS": "<COALESCE_MCP_DETAIL_FETCH_TIMEOUT_MS>",
"COALESCE_MCP_NODE_TYPE_RANKING_TIMEOUT_MS": "<COALESCE_MCP_NODE_TYPE_RANKING_TIMEOUT_MS>",
"COALESCE_MCP_INVENTORY_CACHE_TTL_MS": "<COALESCE_MCP_INVENTORY_CACHE_TTL_MS>",
"COALESCE_MCP_NODE_INDEX_CACHE_TTL_MS": "<COALESCE_MCP_NODE_INDEX_CACHE_TTL_MS>",
"COALESCE_MCP_NODE_DETAIL_CACHE_TTL_MS": "<COALESCE_MCP_NODE_DETAIL_CACHE_TTL_MS>",
"COALESCE_MCP_READ_ONLY": "<COALESCE_MCP_READ_ONLY>",
"COALESCE_MCP_SKILLS_DIR": "<COALESCE_MCP_SKILLS_DIR>",
"SNOWFLAKE_ACCOUNT": "<SNOWFLAKE_ACCOUNT>",
"SNOWFLAKE_USERNAME": "<SNOWFLAKE_USERNAME>",
"SNOWFLAKE_KEY_PAIR_KEY": "<SNOWFLAKE_KEY_PAIR_KEY>",
"SNOWFLAKE_PAT": "<your snowflake_pat>",
"SNOWFLAKE_KEY_PAIR_PASS": "<your snowflake_key_pair_pass>",
"SNOWFLAKE_WAREHOUSE": "<SNOWFLAKE_WAREHOUSE>",
"SNOWFLAKE_ROLE": "<SNOWFLAKE_ROLE>"
}
}
}
}
Environment variables
COALESCE_ACCESS_TOKENsecret Bearer token from the Coalesce Deploy tab. Optional when `~/.coa/config` provides a `token`.COALESCE_PROFILESelects which `~/.coa/config` profile to load. Defaults to default.COALESCE_BASE_URLRegion-specific base URL. Defaults to https://app.coalescesoftware.io (US).COALESCE_ORG_IDFallback org ID for cancel-run. Also readable from `orgID` in the active ~/.coa/config profile.COALESCE_REPO_PATHLocal repo root for repo-backed tools and pipeline planning. Also readable from `repoPath` in the active ~/.coa/config profile.COALESCE_CACHE_DIRBase directory for the local data cache. When set, cache files are written here instead of the working directory. Also readable from `cacheDir` in the active ~/.coa/config profile.COALESCE_MCP_AUTO_CACHE_MAX_BYTESJSON size threshold before auto-caching to disk. Defaults to 32768.COALESCE_MCP_INLINE_RESPONSESForces large responses inline as text instead of auto-caching them to disk and returning a `resource_link` (and suppresses per-field cache resource links). The server already auto-enables this for clients known not to support MCP resources (e.g. Snowflake Cortex), which otherwise render the link as unreadable "binary data" and retry in a loop. Set `true` to force it on for an unrecognised client, or `false` to disable auto-detection. Leave unset for Claude/Cursor to keep large payloads out of context. Defaults to false (auto-enabled for resource-less clients).COALESCE_MCP_LINEAGE_TTL_MSIn-memory lineage cache TTL in milliseconds. Defaults to 1800000.COALESCE_MCP_MAX_REQUEST_BODY_BYTESMax outbound API request body size. Defaults to 524288.COALESCE_MCP_REQUEST_TIMEOUT_MSDefault per-request timeout for Coalesce API calls. Raise on large workspaces where paginated reads exceed the default. Defaults to 60000.COALESCE_MCP_DETAIL_FETCH_TIMEOUT_MSPer-page timeout for detail=true paginated fetches of large node lists. Defaults to 180000.COALESCE_MCP_NODE_TYPE_RANKING_TIMEOUT_MSDeadline for the best-effort workspace-adoption node-type ranking lookup inside node creation. Advisory only — creation proceeds without a ranking suggestion if this trips. Defaults to 15000.COALESCE_MCP_INVENTORY_CACHE_TTL_MSIn-memory TTL for the workspace node-type inventory. Set to `0` to disable. Defaults to 300000.COALESCE_MCP_NODE_INDEX_CACHE_TTL_MSIn-memory TTL for the workspace node-index (id/name/type/location) cache used by SQL- and intent-ref resolution. Set to `0` to disable. Defaults to 300000.COALESCE_MCP_NODE_DETAIL_CACHE_TTL_MSIn-memory TTL for the workspace node-detail (full body) cache used by review and predecessor lookups. Set to `0` to disable. Defaults to 300000.COALESCE_MCP_READ_ONLYWhen `true`, hides all write/mutation tools during registration. Only read, list, search, cache, analyze, review, diagnose, and plan tools are exposed. Defaults to false.COALESCE_MCP_SKILLS_DIRDirectory for customizable AI skill resources. When set, reads context resources from this directory and seeds defaults on first run. Users can augment or override any skill.SNOWFLAKE_ACCOUNTSnowflake account identifier (e.g., `abc12345.us-east-1`). Required by the local `coa` CLI and `coa doctor`; not used by the MCP's REST run path. (required for run tools)SNOWFLAKE_USERNAMESnowflake account username (required for run tools)SNOWFLAKE_KEY_PAIR_KEYPath to PEM-encoded private key (required if SNOWFLAKE_PAT not set)SNOWFLAKE_PATsecret Snowflake Programmatic Access Token (alternative to key pair)SNOWFLAKE_KEY_PAIR_PASSsecret Passphrase for encrypted keysSNOWFLAKE_WAREHOUSESnowflake compute warehouse (required for run tools)SNOWFLAKE_ROLESnowflake user role (required for run tools)
Frequently asked questions
What is io.github.Coalesce-Software-Inc/coalesce-transform?
MCP server for managing Coalesce Transform workspaces, nodes, pipelines, and runs.
How do I install io.github.Coalesce-Software-Inc/coalesce-transform?
It runs on your machine. In Claude Code: claude mcp add coalesce-transform -e 'COALESCE_ACCESS_TOKEN=<your coalesce_access_token>' -e 'COALESCE_PROFILE=<COALESCE_PROFILE>' -e 'COALESCE_BASE_URL=<COALESCE_BASE_URL>' -e 'COALESCE_ORG_ID=<COALESCE_ORG_ID>' -e 'COALESCE_REPO_PATH=<COALESCE_REPO_PATH>' -e 'COALESCE_CACHE_DIR=<COALESCE_CACHE_DIR>' -e 'COALESCE_MCP_AUTO_CACHE_MAX_BYTES=<COALESCE_MCP_AUTO_CACHE_MAX_BYTES>' -e 'COALESCE_MCP_INLINE_RESPONSES=<COALESCE_MCP_INLINE_RESPONSES>' -e 'COALESCE_MCP_LINEAGE_TTL_MS=<COALESCE_MCP_LINEAGE_TTL_MS>' -e 'COALESCE_MCP_MAX_REQUEST_BODY_BYTES=<COALESCE_MCP_MAX_REQUEST_BODY_BYTES>' -e 'COALESCE_MCP_REQUEST_TIMEOUT_MS=<COALESCE_MCP_REQUEST_TIMEOUT_MS>' -e 'COALESCE_MCP_DETAIL_FETCH_TIMEOUT_MS=<COALESCE_MCP_DETAIL_FETCH_TIMEOUT_MS>' -e 'COALESCE_MCP_NODE_TYPE_RANKING_TIMEOUT_MS=<COALESCE_MCP_NODE_TYPE_RANKING_TIMEOUT_MS>' -e 'COALESCE_MCP_INVENTORY_CACHE_TTL_MS=<COALESCE_MCP_INVENTORY_CACHE_TTL_MS>' -e 'COALESCE_MCP_NODE_INDEX_CACHE_TTL_MS=<COALESCE_MCP_NODE_INDEX_CACHE_TTL_MS>' -e 'COALESCE_MCP_NODE_DETAIL_CACHE_TTL_MS=<COALESCE_MCP_NODE_DETAIL_CACHE_TTL_MS>' -e 'COALESCE_MCP_READ_ONLY=<COALESCE_MCP_READ_ONLY>' -e 'COALESCE_MCP_SKILLS_DIR=<COALESCE_MCP_SKILLS_DIR>' -e 'SNOWFLAKE_ACCOUNT=<SNOWFLAKE_ACCOUNT>' -e 'SNOWFLAKE_USERNAME=<SNOWFLAKE_USERNAME>' -e 'SNOWFLAKE_KEY_PAIR_KEY=<SNOWFLAKE_KEY_PAIR_KEY>' -e 'SNOWFLAKE_PAT=<your snowflake_pat>' -e 'SNOWFLAKE_KEY_PAIR_PASS=<your snowflake_key_pair_pass>' -e 'SNOWFLAKE_WAREHOUSE=<SNOWFLAKE_WAREHOUSE>' -e 'SNOWFLAKE_ROLE=<SNOWFLAKE_ROLE>' -- npx -y coalesce-transform-mcp@0.10.1. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.Coalesce-Software-Inc/coalesce-transform need an API key?
Yes. It expects COALESCE_ACCESS_TOKEN, SNOWFLAKE_PAT, SNOWFLAKE_KEY_PAIR_PASS, which you set in its configuration.
Is io.github.Coalesce-Software-Inc/coalesce-transform open source?
Its code is public on GitHub, but the repository does not declare a standard license.
Who maintains io.github.Coalesce-Software-Inc/coalesce-transform?
It is published by Coalesce-Software-Inc. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.