@confluentinc/mcp-confluent 1.0.3 → 1.0.5

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.
Files changed (92) hide show
  1. package/README.md +176 -24
  2. package/dist/confluent/client-manager.d.ts +9 -0
  3. package/dist/confluent/client-manager.d.ts.map +1 -1
  4. package/dist/confluent/client-manager.js +22 -0
  5. package/dist/confluent/client-manager.js.map +1 -1
  6. package/dist/confluent/middleware.d.ts +1 -0
  7. package/dist/confluent/middleware.d.ts.map +1 -1
  8. package/dist/confluent/middleware.js.map +1 -1
  9. package/dist/confluent/tools/handlers/environments/read-environment-handler.d.ts.map +1 -1
  10. package/dist/confluent/tools/handlers/environments/read-environment-handler.js +1 -1
  11. package/dist/confluent/tools/handlers/environments/read-environment-handler.js.map +1 -1
  12. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts +11 -0
  13. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.d.ts.map +1 -0
  14. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js +81 -0
  15. package/dist/confluent/tools/handlers/tableflow/catalog/create-tableflow-catalog-integration-handler.js.map +1 -0
  16. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts +11 -0
  17. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.d.ts.map +1 -0
  18. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js +64 -0
  19. package/dist/confluent/tools/handlers/tableflow/catalog/delete-tableflow-catalog-integration-handler.js.map +1 -0
  20. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts +11 -0
  21. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.d.ts.map +1 -0
  22. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js +74 -0
  23. package/dist/confluent/tools/handlers/tableflow/catalog/list-tableflow-catalog-integrations-handler.js.map +1 -0
  24. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts +11 -0
  25. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.d.ts.map +1 -0
  26. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js +64 -0
  27. package/dist/confluent/tools/handlers/tableflow/catalog/read-tableflow-catalog-integration-handler.js.map +1 -0
  28. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts +11 -0
  29. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.d.ts.map +1 -0
  30. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js +81 -0
  31. package/dist/confluent/tools/handlers/tableflow/catalog/update-tableflow-catalog-integration-handler.js.map +1 -0
  32. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts +11 -0
  33. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.d.ts.map +1 -0
  34. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js +65 -0
  35. package/dist/confluent/tools/handlers/tableflow/list-tableflow-regions-handler.js.map +1 -0
  36. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts +11 -0
  37. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.d.ts.map +1 -0
  38. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js +96 -0
  39. package/dist/confluent/tools/handlers/tableflow/topic/create-tableflow-topic-handler.js.map +1 -0
  40. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts +11 -0
  41. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.d.ts.map +1 -0
  42. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js +66 -0
  43. package/dist/confluent/tools/handlers/tableflow/topic/delete-tableflow-topic-handler.js.map +1 -0
  44. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts +11 -0
  45. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.d.ts.map +1 -0
  46. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js +74 -0
  47. package/dist/confluent/tools/handlers/tableflow/topic/list-tableflow-topics-handler.js.map +1 -0
  48. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts +11 -0
  49. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.d.ts.map +1 -0
  50. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js +66 -0
  51. package/dist/confluent/tools/handlers/tableflow/topic/read-tableflow-topic-handler.js.map +1 -0
  52. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts +11 -0
  53. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.d.ts.map +1 -0
  54. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js +104 -0
  55. package/dist/confluent/tools/handlers/tableflow/topic/update-tableflow-topic-handler.js.map +1 -0
  56. package/dist/confluent/tools/tool-factory.d.ts.map +1 -1
  57. package/dist/confluent/tools/tool-factory.js +38 -1
  58. package/dist/confluent/tools/tool-factory.js.map +1 -1
  59. package/dist/confluent/tools/tool-name.d.ts +12 -1
  60. package/dist/confluent/tools/tool-name.d.ts.map +1 -1
  61. package/dist/confluent/tools/tool-name.js +11 -0
  62. package/dist/confluent/tools/tool-name.js.map +1 -1
  63. package/dist/env-schema.d.ts +15 -0
  64. package/dist/env-schema.d.ts.map +1 -1
  65. package/dist/env-schema.js +27 -3
  66. package/dist/env-schema.js.map +1 -1
  67. package/dist/env.d.ts +5 -0
  68. package/dist/env.d.ts.map +1 -1
  69. package/dist/index.js +6 -2
  70. package/dist/index.js.map +1 -1
  71. package/dist/mcp/transports/http.d.ts +4 -3
  72. package/dist/mcp/transports/http.d.ts.map +1 -1
  73. package/dist/mcp/transports/http.js +76 -21
  74. package/dist/mcp/transports/http.js.map +1 -1
  75. package/dist/mcp/transports/manager.d.ts +2 -2
  76. package/dist/mcp/transports/manager.d.ts.map +1 -1
  77. package/dist/mcp/transports/manager.js +10 -10
  78. package/dist/mcp/transports/manager.js.map +1 -1
  79. package/dist/mcp/transports/ping.d.ts +36 -0
  80. package/dist/mcp/transports/ping.d.ts.map +1 -0
  81. package/dist/mcp/transports/ping.js +29 -0
  82. package/dist/mcp/transports/ping.js.map +1 -0
  83. package/dist/mcp/transports/server.d.ts.map +1 -1
  84. package/dist/mcp/transports/server.js +2 -1
  85. package/dist/mcp/transports/server.js.map +1 -1
  86. package/dist/mcp/transports/sse.d.ts +5 -3
  87. package/dist/mcp/transports/sse.d.ts.map +1 -1
  88. package/dist/mcp/transports/sse.js +20 -4
  89. package/dist/mcp/transports/sse.js.map +1 -1
  90. package/dist/print-md-schema.js +1 -1
  91. package/dist/print-md-schema.js.map +1 -1
  92. package/package.json +24 -23
