refactor(mcp): remove Sombra REST client and all REST-backed tools#83
refactor(mcp): remove Sombra REST client and all REST-backed tools#83TCJackwood wants to merge 1 commit intomainfrom
Conversation
Remove TranscendRestClient and all MCP tools that depend on Sombra encrypted REST endpoints. These tools cannot function without Sombra and will be re-evaluated once the broader Sombra integration strategy is finalized. Removed tools (18 total): - Preferences: all 6 tools (query, upsert, delete, append/update/delete identifiers) - DSR: 8 tools (submit, employee_submit, poll_status, download_keys, list/enrich_identifiers, respond_access, respond_erasure) - Discovery: 2 tools (classify_text, ner_extract) - Consent: 2 tools (get_preferences, set_preferences) Remaining tools: 52 (all GraphQL-only)
@transcend-io/cli
@transcend-io/privacy-types
@transcend-io/sdk
@transcend-io/utils
@transcend-io/mcp-server
@transcend-io/mcp-server-admin
@transcend-io/mcp-server-assessments
@transcend-io/mcp-server-consent
@transcend-io/mcp-server-core
@transcend-io/mcp-server-discovery
@transcend-io/mcp-server-dsr
@transcend-io/mcp-server-inventory
@transcend-io/mcp-server-preferences
@transcend-io/mcp-server-workflows
commit: |
michaelfarrell76
left a comment
There was a problem hiding this comment.
hm im not sure we actually want to delete these, we can still use these in the MCP it may be better to parameterize the mcp server with a flag that can determine whether or not sombra is available, if sombra is available it conditionally adds the set of mcp functions that use sombra, and the in-app agentic assist would not set this
|
Yeah I floundered on whether we keep them and make them essentially stubs so, when the AI tries to call that tool, it immediately returns with a canned response about how this tool isn't available yet but will be in the future, then we can eventually add the Sombra encrytion logic back in to re-enable them properly in the future... But removing them entirely felt fine for now to stay unblocked and moving forward. I'm not sure we really even have a concrete plan for how to manage multi-tenant customer STS instances, or MTS instances, or anything? Open to leaving them in if you have a good idea of how we can do that and keep unencrypted payloads out of our backend and the AI Agent implementation as a whole 🤷 |
Summary
TranscendRestClientand the entire Sombra REST client infrastructure frommcp-server-core, eliminating theTRANSCEND_API_URLenvironment variable andrestproperty fromToolClients.These tools cannot function without Sombra encrypted communications and will be re-evaluated once the broader Sombra integration strategy is finalized. All remaining 52 tools are GraphQL-only and unaffected.
Removed tools
preferences_query,preferences_upsert,preferences_delete,preferences_append_identifiers,preferences_update_identifiers,preferences_delete_identifiersdsr_submit,dsr_employee_submit,dsr_poll_status,dsr_download_keys,dsr_list_identifiers,dsr_enrich_identifiers,dsr_respond_access,dsr_respond_erasurediscovery_classify_text,discovery_ner_extractconsent_get_preferences,consent_set_preferencesKey file changes
mcp-server-core/src/clients/rest-client.ts(366 lines)ToolClientsinterface,create-server.ts, all domaincli.tsfiles,registry.ts, umbrellacli.tsTest plan
pnpm run --filter './packages/mcp/**' build)pnpm run --filter './packages/mcp/**' test)Made with Cursor