@transcend-io/mcp 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -14
- package/dist/cli.mjs +2 -2
- package/dist/cli.mjs.map +1 -1
- package/package.json +10 -10
package/README.md
CHANGED
|
@@ -39,15 +39,15 @@ This starts a Streamable HTTP server at `http://127.0.0.1:3000/mcp` with a healt
|
|
|
39
39
|
|
|
40
40
|
### Environment variables
|
|
41
41
|
|
|
42
|
-
| Variable | Required | Default | Description
|
|
43
|
-
| ------------------------------ | ----------- | ------------------------------------------ |
|
|
44
|
-
| `TRANSCEND_API_KEY` | Yes (stdio) | — | Transcend API key (HTTP: fallback if no header)
|
|
45
|
-
| `TRANSCEND_API_URL` | No | `https://
|
|
46
|
-
| `
|
|
47
|
-
| `TRANSCEND_HTTP_PORT` | No | `3000` | HTTP listen port
|
|
48
|
-
| `TRANSCEND_HTTP_HOST` | No | `127.0.0.1` | HTTP listen host
|
|
49
|
-
| `TRANSCEND_MCP_CORS_ORIGINS` | No | — | Comma-separated allowed CORS origins
|
|
50
|
-
| `TRANSCEND_MCP_SESSION_TTL_MS` | No | `1800000` | Idle session timeout (ms)
|
|
42
|
+
| Variable | Required | Default | Description |
|
|
43
|
+
| ------------------------------ | ----------- | ------------------------------------------ | -------------------------------------------------- |
|
|
44
|
+
| `TRANSCEND_API_KEY` | Yes (stdio) | — | Transcend API key (HTTP: fallback if no header) |
|
|
45
|
+
| `TRANSCEND_API_URL` | No | `https://api.transcend.io` | GraphQL backend API URL (matches CLI convention) |
|
|
46
|
+
| `SOMBRA_URL` | No | `https://multi-tenant.sombra.transcend.io` | Sombra REST API URL (matches CLI / SDK convention) |
|
|
47
|
+
| `TRANSCEND_HTTP_PORT` | No | `3000` | HTTP listen port |
|
|
48
|
+
| `TRANSCEND_HTTP_HOST` | No | `127.0.0.1` | HTTP listen host |
|
|
49
|
+
| `TRANSCEND_MCP_CORS_ORIGINS` | No | — | Comma-separated allowed CORS origins |
|
|
50
|
+
| `TRANSCEND_MCP_SESSION_TTL_MS` | No | `1800000` | Idle session timeout (ms) |
|
|
51
51
|
|
|
52
52
|
### MCP client configuration (stdio)
|
|
53
53
|
|
|
@@ -88,11 +88,11 @@ See [CONTRIBUTING.md](../../../CONTRIBUTING.md#mcp-servers) for workspace layout
|
|
|
88
88
|
|
|
89
89
|
### Environment variables
|
|
90
90
|
|
|
91
|
-
| Variable
|
|
92
|
-
|
|
|
93
|
-
| `TRANSCEND_API_KEY`
|
|
94
|
-
| `TRANSCEND_API_URL`
|
|
95
|
-
| `
|
|
91
|
+
| Variable | Required | Default | Description |
|
|
92
|
+
| ------------------- | -------- | ------------------------------------------ | -------------------------------------------------- |
|
|
93
|
+
| `TRANSCEND_API_KEY` | Yes | — | Transcend API key |
|
|
94
|
+
| `TRANSCEND_API_URL` | No | `https://api.transcend.io` | GraphQL backend API URL (matches CLI convention) |
|
|
95
|
+
| `SOMBRA_URL` | No | `https://multi-tenant.sombra.transcend.io` | Sombra REST API URL (matches CLI / SDK convention) |
|
|
96
96
|
|
|
97
97
|
**Monorepo:** keep these in root **`secret.env`** (from [`secret.env.example`](../../../secret.env.example)); see **Run from the monorepo**.
|
|
98
98
|
|
package/dist/cli.mjs
CHANGED
|
@@ -13,8 +13,8 @@ function createToolRegistry(auth, sombraUrl, graphqlUrl) {
|
|
|
13
13
|
async function main() {
|
|
14
14
|
const logger = new SimpleLogger();
|
|
15
15
|
const config = parseTransportArgs();
|
|
16
|
-
const sombraUrl = process.env.
|
|
17
|
-
const graphqlUrl = process.env.
|
|
16
|
+
const sombraUrl = process.env.SOMBRA_URL || "https://multi-tenant.sombra.transcend.io";
|
|
17
|
+
const graphqlUrl = process.env.TRANSCEND_API_URL || "https://api.transcend.io";
|
|
18
18
|
if (config.transport === "http") {
|
|
19
19
|
await runMcpHttp({
|
|
20
20
|
name: "transcend-mcp",
|
package/dist/cli.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.mjs","names":[],"sources":["../src/cli.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';\nimport {\n buildMcpServer,\n parseTransportArgs,\n resolveAuth,\n runMcpHttp,\n SimpleLogger,\n TranscendRestClient,\n type AuthCredentials,\n} from '@transcend-io/mcp-server-base';\n\nimport { TranscendGraphQLClient } from './graphql-client.js';\nimport { ToolRegistry } from './registry.js';\n\nconst VERSION = '3.0.2';\n\nfunction createToolRegistry(\n auth: AuthCredentials | null,\n sombraUrl: string,\n graphqlUrl: string,\n): ToolRegistry {\n const restClient = new TranscendRestClient(auth, sombraUrl);\n const graphqlClient = new TranscendGraphQLClient(auth, graphqlUrl);\n return new ToolRegistry({ rest: restClient, graphql: graphqlClient });\n}\n\nasync function main(): Promise<void> {\n const logger = new SimpleLogger();\n const config = parseTransportArgs();\n const sombraUrl = process.env.
|
|
1
|
+
{"version":3,"file":"cli.mjs","names":[],"sources":["../src/cli.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';\nimport {\n buildMcpServer,\n parseTransportArgs,\n resolveAuth,\n runMcpHttp,\n SimpleLogger,\n TranscendRestClient,\n type AuthCredentials,\n} from '@transcend-io/mcp-server-base';\n\nimport { TranscendGraphQLClient } from './graphql-client.js';\nimport { ToolRegistry } from './registry.js';\n\nconst VERSION = '3.0.2';\n\nfunction createToolRegistry(\n auth: AuthCredentials | null,\n sombraUrl: string,\n graphqlUrl: string,\n): ToolRegistry {\n const restClient = new TranscendRestClient(auth, sombraUrl);\n const graphqlClient = new TranscendGraphQLClient(auth, graphqlUrl);\n return new ToolRegistry({ rest: restClient, graphql: graphqlClient });\n}\n\nasync function main(): Promise<void> {\n const logger = new SimpleLogger();\n const config = parseTransportArgs();\n const sombraUrl = process.env.SOMBRA_URL || 'https://multi-tenant.sombra.transcend.io';\n const graphqlUrl = process.env.TRANSCEND_API_URL || 'https://api.transcend.io';\n\n if (config.transport === 'http') {\n await runMcpHttp(\n {\n name: 'transcend-mcp',\n version: VERSION,\n createServer: async (auth) => {\n logger.info('Creating unified MCP server for new HTTP session...', {\n sombraUrl,\n graphqlUrl,\n authType: auth?.type ?? 'none',\n });\n const registry = createToolRegistry(auth, sombraUrl, graphqlUrl);\n return buildMcpServer({\n name: 'transcend-mcp',\n version: VERSION,\n tools: registry.getAllTools(),\n });\n },\n },\n config,\n );\n return;\n }\n\n // stdio mode\n const auth = resolveAuth();\n logger.info('Initializing Transcend API clients...', { sombraUrl, graphqlUrl });\n\n const toolRegistry = createToolRegistry(auth, sombraUrl, graphqlUrl);\n\n logger.info(\n `Registered ${toolRegistry.getToolCount()} tools across ${toolRegistry.getCategories().length} categories`,\n {\n categories: toolRegistry.getCategories(),\n toolCount: toolRegistry.getToolCount(),\n },\n );\n\n const server = buildMcpServer({\n name: 'transcend-mcp',\n version: VERSION,\n tools: toolRegistry.getAllTools(),\n });\n\n logger.info(`Starting Transcend MCP Server v${VERSION}...`, {\n toolCount: toolRegistry.getToolCount(),\n categories: toolRegistry.getCategories(),\n });\n\n const transport = new StdioServerTransport();\n await server.connect(transport);\n\n logger.info('Transcend MCP Server started successfully', {\n sombraUrl,\n graphqlUrl,\n tools: toolRegistry.getToolCount(),\n });\n}\n\nmain().catch((error) => {\n const logger = new SimpleLogger();\n logger.error('Failed to start server:', error);\n process.exit(1);\n});\n"],"mappings":";;;;;AAgBA,MAAM,UAAU;AAEhB,SAAS,mBACP,MACA,WACA,YACc;AAGd,QAAO,IAAI,aAAa;EAAE,MAFP,IAAI,oBAAoB,MAAM,UAAU;EAEf,SADtB,IAAI,uBAAuB,MAAM,WAAW;EACE,CAAC;;AAGvE,eAAe,OAAsB;CACnC,MAAM,SAAS,IAAI,cAAc;CACjC,MAAM,SAAS,oBAAoB;CACnC,MAAM,YAAY,QAAQ,IAAI,cAAc;CAC5C,MAAM,aAAa,QAAQ,IAAI,qBAAqB;AAEpD,KAAI,OAAO,cAAc,QAAQ;AAC/B,QAAM,WACJ;GACE,MAAM;GACN,SAAS;GACT,cAAc,OAAO,SAAS;AAC5B,WAAO,KAAK,uDAAuD;KACjE;KACA;KACA,UAAU,MAAM,QAAQ;KACzB,CAAC;AAEF,WAAO,eAAe;KACpB,MAAM;KACN,SAAS;KACT,OAJe,mBAAmB,MAAM,WAAW,WAAW,CAI9C,aAAa;KAC9B,CAAC;;GAEL,EACD,OACD;AACD;;CAIF,MAAM,OAAO,aAAa;AAC1B,QAAO,KAAK,yCAAyC;EAAE;EAAW;EAAY,CAAC;CAE/E,MAAM,eAAe,mBAAmB,MAAM,WAAW,WAAW;AAEpE,QAAO,KACL,cAAc,aAAa,cAAc,CAAC,gBAAgB,aAAa,eAAe,CAAC,OAAO,cAC9F;EACE,YAAY,aAAa,eAAe;EACxC,WAAW,aAAa,cAAc;EACvC,CACF;CAED,MAAM,SAAS,eAAe;EAC5B,MAAM;EACN,SAAS;EACT,OAAO,aAAa,aAAa;EAClC,CAAC;AAEF,QAAO,KAAK,kCAAkC,QAAQ,MAAM;EAC1D,WAAW,aAAa,cAAc;EACtC,YAAY,aAAa,eAAe;EACzC,CAAC;CAEF,MAAM,YAAY,IAAI,sBAAsB;AAC5C,OAAM,OAAO,QAAQ,UAAU;AAE/B,QAAO,KAAK,6CAA6C;EACvD;EACA;EACA,OAAO,aAAa,cAAc;EACnC,CAAC;;AAGJ,MAAM,CAAC,OAAO,UAAU;AACP,KAAI,cAAc,CAC1B,MAAM,2BAA2B,MAAM;AAC9C,SAAQ,KAAK,EAAE;EACf"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@transcend-io/mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Transcend MCP Server — unified server with all domain tools.",
|
|
5
5
|
"homepage": "https://github.com/transcend-io/tools/tree/main/packages/mcp/mcp",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -32,15 +32,15 @@
|
|
|
32
32
|
"dependencies": {
|
|
33
33
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
34
34
|
"zod": "^4.3.6",
|
|
35
|
-
"@transcend-io/mcp-server-admin": "0.
|
|
36
|
-
"@transcend-io/mcp-server-assessment": "0.
|
|
37
|
-
"@transcend-io/mcp-server-base": "0.
|
|
38
|
-
"@transcend-io/mcp-server-consent": "0.
|
|
39
|
-
"@transcend-io/mcp-server-discovery": "0.
|
|
40
|
-
"@transcend-io/mcp-server-dsr": "0.
|
|
41
|
-
"@transcend-io/mcp-server-inventory": "0.
|
|
42
|
-
"@transcend-io/mcp-server-preferences": "0.
|
|
43
|
-
"@transcend-io/mcp-server-workflows": "0.
|
|
35
|
+
"@transcend-io/mcp-server-admin": "0.3.0",
|
|
36
|
+
"@transcend-io/mcp-server-assessment": "0.3.0",
|
|
37
|
+
"@transcend-io/mcp-server-base": "0.3.0",
|
|
38
|
+
"@transcend-io/mcp-server-consent": "0.2.0",
|
|
39
|
+
"@transcend-io/mcp-server-discovery": "0.3.0",
|
|
40
|
+
"@transcend-io/mcp-server-dsr": "0.3.0",
|
|
41
|
+
"@transcend-io/mcp-server-inventory": "0.3.0",
|
|
42
|
+
"@transcend-io/mcp-server-preferences": "0.3.0",
|
|
43
|
+
"@transcend-io/mcp-server-workflows": "0.3.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
46
|
"@arethetypeswrong/cli": "^0.18.2",
|