@@ -1 +1 @@
1
- {"version":3,"file":"tool-name.d.ts","sourceRoot":"","sources":["../../../src/confluent/tools/tool-name.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAClB,WAAW,gBAAgB;IAC3B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;IACnC,gBAAgB,qBAAqB;IACrC,qBAAqB,0BAA0B;IAC/C,sBAAsB,2BAA2B;IACjD,oBAAoB,yBAAyB;IAC7C,uBAAuB,4BAA4B;IACnD,eAAe,oBAAoB;IACnC,cAAc,mBAAmB;IACjC,gBAAgB,qBAAqB;IACrC,gBAAgB,qBAAqB;IACrC,oBAAoB,yBAAyB;IAC7C,qBAAqB,0BAA0B;IAC/C,iBAAiB,sBAAsB;IACvC,UAAU,eAAe;IACzB,sBAAsB,2BAA2B;IACjD,iBAAiB,sBAAsB;IACvC,SAAS,cAAc;IACvB,kBAAkB,uBAAuB;IACzC,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;IACvC,gBAAgB,qBAAqB;IACrC,YAAY,iBAAiB;IAC7B,gBAAgB,qBAAqB;CACtC"}
1
+ {"version":3,"file":"tool-name.d.ts","sourceRoot":"","sources":["../../../src/confluent/tools/tool-name.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAClB,WAAW,gBAAgB;IAC3B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;IACnC,gBAAgB,qBAAqB;IACrC,qBAAqB,0BAA0B;IAC/C,sBAAsB,2BAA2B;IACjD,oBAAoB,yBAAyB;IAC7C,uBAAuB,4BAA4B;IACnD,eAAe,oBAAoB;IACnC,cAAc,mBAAmB;IACjC,gBAAgB,qBAAqB;IACrC,gBAAgB,qBAAqB;IACrC,oBAAoB,yBAAyB;IAC7C,qBAAqB,0BAA0B;IAC/C,iBAAiB,sBAAsB;IACvC,UAAU,eAAe;IACzB,sBAAsB,2BAA2B;IACjD,iBAAiB,sBAAsB;IACvC,SAAS,cAAc;IACvB,kBAAkB,uBAAuB;IACzC,aAAa,kBAAkB;IAC/B,iBAAiB,sBAAsB;IACvC,gBAAgB,qBAAqB;IACrC,YAAY,iBAAiB;IAC7B,gBAAgB,qBAAqB;IACrC,sBAAsB,2BAA2B;IACjD,sBAAsB,2BAA2B;IACjD,qBAAqB,0BAA0B;IAC/C,oBAAoB,yBAAyB;IAC7C,sBAAsB,2BAA2B;IACjD,sBAAsB,2BAA2B;IACjD,oCAAoC,yCAAyC;IAC7E,mCAAmC,wCAAwC;IAC3E,kCAAkC,uCAAuC;IACzE,oCAAoC,yCAAyC;IAC7E,oCAAoC,yCAAyC;CAC9E"}
@@ -26,5 +26,16 @@ export var ToolName;
26
26
  ToolName["READ_ENVIRONMENT"] = "read-environment";
27
27
  ToolName["LIST_SCHEMAS"] = "list-schemas";
28
28
  ToolName["GET_TOPIC_CONFIG"] = "get-topic-config";
29
+ ToolName["CREATE_TABLEFLOW_TOPIC"] = "create-tableflow-topic";
30
+ ToolName["LIST_TABLEFLOW_REGIONS"] = "list-tableflow-regions";
31
+ ToolName["LIST_TABLEFLOW_TOPICS"] = "list-tableflow-topics";
32
+ ToolName["READ_TABLEFLOW_TOPIC"] = "read-tableflow-topic";
33
+ ToolName["UPDATE_TABLEFLOW_TOPIC"] = "update-tableflow-topic";
34
+ ToolName["DELETE_TABLEFLOW_TOPIC"] = "delete-tableflow-topic";
35
+ ToolName["CREATE_TABLEFLOW_CATALOG_INTEGRATION"] = "create-tableflow-catalog-integration";
36
+ ToolName["LIST_TABLEFLOW_CATALOG_INTEGRATIONS"] = "list-tableflow-catalog-integrations";
37
+ ToolName["READ_TABLEFLOW_CATALOG_INTEGRATION"] = "read-tableflow-catalog-integration";
38
+ ToolName["UPDATE_TABLEFLOW_CATALOG_INTEGRATION"] = "update-tableflow-catalog-integration";
39
+ ToolName["DELETE_TABLEFLOW_CATALOG_INTEGRATION"] = "delete-tableflow-catalog-integration";
29
40
  })(ToolName || (ToolName = {}));
30
41
  //# sourceMappingURL=tool-name.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-name.js","sourceRoot":"","sources":["../../../src/confluent/tools/tool-name.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,QA2BX;AA3BD,WAAY,QAAQ;IAClB,uCAA2B,CAAA;IAC3B,2CAA+B,CAAA;IAC/B,2CAA+B,CAAA;IAC/B,+CAAmC,CAAA;IACnC,iDAAqC,CAAA;IACrC,2DAA+C,CAAA;IAC/C,6DAAiD,CAAA;IACjD,yDAA6C,CAAA;IAC7C,+DAAmD,CAAA;IACnD,+CAAmC,CAAA;IACnC,6CAAiC,CAAA;IACjC,iDAAqC,CAAA;IACrC,iDAAqC,CAAA;IACrC,yDAA6C,CAAA;IAC7C,2DAA+C,CAAA;IAC/C,mDAAuC,CAAA;IACvC,qCAAyB,CAAA;IACzB,6DAAiD,CAAA;IACjD,mDAAuC,CAAA;IACvC,mCAAuB,CAAA;IACvB,qDAAyC,CAAA;IACzC,2CAA+B,CAAA;IAC/B,mDAAuC,CAAA;IACvC,iDAAqC,CAAA;IACrC,yCAA6B,CAAA;IAC7B,iDAAqC,CAAA;AACvC,CAAC,EA3BW,QAAQ,KAAR,QAAQ,QA2BnB"}
