@fleetx_io/fleetx-mcp-server 1.1.7 → 2.0.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.
Files changed (118) hide show
  1. package/CHANGELOG.md +44 -12
  2. package/README.md +56 -6
  3. package/dist/auth/fleetx/exchange.d.ts +13 -0
  4. package/dist/auth/fleetx/exchange.d.ts.map +1 -0
  5. package/dist/auth/fleetx/exchange.js +27 -0
  6. package/dist/auth/fleetx/exchange.js.map +1 -0
  7. package/dist/auth/google/callback.d.ts +3 -0
  8. package/dist/auth/google/callback.d.ts.map +1 -0
  9. package/dist/auth/google/callback.js +98 -0
  10. package/dist/auth/google/callback.js.map +1 -0
  11. package/dist/auth/google/client.d.ts +17 -0
  12. package/dist/auth/google/client.d.ts.map +1 -0
  13. package/dist/auth/google/client.js +50 -0
  14. package/dist/auth/google/client.js.map +1 -0
  15. package/dist/auth/oauth/authorize.d.ts +3 -0
  16. package/dist/auth/oauth/authorize.d.ts.map +1 -0
  17. package/dist/auth/oauth/authorize.js +74 -0
  18. package/dist/auth/oauth/authorize.js.map +1 -0
  19. package/dist/auth/oauth/cimd.d.ts +33 -0
  20. package/dist/auth/oauth/cimd.d.ts.map +1 -0
  21. package/dist/auth/oauth/cimd.js +63 -0
  22. package/dist/auth/oauth/cimd.js.map +1 -0
  23. package/dist/auth/oauth/pending-sessions.d.ts +5 -0
  24. package/dist/auth/oauth/pending-sessions.d.ts.map +1 -0
  25. package/dist/auth/oauth/pending-sessions.js +24 -0
  26. package/dist/auth/oauth/pending-sessions.js.map +1 -0
  27. package/dist/auth/oauth/pkce.d.ts +3 -0
  28. package/dist/auth/oauth/pkce.d.ts.map +1 -0
  29. package/dist/auth/oauth/pkce.js +7 -0
  30. package/dist/auth/oauth/pkce.js.map +1 -0
  31. package/dist/auth/oauth/register.d.ts +8 -0
  32. package/dist/auth/oauth/register.d.ts.map +1 -0
  33. package/dist/auth/oauth/register.js +37 -0
  34. package/dist/auth/oauth/register.js.map +1 -0
  35. package/dist/auth/oauth/token.d.ts +3 -0
  36. package/dist/auth/oauth/token.d.ts.map +1 -0
  37. package/dist/auth/oauth/token.js +111 -0
  38. package/dist/auth/oauth/token.js.map +1 -0
  39. package/dist/auth/oauth/types.d.ts +11 -0
  40. package/dist/auth/oauth/types.d.ts.map +1 -0
  41. package/dist/auth/oauth/types.js +2 -0
  42. package/dist/auth/oauth/types.js.map +1 -0
  43. package/dist/auth/oauth/userinfo.d.ts +3 -0
  44. package/dist/auth/oauth/userinfo.d.ts.map +1 -0
  45. package/dist/auth/oauth/userinfo.js +29 -0
  46. package/dist/auth/oauth/userinfo.js.map +1 -0
  47. package/dist/auth/storage/authorization-code.d.ts +19 -0
  48. package/dist/auth/storage/authorization-code.d.ts.map +1 -0
  49. package/dist/auth/storage/authorization-code.js +44 -0
  50. package/dist/auth/storage/authorization-code.js.map +1 -0
  51. package/dist/auth/storage/connected-account.d.ts +24 -0
  52. package/dist/auth/storage/connected-account.d.ts.map +1 -0
  53. package/dist/auth/storage/connected-account.js +60 -0
  54. package/dist/auth/storage/connected-account.js.map +1 -0
  55. package/dist/auth/storage/db.d.ts +3 -0
  56. package/dist/auth/storage/db.d.ts.map +1 -0
  57. package/dist/auth/storage/db.js +110 -0
  58. package/dist/auth/storage/db.js.map +1 -0
  59. package/dist/auth/storage/oauth-client.d.ts +12 -0
  60. package/dist/auth/storage/oauth-client.d.ts.map +1 -0
  61. package/dist/auth/storage/oauth-client.js +28 -0
  62. package/dist/auth/storage/oauth-client.js.map +1 -0
  63. package/dist/auth/storage/refresh-token.d.ts +17 -0
  64. package/dist/auth/storage/refresh-token.d.ts.map +1 -0
  65. package/dist/auth/storage/refresh-token.js +46 -0
  66. package/dist/auth/storage/refresh-token.js.map +1 -0
  67. package/dist/auth/tokens/encryption.d.ts +5 -0
  68. package/dist/auth/tokens/encryption.d.ts.map +1 -0
  69. package/dist/auth/tokens/encryption.js +27 -0
  70. package/dist/auth/tokens/encryption.js.map +1 -0
  71. package/dist/auth/tokens/jwt.d.ts +8 -0
  72. package/dist/auth/tokens/jwt.d.ts.map +1 -0
  73. package/dist/auth/tokens/jwt.js +34 -0
  74. package/dist/auth/tokens/jwt.js.map +1 -0
  75. package/dist/auth.d.ts +1 -1
  76. package/dist/auth.d.ts.map +1 -1
  77. package/dist/auth.js +2 -1
  78. package/dist/auth.js.map +1 -1
  79. package/dist/config/oauth.d.ts +21 -0
  80. package/dist/config/oauth.d.ts.map +1 -0
  81. package/dist/config/oauth.js +41 -0
  82. package/dist/config/oauth.js.map +1 -0
  83. package/dist/index.d.ts +1 -1
  84. package/dist/index.d.ts.map +1 -1
  85. package/dist/index.js +4 -2
  86. package/dist/index.js.map +1 -1
  87. package/dist/mcp/middleware/auth.d.ts +18 -0
  88. package/dist/mcp/middleware/auth.d.ts.map +1 -0
  89. package/dist/mcp/middleware/auth.js +35 -0
  90. package/dist/mcp/middleware/auth.js.map +1 -0
  91. package/dist/server/createMcpServer.d.ts +8 -3
  92. package/dist/server/createMcpServer.d.ts.map +1 -1
  93. package/dist/server/createMcpServer.js +28 -12
  94. package/dist/server/createMcpServer.js.map +1 -1
  95. package/dist/transports/fastify.d.ts +2 -0
  96. package/dist/transports/fastify.d.ts.map +1 -0
  97. package/dist/transports/fastify.js +223 -0
  98. package/dist/transports/fastify.js.map +1 -0
  99. package/dist/transports/sse.d.ts +1 -1
  100. package/dist/transports/sse.d.ts.map +1 -1
  101. package/dist/transports/sse.js +162 -67
  102. package/dist/transports/sse.js.map +1 -1
  103. package/dist/transports/stdio.d.ts.map +1 -1
  104. package/dist/transports/stdio.js +8 -1
  105. package/dist/transports/stdio.js.map +1 -1
  106. package/dist/utils-http.d.ts +8 -0
  107. package/dist/utils-http.d.ts.map +1 -0
  108. package/dist/utils-http.js +15 -0
  109. package/dist/utils-http.js.map +1 -0
  110. package/dist/utils.d.ts +1 -0
  111. package/dist/utils.d.ts.map +1 -1
  112. package/dist/utils.js +12 -2
  113. package/dist/utils.js.map +1 -1
  114. package/dist/well-known/discovery.d.ts +4 -0
  115. package/dist/well-known/discovery.d.ts.map +1 -0
  116. package/dist/well-known/discovery.js +25 -0
  117. package/dist/well-known/discovery.js.map +1 -0
  118. package/package.json +15 -7