1
+ {"version":3,"file":"tool-name.js","sourceRoot":"","sources":["../../../src/confluent/tools/tool-name.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,QAsCX;AAtCD,WAAY,QAAQ;IAClB,uCAA2B,CAAA;IAC3B,2CAA+B,CAAA;IAC/B,2CAA+B,CAAA;IAC/B,+CAAmC,CAAA;IACnC,iDAAqC,CAAA;IACrC,2DAA+C,CAAA;IAC/C,6DAAiD,CAAA;IACjD,yDAA6C,CAAA;IAC7C,+DAAmD,CAAA;IACnD,+CAAmC,CAAA;IACnC,6CAAiC,CAAA;IACjC,iDAAqC,CAAA;IACrC,iDAAqC,CAAA;IACrC,yDAA6C,CAAA;IAC7C,2DAA+C,CAAA;IAC/C,mDAAuC,CAAA;IACvC,qCAAyB,CAAA;IACzB,6DAAiD,CAAA;IACjD,mDAAuC,CAAA;IACvC,mCAAuB,CAAA;IACvB,qDAAyC,CAAA;IACzC,2CAA+B,CAAA;IAC/B,mDAAuC,CAAA;IACvC,iDAAqC,CAAA;IACrC,yCAA6B,CAAA;IAC7B,iDAAqC,CAAA;IACrC,6DAAiD,CAAA;IACjD,6DAAiD,CAAA;IACjD,2DAA+C,CAAA;IAC/C,yDAA6C,CAAA;IAC7C,6DAAiD,CAAA;IACjD,6DAAiD,CAAA;IACjD,yFAA6E,CAAA;IAC7E,uFAA2E,CAAA;IAC3E,qFAAyE,CAAA;IACzE,yFAA6E,CAAA;IAC7E,yFAA6E,CAAA;AAC/E,CAAC,EAtCW,QAAQ,KAAR,QAAQ,QAsCnB"}
@@ -2,6 +2,9 @@ import { z } from "zod";
2
2
  export declare const combinedSchema: z.ZodObject<{
3
3
  HTTP_PORT: z.ZodDefault<z.ZodNumber>;
4
4
  HTTP_HOST: z.ZodDefault<z.ZodString>;
5
+ HTTP_MCP_ENDPOINT_PATH: z.ZodDefault<z.ZodString>;
6
+ SSE_MCP_ENDPOINT_PATH: z.ZodDefault<z.ZodString>;
7
+ SSE_MCP_MESSAGE_ENDPOINT_PATH: z.ZodDefault<z.ZodString>;
5
8
  LOG_LEVEL: z.ZodDefault<z.ZodEffects<z.ZodEnum<["info" | "fatal" | "error" | "warn" | "debug" | "trace", ...("info" | "fatal" | "error" | "warn" | "debug" | "trace")[]]>, "info" | "fatal" | "error" | "warn" | "debug" | "trace", unknown>>;
6
9
  BOOTSTRAP_SERVERS: z.ZodOptional<z.ZodString>;
7
10
  KAFKA_API_KEY: z.ZodOptional<z.ZodString>;
@@ -12,6 +15,8 @@ export declare const combinedSchema: z.ZodObject<{
12
15
  CONFLUENT_CLOUD_API_SECRET: z.ZodOptional<z.ZodString>;
13
16
  SCHEMA_REGISTRY_API_KEY: z.ZodOptional<z.ZodString>;
14
17
  SCHEMA_REGISTRY_API_SECRET: z.ZodOptional<z.ZodString>;
18
+ TABLEFLOW_API_KEY: z.ZodOptional<z.ZodString>;
19
+ TABLEFLOW_API_SECRET: z.ZodOptional<z.ZodString>;
15
20
  } & {
16
21
  FLINK_ENV_ID: z.ZodOptional<z.ZodString>;
17
22
  FLINK_ORG_ID: z.ZodOptional<z.ZodString>;
@@ -28,6 +33,9 @@ export declare const combinedSchema: z.ZodObject<{
28
33
  LOG_LEVEL: "info" | "fatal" | "error" | "warn" | "debug" | "trace";
29
34
  HTTP_PORT: number;
30
35
  HTTP_HOST: string;
36
+ HTTP_MCP_ENDPOINT_PATH: string;
37
+ SSE_MCP_ENDPOINT_PATH: string;
38
+ SSE_MCP_MESSAGE_ENDPOINT_PATH: string;
31
39
  BOOTSTRAP_SERVERS?: string | undefined;
32
40
  KAFKA_API_KEY?: string | undefined;
33
41
  KAFKA_API_SECRET?: string | undefined;
@@ -37,6 +45,8 @@ export declare const combinedSchema: z.ZodObject<{
37
45
  CONFLUENT_CLOUD_API_SECRET?: string | undefined;
38
46
  SCHEMA_REGISTRY_API_KEY?: string | undefined;
39
47
  SCHEMA_REGISTRY_API_SECRET?: string | undefined;
48
+ TABLEFLOW_API_KEY?: string | undefined;
49
+ TABLEFLOW_API_SECRET?: string | undefined;
40
50
  FLINK_ENV_ID?: string | undefined;
41
51
  FLINK_ORG_ID?: string | undefined;
42
52
  FLINK_REST_ENDPOINT?: string | undefined;
@@ -52,6 +62,9 @@ export declare const combinedSchema: z.ZodObject<{
52
62
  LOG_LEVEL?: unknown;
53
63
  HTTP_PORT?: number | undefined;
54
64
  HTTP_HOST?: string | undefined;
65
+ HTTP_MCP_ENDPOINT_PATH?: string | undefined;
66
+ SSE_MCP_ENDPOINT_PATH?: string | undefined;
67
+ SSE_MCP_MESSAGE_ENDPOINT_PATH?: string | undefined;
55
68
  BOOTSTRAP_SERVERS?: string | undefined;
56
69
  KAFKA_API_KEY?: string | undefined;
57
70
  KAFKA_API_SECRET?: string | undefined;
@@ -61,6 +74,8 @@ export declare const combinedSchema: z.ZodObject<{
61
74
  CONFLUENT_CLOUD_API_SECRET?: string | undefined;
62
75
  SCHEMA_REGISTRY_API_KEY?: string | undefined;
63
76
  SCHEMA_REGISTRY_API_SECRET?: string | undefined;
77
+ TABLEFLOW_API_KEY?: string | undefined;
78
+ TABLEFLOW_API_SECRET?: string | undefined;
64
79
  FLINK_ENV_ID?: string | undefined;
65
80
  FLINK_ORG_ID?: string | undefined;
66
81
  FLINK_REST_ENDPOINT?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"env-schema.d.ts","sourceRoot":"","sources":["../src/env-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAuLxB,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAgC,CAAC;AAG5D,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
1
+ {"version":3,"file":"env-schema.d.ts","sourceRoot":"","sources":["../src/env-schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAyNxB,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAgC,CAAC;AAG5D,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC"}
@@ -7,11 +7,23 @@ const envSchema = z.object({
7
7
  .int()
8
8
  .positive()
9
9
  .describe("Port to use for HTTP transport")
10
- .default(3000),
10
+ .default(8080),
11
11
  HTTP_HOST: z
12
12
  .string()
13
- .describe("Host to bind for HTTP transport")
14
- .default("localhost"),
13
+ .describe("Host to bind for HTTP transport. 0.0.0.0 means all interfaces.")
14
+ .default("0.0.0.0"),
15
+ HTTP_MCP_ENDPOINT_PATH: z
16
+ .string()
17
+ .describe("HTTP endpoint path for MCP transport (e.g., '/mcp', '/invocations')")
18
+ .default("/mcp"),
19
+ SSE_MCP_ENDPOINT_PATH: z
20
+ .string()
21
+ .describe("SSE endpoint path for establishing SSE connections (e.g., '/sse', '/events')")
22
+ .default("/sse"),
23
+ SSE_MCP_MESSAGE_ENDPOINT_PATH: z
24
+ .string()
25
+ .describe("SSE message endpoint path for receiving messages (e.g., '/messages', '/events/messages')")
26
+ .default("/messages"),
15
27
  LOG_LEVEL: z
16
28
  .preprocess((val) => (typeof val === "string" ? val.toLowerCase() : val), z.enum(Object.keys(logLevels)))
17
29
  .describe("Log level for application logging (trace, debug, info, warn, error, fatal)")
@@ -69,6 +81,18 @@ const envSchema = z.object({
69
81
  .trim()
70
82
  .min(1)
71
83
  .optional(),
84
+ TABLEFLOW_API_KEY: z
85
+ .string()
86
+ .describe("Authentication key for accessing Confluent Cloud's Tableflow services")
87
+ .trim()
88
+ .min(1)
89
+ .optional(),
90
+ TABLEFLOW_API_SECRET: z
91
+ .string()
92
+ .describe("Authentication secret paired with TABLEFLOW_API_KEY for secure Tableflow access")
93
+ .trim()
94
+ .min(1)
95
+ .optional(),
72
96
  });
73
97
  // Environment variables that are optional for tools / could be provided at runtime
74
98
  const configSchema = z
@@ -1 +1 @@
1
- {"version":3,"file":"env-schema.js","sourceRoot":"","sources":["../src/env-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env-schema.js","sourceRoot":"","sources":["../src/env-schema.ts"],"names":[],"mappings":"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"}
package/dist/env.d.ts CHANGED
@@ -14,6 +14,9 @@ declare const env: {
14
14
  LOG_LEVEL: "info" | "fatal" | "error" | "warn" | "debug" | "trace";
15
15
  HTTP_PORT: number;
16
16
  HTTP_HOST: string;
17
+ HTTP_MCP_ENDPOINT_PATH: string;
18
+ SSE_MCP_ENDPOINT_PATH: string;
19
+ SSE_MCP_MESSAGE_ENDPOINT_PATH: string;
17
20
  BOOTSTRAP_SERVERS?: string | undefined;
18
21
  KAFKA_API_KEY?: string | undefined;
19
22
  KAFKA_API_SECRET?: string | undefined;
@@ -23,6 +26,8 @@ declare const env: {
23
26
  CONFLUENT_CLOUD_API_SECRET?: string | undefined;
24
27
  SCHEMA_REGISTRY_API_KEY?: string | undefined;
25
28
  SCHEMA_REGISTRY_API_SECRET?: string | undefined;
29
+ TABLEFLOW_API_KEY?: string | undefined;
30
+ TABLEFLOW_API_SECRET?: string | undefined;
26
31
  FLINK_ENV_ID?: string | undefined;
27
32
  FLINK_ORG_ID?: string | undefined;
28
33
  FLINK_REST_ENDPOINT?: string | undefined;
package/dist/env.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAMzD;;;GAGG;AACH,wBAAsB,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,CAQpD;AAED;;GAEG;AACH,wBAAsB,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,CAMpD;AAGD,QAAA,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;CASP,CAAC;AAEH,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAMzD;;;GAGG;AACH,wBAAsB,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,CAQpD;AAED;;GAEG;AACH,wBAAsB,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,CAMpD;AAGD,QAAA,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASP,CAAC;AAEH,eAAe,GAAG,CAAC"}
package/dist/index.js CHANGED
@@ -45,6 +45,10 @@ async function main() {
45
45
  apiKey: env.CONFLUENT_CLOUD_API_KEY,
46
46
  apiSecret: env.CONFLUENT_CLOUD_API_SECRET,
47
47
  },
48
+ tableflow: {
49
+ apiKey: env.TABLEFLOW_API_KEY,
50
+ apiSecret: env.TABLEFLOW_API_SECRET,
51
+ },
48
52
  flink: {
49
53
  apiKey: env.FLINK_API_KEY,
50
54
  apiSecret: env.FLINK_API_SECRET,
@@ -112,7 +116,7 @@ async function main() {
112
116
  const transportManager = new TransportManager(server);
113
117
  // Start all transports with a single call
114
118
  logger.info(`Starting transports: ${cliOptions.transports.join(", ")}`);
115
- await transportManager.start(cliOptions.transports, env.HTTP_PORT, env.HTTP_HOST);
119
+ await transportManager.start(cliOptions.transports, env.HTTP_PORT, env.HTTP_HOST, env.HTTP_MCP_ENDPOINT_PATH, env.SSE_MCP_ENDPOINT_PATH, env.SSE_MCP_MESSAGE_ENDPOINT_PATH);
116
120
  // Set up cleanup handlers
117
121
  const performCleanup = async () => {
118
122
  logger.info("Shutting down...");
@@ -127,7 +131,7 @@ async function main() {
127
131
  process.on("SIGUSR2", performCleanup);
128
132
  }
129
133
  catch (error) {
130
- logger.error({ error }, "Error starting server");
134
+ logger.error({ err: error }, "Error starting server");
131
135
  process.exit(1);
132
136
  }
133
137
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
- import { HttpServer } from "./server.js";
3
- import { Transport } from "./types.js";
2
+ import { HttpServer } from "../../mcp/transports/server.js";
3
+ import { Transport } from "../../mcp/transports/types.js";
4
4
  export declare class HttpTransport implements Transport {
5
5
  private server;
6
6
  private httpServer;
7
+ private httpMcpEndpointPath;
7
8
  private sessions;
8
- constructor(server: McpServer, httpServer: HttpServer);
9
+ constructor(server: McpServer, httpServer: HttpServer, httpMcpEndpointPath?: string);
9
10
  connect(): Promise<void>;
10
11
  disconnect(): Promise<void>;
11
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/mcp/transports/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKpE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAoBvC,qBAAa,aAAc,YAAW,SAAS;IAI3C,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,UAAU;IAJpB,OAAO,CAAC,QAAQ,CAAqD;gBAG3D,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,UAAU;IAG1B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAyHxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAWlC"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/mcp/transports/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAQpE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAsBzD,qBAAa,aAAc,YAAW,SAAS;IAI3C,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,mBAAmB;IAL7B,OAAO,CAAC,QAAQ,CAAqD;gBAG3D,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,UAAU,EACtB,mBAAmB,GAAE,MAAe;IAGxC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAuLxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAWlC"}
@@ -1,5 +1,6 @@
1
1
  import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
2
2
  import { logger } from "../../logger.js";
3
+ import { pingHandler, pingRequestSchema, pingResponseSchema, } from "../../mcp/transports/ping.js";
3
4
  import { randomUUID } from "crypto";
4
5
  const mcpSessionSchema = {
5
6
  type: "object",
@@ -16,15 +17,17 @@ const mcpErrorSchema = {
16
17
  export class HttpTransport {
17
18
  server;
18
19
  httpServer;
20
+ httpMcpEndpointPath;
19
21
  sessions = {};
20
- constructor(server, httpServer) {
22
+ constructor(server, httpServer, httpMcpEndpointPath = "/mcp") {
21
23
  this.server = server;
22
24
  this.httpServer = httpServer;
25
+ this.httpMcpEndpointPath = httpMcpEndpointPath;
23
26
  }
24
27
  async connect() {
25
28
  const fastify = this.httpServer.getInstance();
26
29
  // POST handler for new sessions and message sending
27
- fastify.post("/mcp", {
30
+ fastify.post(this.httpMcpEndpointPath, {
28
31
  schema: {
29
32
  tags: ["mcp"],
30
33
  summary: "Create a new MCP session or send a message",
@@ -42,22 +45,31 @@ export class HttpTransport {
42
45
  }, async (request, reply) => {
43
46
  const sessionId = request.headers["mcp-session-id"];
44
47
  let transport;
45
- if (sessionId && this.sessions[sessionId]) {
46
- transport = this.sessions[sessionId];
48
+ try {
49
+ if (sessionId && this.sessions[sessionId]) {
50
+ transport = this.sessions[sessionId];
51
+ }
52
+ else {
53
+ // Create new session if no session ID provided or session doesn't exist
54
+ const newSessionId = sessionId || randomUUID();
55
+ transport = new StreamableHTTPServerTransport({
56
+ sessionIdGenerator: () => newSessionId,
57
+ onsessioninitialized: (sid) => {
58
+ this.sessions[sid] = transport;
59
+ logger.debug(`MCP session initialized: ${sid}`);
60
+ },
61
+ });
62
+ await this.server.connect(transport);
63
+ }
64
+ await transport.handleRequest(request.raw, reply.raw, request.body);
47
65
  }
48
- else {
49
- transport = new StreamableHTTPServerTransport({
50
- sessionIdGenerator: () => randomUUID(),
51
- onsessioninitialized: (sid) => {
52
- this.sessions[sid] = transport;
53
- },
54
- });
55
- await this.server.connect(transport);
66
+ catch (error) {
67
+ logger.error({ error, sessionId }, "Error handling MCP request");
68
+ reply.status(500).send({ error: "Internal server error" });
56
69
  }
57
- await transport.handleRequest(request.raw, reply.raw, request.body);
58
70
  });
59
71
  // GET handler for session status and message receiving
60
- fastify.get("/mcp", {
72
+ fastify.get(this.httpMcpEndpointPath, {
61
73
  schema: {
62
74
  tags: ["mcp"],
63
75
  summary: "Get session status or receive messages",
@@ -66,7 +78,6 @@ export class HttpTransport {
66
78
  properties: {
67
79
  "mcp-session-id": { type: "string", format: "uuid" },
68
80
  },
69
- required: ["mcp-session-id"],
70
81
  },
71
82
  response: {
72
83
  200: mcpSessionSchema,
@@ -75,15 +86,27 @@ export class HttpTransport {
75
86
  },
76
87
  }, async (request, reply) => {
77
88
  const sessionId = request.headers["mcp-session-id"];
78
- if (!sessionId || !this.sessions[sessionId]) {
79
- reply.status(404).send({ error: "Session not found" });
80
- return;
89
+ try {
90
+ if (!sessionId) {
91
+ reply
92
+ .status(400)
93
+ .send({ error: "mcp-session-id header is required" });
94
+ return;
95
+ }
96
+ if (!this.sessions[sessionId]) {
97
+ reply.status(404).send({ error: "Session not found" });
98
+ return;
99
+ }
100
+ const transport = this.sessions[sessionId];
101
+ await transport.handleRequest(request.raw, reply.raw);
102
+ }
103
+ catch (error) {
104
+ logger.error({ error, sessionId }, "Error handling MCP GET request");
105
+ reply.status(500).send({ error: "Internal server error" });
81
106
  }
82
- const transport = this.sessions[sessionId];
83
- await transport.handleRequest(request.raw, reply.raw);
84
107
  });
85
108
  // DELETE handler for session cleanup
86
- fastify.delete("/mcp", {
109
+ fastify.delete(this.httpMcpEndpointPath, {
87
110
  schema: {
88
111
  tags: ["mcp"],
89
112
  summary: "Delete an MCP session",
@@ -110,6 +133,38 @@ export class HttpTransport {
110
133
  // Clean up the session
111
134
  delete this.sessions[sessionId];
112
135
  });
136
+ // POST ping endpoint for health checks
137
+ fastify.post("/ping", {
138
+ schema: {
139
+ tags: ["mcp"],
140
+ summary: "JSON-RPC 2.0 ping endpoint",
141
+ body: pingRequestSchema,
142
+ response: {
143
+ 200: pingResponseSchema,
144
+ },
145
+ },
146
+ }, pingHandler());
147
+ // Simple health check endpoint
148
+ fastify.get("/", {
149
+ schema: {
150
+ tags: ["mcp"],
151
+ summary: "Health check endpoint",
152
+ response: {
153
+ 200: {
154
+ type: "object",
155
+ properties: {
156
+ status: { type: "string" },
157
+ mcpEndpoint: { type: "string" },
158
+ },
159
+ },
160
+ },
161
+ },
162
+ }, async (request, reply) => {
163
+ reply.send({
164
+ status: "ok",
165
+ mcpEndpoint: this.httpMcpEndpointPath,
166
+ });
167
+ });
113
168
  logger.info("HTTP transport routes registered");
114
169
  }
115
170
  async disconnect() {
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/mcp/transports/http.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,oDAAoD,CAAC;AACnG,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AASpC,MAAM,gBAAgB,GAAG;IACvB,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;KAC9C;CACF,CAAC;AAEF,MAAM,cAAc,GAAG;IACrB,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;KAC1B;CACF,CAAC;AAEF,MAAM,OAAO,aAAa;IAId;IACA;IAJF,QAAQ,GAAkD,EAAE,CAAC;IAErE,YACU,MAAiB,EACjB,UAAsB;QADtB,WAAM,GAAN,MAAM,CAAW;QACjB,eAAU,GAAV,UAAU,CAAY;IAC7B,CAAC;IAEJ,KAAK,CAAC,OAAO;QACX,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;QAE9C,oDAAoD;QACpD,OAAO,CAAC,IAAI,CACV,MAAM,EACN;YACE,MAAM,EAAE;gBACN,IAAI,EAAE,CAAC,KAAK,CAAC;gBACb,OAAO,EAAE,4CAA4C;gBACrD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;qBACrD;iBACF;gBACD,QAAQ,EAAE;oBACR,GAAG,EAAE,gBAAgB;oBACrB,GAAG,EAAE,cAAc;iBACpB;aACF;SACF,EACD,KAAK,EACH,OAAuD,EACvD,KAAmB,EACnB,EAAE;YACF,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YACpD,IAAI,SAAwC,CAAC;YAE7C,IAAI,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1C,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,SAAS,GAAG,IAAI,6BAA6B,CAAC;oBAC5C,kBAAkB,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE;oBACtC,oBAAoB,EAAE,CAAC,GAAW,EAAE,EAAE;wBACpC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;oBACjC,CAAC;iBACF,CAAC,CAAC;gBAEH,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;YAED,MAAM,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACtE,CAAC,CACF,CAAC;QAEF,uDAAuD;QACvD,OAAO,CAAC,GAAG,CACT,MAAM,EACN;YACE,MAAM,EAAE;gBACN,IAAI,EAAE,CAAC,KAAK,CAAC;gBACb,OAAO,EAAE,wCAAwC;gBACjD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;qBACrD;oBACD,QAAQ,EAAE,CAAC,gBAAgB,CAAC;iBAC7B;gBACD,QAAQ,EAAE;oBACR,GAAG,EAAE,gBAAgB;oBACrB,GAAG,EAAE,cAAc;iBACpB;aACF;SACF,EACD,KAAK,EACH,OAAuD,EACvD,KAAmB,EACnB,EAAE;YACF,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YACpD,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5C,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC;gBACvD,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC3C,MAAM,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QACxD,CAAC,CACF,CAAC;QAEF,qCAAqC;QACrC,OAAO,CAAC,MAAM,CACZ,MAAM,EACN;YACE,MAAM,EAAE;gBACN,IAAI,EAAE,CAAC,KAAK,CAAC;gBACb,OAAO,EAAE,uBAAuB;gBAChC,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;qBACrD;oBACD,QAAQ,EAAE,CAAC,gBAAgB,CAAC;iBAC7B;gBACD,QAAQ,EAAE;oBACR,GAAG,EAAE,gBAAgB;oBACrB,GAAG,EAAE,cAAc;iBACpB;aACF;SACF,EACD,KAAK,EACH,OAAuD,EACvD,KAAmB,EACnB,EAAE;YACF,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YACpD,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5C,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC,CAAC;gBACvD,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC3C,MAAM,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YACtD,uBAAuB;YACvB,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC,CACF,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACtD,+BAA+B;QAC/B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YACjD,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;YACtC,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAClC,CAAC;YACD,SAAS,CAAC,KAAK,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/mcp/transports/http.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
- import { TransportType } from "./types.js";
2
+ import { TransportType } from "../../mcp/transports/types.js";
3
3
  export declare class TransportManager {
4
4
  private server;
5
5
  private transports;
6
6
  private httpServer;
7
7
  constructor(server: McpServer);
8
- start(types: TransportType[], port?: number, host?: string): Promise<void>;
8
+ start(types: TransportType[], port?: number, host?: string, httpMcpEndpointPath?: string, sseMcpEndpointPath?: string, sseMcpMessageEndpointPath?: string): Promise<void>;
9
9
  stop(): Promise<void>;
10
10
  private createTransport;
11
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/mcp/transports/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMpE,OAAO,EAAa,aAAa,EAAE,MAAM,YAAY,CAAC;AAEtD,qBAAa,gBAAgB;IAIf,OAAO,CAAC,MAAM;IAH1B,OAAO,CAAC,UAAU,CAA4C;IAC9D,OAAO,CAAC,UAAU,CAA2B;gBAEzB,MAAM,EAAE,SAAS;IAE/B,KAAK,CACT,KAAK,EAAE,aAAa,EAAE,EACtB,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC;IA2CV,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAwBb,eAAe;CAkB9B"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/mcp/transports/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMpE,OAAO,EAAa,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAExE,qBAAa,gBAAgB;IAIf,OAAO,CAAC,MAAM;IAH1B,OAAO,CAAC,UAAU,CAA4C;IAC9D,OAAO,CAAC,UAAU,CAA2B;gBAEzB,MAAM,EAAE,SAAS;IAE/B,KAAK,CACT,KAAK,EAAE,aAAa,EAAE,EACtB,IAAI,CAAC,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,MAAM,EACb,mBAAmB,CAAC,EAAE,MAAM,EAC5B,kBAAkB,CAAC,EAAE,MAAM,EAC3B,yBAAyB,CAAC,EAAE,MAAM,GACjC,OAAO,CAAC,IAAI,CAAC;IAgDV,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAwBb,eAAe;CAgC9B"}
@@ -1,9 +1,9 @@
1
1
  import { logger } from "../../logger.js";
2
- import { HttpTransport } from "./http.js";
3
- import { HttpServer } from "./server.js";
4
- import { SseTransport } from "./sse.js";
5
- import { StdioTransport } from "./stdio.js";
6
- import { TransportType } from "./types.js";
2
+ import { HttpTransport } from "../../mcp/transports/http.js";
3
+ import { HttpServer } from "../../mcp/transports/server.js";
4
+ import { SseTransport } from "../../mcp/transports/sse.js";
5
+ import { StdioTransport } from "../../mcp/transports/stdio.js";
6
+ import { TransportType } from "../../mcp/transports/types.js";
7
7
  export class TransportManager {
8
8
  server;
9
9
  transports = new Map();
@@ -11,7 +11,7 @@ export class TransportManager {
11
11
  constructor(server) {
12
12
  this.server = server;
13
13
  }
14
- async start(types, port, host) {
14
+ async start(types, port, host, httpMcpEndpointPath, sseMcpEndpointPath, sseMcpMessageEndpointPath) {
15
15
  try {
16
16
  const needsHttpServer = types.some((type) => type === TransportType.HTTP || type === TransportType.SSE);
17
17
  // Initialize and prepare HTTP server if needed
@@ -21,7 +21,7 @@ export class TransportManager {
21
21
  }
22
22
  // Create and connect all transports
23
23
  await Promise.all(types.map(async (type) => {
24
- const transport = await this.createTransport(type);
24
+ const transport = await this.createTransport(type, httpMcpEndpointPath, sseMcpEndpointPath, sseMcpMessageEndpointPath);
25
25
  this.transports.set(type, transport);
26
26
  await transport.connect();
27
27
  }));
@@ -64,18 +64,18 @@ export class TransportManager {
64
64
  this.transports.clear();
65
65
  this.httpServer = null;
66
66
  }
67
- async createTransport(type) {
67
+ async createTransport(type, httpMcpEndpointPath, sseMcpEndpointPath, sseMcpMessageEndpointPath) {
68
68
  switch (type) {
69
69
  case "http":
70
70
  if (!this.httpServer) {
71
71
  throw new Error("HTTP server not initialized");
72
72
  }
73
- return new HttpTransport(this.server, this.httpServer);
73
+ return new HttpTransport(this.server, this.httpServer, httpMcpEndpointPath);
74
74
  case "sse":
75
75
  if (!this.httpServer) {
76
76
  throw new Error("HTTP server not initialized");
77
77
  }
78
- return new SseTransport(this.server, this.httpServer);
78
+ return new SseTransport(this.server, this.httpServer, sseMcpEndpointPath, sseMcpMessageEndpointPath);
79
79
  case "stdio":
80
80
  return new StdioTransport(this.server);
81
81
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/mcp/transports/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/mcp/transports/manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import { FastifyReply, FastifyRequest } from "fastify";
2
+ export declare const pingRequestSchema: {
3
+ type: string;
4
+ properties: {
5
+ jsonrpc: {
6
+ type: string;
7
+ enum: string[];
8
+ };
9
+ id: {
10
+ type: string;
11
+ };
12
+ method: {
13
+ type: string;
14
+ enum: string[];
15
+ };
16
+ };
17
+ required: string[];
18
+ };
19
+ export declare const pingResponseSchema: {
20
+ type: string;
21
+ properties: {
22
+ jsonrpc: {
23
+ type: string;
24
+ };
25
+ id: {
26
+ type: string;
27
+ };
28
+ result: {
29
+ type: string;
30
+ additionalProperties: boolean;
31
+ };
32
+ };
33
+ required: string[];
34
+ };
35
+ export declare function pingHandler(): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
36
+ //# sourceMappingURL=ping.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ping.d.ts","sourceRoot":"","sources":["../../../src/mcp/transports/ping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEvD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;CAQ7B,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;CAQ9B,CAAC;AAEF,wBAAgB,WAAW,KACX,SAAS,cAAc,EAAE,OAAO,YAAY,mBAS3D"}
@@ -0,0 +1,29 @@
1
+ export const pingRequestSchema = {
2
+ type: "object",
3
+ properties: {
4
+ jsonrpc: { type: "string", enum: ["2.0"] },
5
+ id: { type: "string" },
6
+ method: { type: "string", enum: ["ping"] },
7
+ },
8
+ required: ["jsonrpc", "id", "method"],
9
+ };
10
+ export const pingResponseSchema = {
11
+ type: "object",
12
+ properties: {
13
+ jsonrpc: { type: "string" },
14
+ id: { type: "string" },
15
+ result: { type: "object", additionalProperties: false },
16
+ },
17
+ required: ["jsonrpc", "id", "result"],
18
+ };
19
+ export function pingHandler() {
20
+ return async (request, reply) => {
21
+ const { id } = request.body;
22
+ reply.send({
23
+ jsonrpc: "2.0",
24
+ id,
25
+ result: {},
26
+ });
27
+ };
28
+ }
29
+ //# sourceMappingURL=ping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ping.js","sourceRoot":"","sources":["../../../src/mcp/transports/ping.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE;QAC1C,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACtB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;KAC3C;IACD,QAAQ,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC;CACtC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC3B,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACtB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,oBAAoB,EAAE,KAAK,EAAE;KACxD;IACD,QAAQ,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC;CACtC,CAAC;AAEF,MAAM,UAAU,WAAW;IACzB,OAAO,KAAK,EAAE,OAAuB,EAAE,KAAmB,EAAE,EAAE;QAC5D,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAsB,CAAC;QAE9C,KAAK,CAAC,IAAI,CAAC;YACT,OAAO,EAAE,KAAK;YACd,EAAE;YACF,MAAM,EAAE,EAAE;SACX,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/mcp/transports/server.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAGL,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,mBAAmB,CAAS;;IAS9B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA+C9B,WAAW,IAAI,eAAe;IAIxB,KAAK,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB1C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAS5B"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/mcp/transports/server.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAGL,eAAe,EAChB,MAAM,SAAS,CAAC;AAEjB,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,mBAAmB,CAAS;;IAS9B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA+C9B,WAAW,IAAI,eAAe;IAIxB,KAAK,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB1C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAS5B"}
@@ -1,5 +1,6 @@
1
1
  import fastifySwagger from "@fastify/swagger";
2
2
  import fastifySwaggerUi from "@fastify/swagger-ui";
3
+ import env from "../../env.js";
3
4
  import { logger } from "../../logger.js";
4
5
  import { default as Fastify, } from "fastify";
5
6
  export class HttpServer {
@@ -26,7 +27,7 @@ export class HttpServer {
26
27
  },
27
28
  servers: [
28
29
  {
29
- url: "http://localhost:3000",
30
+ url: `http://${env.HTTP_HOST}:${env.HTTP_PORT}`,
30
31
  description: "Local development server",
31
32
  },
32
33
  ],