@@ -1 +1 @@
1
- {"version":3,"file":"stdio.js","sourceRoot":"","sources":["../../src/transports/stdio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IACtC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,uBAAuB,EAAE,CAAC;IACzD,MAAM,WAAW,GAAG,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9E,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAE7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,GAAG,CAAC,yCAAyC,CAAC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"stdio.js","sourceRoot":"","sources":["../../src/transports/stdio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAoB,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IACtC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,uBAAuB,EAAE,CAAC;IACzD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC;IAC1D,IAAI,WAAoC,CAAC;IACzC,IAAI,SAAS,EAAE,CAAC;QACd,WAAW,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IACrD,CAAC;SAAM,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;QAChC,WAAW,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;IACtD,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAE7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,GAAG,CAAC,yCAAyC,CAAC,CAAC;AACjD,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { FastifyRequest } from "fastify";
2
+ /**
3
+ * Derives the public base URL of this server from the incoming request.
4
+ * Prefers MCP_BASE_URL when it has been explicitly overridden from the default.
5
+ * Falls back to the request Host header so local dev works without config.
6
+ */
7
+ export declare function resolveServerBaseUrl(request: FastifyRequest): string;
8
+ //# sourceMappingURL=utils-http.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-http.d.ts","sourceRoot":"","sources":["../src/utils-http.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CASpE"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Derives the public base URL of this server from the incoming request.
3
+ * Prefers MCP_BASE_URL when it has been explicitly overridden from the default.
4
+ * Falls back to the request Host header so local dev works without config.
5
+ */
6
+ export function resolveServerBaseUrl(request) {
7
+ const configured = process.env.MCP_BASE_URL?.trim();
8
+ if (configured && configured !== "https://mcp.fleetx.io")
9
+ return configured;
10
+ const proto = request.headers["x-forwarded-proto"]?.split(",")[0].trim() ??
11
+ "http";
12
+ const host = request.headers.host ?? `localhost:${process.env.PORT ?? 3000}`;
13
+ return `${proto}://${host}`;
14
+ }
15
+ //# sourceMappingURL=utils-http.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils-http.js","sourceRoot":"","sources":["../src/utils-http.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAuB;IAC1D,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC;IACpD,IAAI,UAAU,IAAI,UAAU,KAAK,uBAAuB;QAAE,OAAO,UAAU,CAAC;IAE5E,MAAM,KAAK,GACR,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAwB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;QAClF,MAAM,CAAC;IACT,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,aAAa,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;IAC7E,OAAO,GAAG,KAAK,MAAM,IAAI,EAAE,CAAC;AAC9B,CAAC"}
package/dist/utils.d.ts CHANGED
@@ -5,6 +5,7 @@
5
5
  export declare function log(...args: unknown[]): void;
6
6
  export declare function getAPIDefinitionURL(): string;
7
7
  export declare function getLoginURL(): string;
8
+ export declare function userMeUrl(): string;
8
9
  export declare function getUsernameLoginDetails(): {
9
10
  username: string;
10
11
  password: string;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,QAIrC;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,wBAAgB,uBAAuB,IAAI;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAKhF"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,GAAG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,QASrC;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AACD,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED,wBAAgB,uBAAuB,IAAI;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAKhF"}
package/dist/utils.js CHANGED
@@ -3,8 +3,15 @@
3
3
  * Use log() everywhere instead of console.log / console.error.
4
4
  */
5
5
  export function log(...args) {
6
- const msg = args.map((a) => (typeof a === "string" ? a : JSON.stringify(a))).join(" ");
7
- // opensearch compatible logging json format
6
+ const msg = args
7
+ .map((a) => {
8
+ if (typeof a === "string")
9
+ return a;
10
+ if (a instanceof Error)
11
+ return `${a.name}: ${a.message}${a.cause ? ` (cause: ${a.cause})` : ""}`;
12
+ return JSON.stringify(a);
13
+ })
14
+ .join(" ");
8
15
  console.error(JSON.stringify({ message: msg, level: "info" }));
9
16
  }
10
17
  export function getAPIDefinitionURL() {
@@ -13,6 +20,9 @@ export function getAPIDefinitionURL() {
13
20
  export function getLoginURL() {
14
21
  return process.env.LOGIN_URL ?? "https://api.fleetx.io/api/v1/login";
15
22
  }
23
+ export function userMeUrl() {
24
+ return process.env.USER_ME_URL ?? "https://api.fleetx.io/api/v1/users/me";
25
+ }
16
26
  export function getUsernameLoginDetails() {
17
27
  return {
18
28
  username: process.env.USERNAME ?? process.env.FLEETX_USERNAME ?? "",
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,GAAG,CAAC,GAAG,IAAe;IACpC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvF,4CAA4C;IAC5C,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAmB,IAAI,qCAAqC,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,OAAO,OAAO,CAAC,GAAG,CAAC,SAAU,IAAI,oCAAoC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO;QACL,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE;QACnE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE;KACpE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,GAAG,CAAC,GAAG,IAAe;IACpC,MAAM,GAAG,GAAG,IAAI;SACb,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,CAAC,CAAC;QACpC,IAAI,CAAC,YAAY,KAAK;YAAE,OAAO,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACjG,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAC;IACb,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAmB,IAAI,qCAAqC,CAAC;AAClF,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,OAAO,OAAO,CAAC,GAAG,CAAC,SAAU,IAAI,oCAAoC,CAAC;AACxE,CAAC;AACD,MAAM,UAAU,SAAS;IACvB,OAAO,OAAO,CAAC,GAAG,CAAC,WAAY,IAAI,uCAAuC,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO;QACL,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE;QACnE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE;KACpE,CAAC;AACJ,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { FastifyRequest, FastifyReply } from "fastify";
2
+ export declare function handleAuthorizationServerMetadata(request: FastifyRequest, reply: FastifyReply): Promise<void>;
3
+ export declare function handleProtectedResourceMetadata(request: FastifyRequest, reply: FastifyReply): Promise<void>;
4
+ //# sourceMappingURL=discovery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/well-known/discovery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5D,wBAAsB,iCAAiC,CACrD,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,YAAY,GAClB,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,wBAAsB,+BAA+B,CACnD,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,YAAY,GAClB,OAAO,CAAC,IAAI,CAAC,CAOf"}
@@ -0,0 +1,25 @@
1
+ import { resolveServerBaseUrl } from "../utils-http.js";
2
+ export async function handleAuthorizationServerMetadata(request, reply) {
3
+ const base = resolveServerBaseUrl(request);
4
+ return reply.send({
5
+ issuer: base,
6
+ authorization_endpoint: `${base}/oauth/authorize`,
7
+ token_endpoint: `${base}/oauth/token`,
8
+ registration_endpoint: `${base}/oauth/register`,
9
+ userinfo_endpoint: `${base}/userinfo`,
10
+ response_types_supported: ["code"],
11
+ grant_types_supported: ["authorization_code", "refresh_token"],
12
+ code_challenge_methods_supported: ["S256"],
13
+ token_endpoint_auth_methods_supported: ["none"],
14
+ // CIMD: Claude skips DCR when both flags are present
15
+ client_id_metadata_document_supported: true,
16
+ });
17
+ }
18
+ export async function handleProtectedResourceMetadata(request, reply) {
19
+ const base = resolveServerBaseUrl(request);
20
+ return reply.send({
21
+ resource: `${base}/mcp`,
22
+ authorization_servers: [base],
23
+ });
24
+ }
25
+ //# sourceMappingURL=discovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/well-known/discovery.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,OAAuB,EACvB,KAAmB;IAEnB,MAAM,IAAI,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAE3C,OAAO,KAAK,CAAC,IAAI,CAAC;QAChB,MAAM,EAAE,IAAI;QACZ,sBAAsB,EAAE,GAAG,IAAI,kBAAkB;QACjD,cAAc,EAAE,GAAG,IAAI,cAAc;QACrC,qBAAqB,EAAE,GAAG,IAAI,iBAAiB;QAC/C,iBAAiB,EAAE,GAAG,IAAI,WAAW;QACrC,wBAAwB,EAAE,CAAC,MAAM,CAAC;QAClC,qBAAqB,EAAE,CAAC,oBAAoB,EAAE,eAAe,CAAC;QAC9D,gCAAgC,EAAE,CAAC,MAAM,CAAC;QAC1C,qCAAqC,EAAE,CAAC,MAAM,CAAC;QAC/C,qDAAqD;QACrD,qCAAqC,EAAE,IAAI;KAC5C,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,+BAA+B,CACnD,OAAuB,EACvB,KAAmB;IAEnB,MAAM,IAAI,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAE3C,OAAO,KAAK,CAAC,IAAI,CAAC;QAChB,QAAQ,EAAE,GAAG,IAAI,MAAM;QACvB,qBAAqB,EAAE,CAAC,IAAI,CAAC;KAC9B,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fleetx_io/fleetx-mcp-server",
3
- "version": "1.1.7",
3
+ "version": "2.0.0",
4
4
  "description": "MCP server that gives AI agents access to the FleetX REST API. Works with Cursor, Claude Desktop, Windsurf, and any MCP-compatible client.",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -19,11 +19,12 @@
19
19
  "access": "public"
20
20
  },
21
21
  "scripts": {
22
- "dev": "ts-node-dev --respawn --transpile-only ./src/index.ts",
22
+ "dev": "tsx watch ./src/index.ts",
23
+ "dev:http": "MCP_TRANSPORT=http tsx watch ./src/index.ts",
23
24
  "build": "tsc",
24
25
  "publish": "npm run build && npm publish --access public",
25
26
  "start": "MCP_TRANSPORT=http NODE_ENV=production node dist/index.js",
26
- "startClientLive": "npx @modelcontextprotocol/inspector ts-node-dev --respawn --transpile-only ./src/index.ts",
27
+ "startClientLive": "npx @modelcontextprotocol/inspector tsx ./src/index.ts",
27
28
  "startClient": "npx @modelcontextprotocol/inspector node dist/index.js"
28
29
  },
29
30
  "keywords": [
@@ -43,17 +44,24 @@
43
44
  "license": "ISC",
44
45
  "homepage": "https://www.npmjs.com/package/@fleetx_io/fleetx-mcp-server",
45
46
  "engines": {
46
- "node": ">=20.0.0"
47
+ "node": ">=22.0.0"
47
48
  },
48
49
  "dependencies": {
50
+ "@fastify/formbody": "^8.0.2",
49
51
  "@modelcontextprotocol/sdk": "^1.27.1",
50
- "axios": "^1.13.6",
52
+ "axios": "^1.17.0",
53
+ "better-sqlite3": "^12.10.0",
54
+ "dotenv": "^17.4.2",
55
+ "fastify": "^5.8.5",
56
+ "jose": "^6.2.3",
51
57
  "zod": "^4.3.6"
52
58
  },
53
59
  "devDependencies": {
60
+ "@types/better-sqlite3": "^7.6.13",
54
61
  "@types/node": "^25.3.3",
62
+ "prettier": "2.0.5",
55
63
  "ts-node-dev": "^2.0.0",
56
- "typescript": "^5.9.3",
57
- "prettier": "2.0.5"
64
+ "tsx": "^4.22.4",
65
+ "typescript": "^5.9.3"
58
66
  }
59
67
  }