qyl-mcp-server 7.3.1 → 7.5.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 (65) hide show
  1. package/README.md +87 -13
  2. package/dist/ci.js +1 -1
  3. package/dist/ci.js.map +1 -1
  4. package/dist/cloudflare-access.d.ts +3 -2
  5. package/dist/cloudflare-access.js +3 -2
  6. package/dist/cloudflare-access.js.map +1 -1
  7. package/dist/collector-resources.d.ts +45 -0
  8. package/dist/collector-resources.js +295 -0
  9. package/dist/collector-resources.js.map +1 -0
  10. package/dist/collector.d.ts +21 -6
  11. package/dist/collector.js +33 -1
  12. package/dist/collector.js.map +1 -1
  13. package/dist/contract-headers.d.ts +10 -0
  14. package/dist/contract-headers.js +10 -0
  15. package/dist/contract-headers.js.map +1 -1
  16. package/dist/contract-validation.d.ts +17 -0
  17. package/dist/contract-validation.js +65 -0
  18. package/dist/contract-validation.js.map +1 -1
  19. package/dist/data.d.ts +36 -13
  20. package/dist/data.js +74 -23
  21. package/dist/data.js.map +1 -1
  22. package/dist/events.js +1 -1
  23. package/dist/events.js.map +1 -1
  24. package/dist/http-security.d.ts +1 -0
  25. package/dist/http-security.js +1 -1
  26. package/dist/http-security.js.map +1 -1
  27. package/dist/main.js +1 -4
  28. package/dist/main.js.map +1 -1
  29. package/dist/mcp-app.html +1 -1
  30. package/dist/mcp-dashboard.html +1 -1
  31. package/dist/mcp-home.html +10 -3
  32. package/dist/metrics-tools.d.ts +4 -11
  33. package/dist/metrics-tools.js +43 -44
  34. package/dist/metrics-tools.js.map +1 -1
  35. package/dist/metrics.d.ts +21 -39
  36. package/dist/metrics.js +58 -53
  37. package/dist/metrics.js.map +1 -1
  38. package/dist/oauth.d.ts +8 -1
  39. package/dist/oauth.js +16 -2
  40. package/dist/oauth.js.map +1 -1
  41. package/dist/paging.d.ts +16 -0
  42. package/dist/paging.js +33 -0
  43. package/dist/paging.js.map +1 -0
  44. package/dist/request-scope.js +8 -0
  45. package/dist/request-scope.js.map +1 -1
  46. package/dist/server.d.ts +4 -0
  47. package/dist/server.js +57 -42
  48. package/dist/server.js.map +1 -1
  49. package/dist/summaries.d.ts +13 -2
  50. package/dist/summaries.js +20 -4
  51. package/dist/summaries.js.map +1 -1
  52. package/dist/telemetry.js +7 -0
  53. package/dist/telemetry.js.map +1 -1
  54. package/dist/tool-scopes.d.ts +42 -0
  55. package/dist/tool-scopes.js +97 -0
  56. package/dist/tool-scopes.js.map +1 -0
  57. package/dist/tools.js +82 -20
  58. package/dist/tools.js.map +1 -1
  59. package/dist/write-tools.d.ts +41 -0
  60. package/dist/write-tools.js +214 -0
  61. package/dist/write-tools.js.map +1 -0
  62. package/package.json +2 -2
  63. package/dist/contract-operations.d.ts +0 -37
  64. package/dist/contract-operations.js +0 -124
  65. package/dist/contract-operations.js.map +0 -1
@@ -5,16 +5,17 @@
5
5
  * connection, HTTP, JSON, and contract failures surface to the caller rather
6
6
  * than silently substituting generated telemetry or invented defaults.
7
7
  */
8
- import type { LogRecord, MetricDescriptor, MetricQueryResult, MetricSeries, SessionEntity, Trace } from "@ancplua/qyl-api-schema/types";
8
+ import type { LogRecord, MetricDescriptor, MetricQueryResult, MetricSeries, SessionEntity, ToolErrorCode, Trace } from "@ancplua/qyl-api-schema/types";
9
9
  import * as z from "zod/v4";
10
10
  import { type CollectorAccess } from "./collector-access.js";
11
11
  import type { Mode } from "./wire.js";
12
12
  /**
13
- * The stable failure codes a tool result carries in `structuredContent.error`.
14
- * A model branches on the code, never on the message text, which stays free to
15
- * describe the specific failure.
13
+ * The stable failure codes a tool result carries in `structuredContent.error`:
14
+ * the contract's `Mcp.Tools.ToolErrorCode`, so the server cannot invent a code
15
+ * the published `ToolError` model does not know. A model branches on the code,
16
+ * never on the message text, which stays free to describe the specific failure.
16
17
  */
17
- export type ToolErrorCode = "invalid_argument" | "not_found" | "no_project_access" | "collector_unreachable" | "collector_timeout" | "cancelled" | "collector_unauthorized" | "collector_rate_limited" | "collector_rejected" | "collector_error" | "contract_mismatch" | "internal";
18
+ export type { ToolErrorCode };
18
19
  /** Whether the same call can succeed when repeated unchanged. */
19
20
  export declare function isRetryableToolError(code: ToolErrorCode): boolean;
20
21
  /**
@@ -49,12 +50,19 @@ export declare function parseCollectorLog(value: unknown, context?: string): Log
49
50
  interface ParsedCollectorPage<T> {
50
51
  items: T[];
51
52
  hasMore: boolean;
53
+ /** The Collector's opaque cursor for the next page; absent on the last page. */
54
+ nextCursor?: string;
52
55
  }
53
56
  export interface CollectorRequestOptions {
54
57
  timeoutMs?: number;
55
58
  signal?: AbortSignal;
56
59
  /** Host-selected access for the verified caller; never a tool input. */
57
60
  access?: CollectorAccess;
61
+ /**
62
+ * Contract-named request headers one operation takes, such as `If-Match`.
63
+ * They never replace the credential or project headers.
64
+ */
65
+ headers?: Readonly<Record<string, string>>;
58
66
  }
59
67
  /**
60
68
  * Normalize endpoint items, then validate the complete operation-specific
@@ -64,10 +72,17 @@ export interface CollectorRequestOptions {
64
72
  export declare function parseCollectorPage<T, TPage extends {
65
73
  items: T[];
66
74
  has_more: boolean;
75
+ next_cursor?: string | null;
67
76
  }>(value: unknown, context: string, pageSchema: z.ZodType<TPage>, parseItem: (item: unknown, context: string) => T): ParsedCollectorPage<T>;
77
+ /**
78
+ * Validate one whole response body against its generated operation schema,
79
+ * for the operations that answer with a single resource rather than a page.
80
+ */
81
+ export declare function parseCollectorBody<T>(value: unknown, context: string, schema: z.ZodType<T>): T;
68
82
  /** Query values a published operation parameter can carry, repeatable included. */
69
83
  export type CollectorQueryParams = Record<string, string | number | boolean | readonly string[] | undefined>;
70
84
  export declare function collectorGet(pathname: string, params?: CollectorQueryParams, options?: CollectorRequestOptions): Promise<unknown>;
71
85
  export declare function collectorPost(pathname: string, body: unknown, options?: CollectorRequestOptions): Promise<unknown>;
86
+ export declare function collectorPatch(pathname: string, body: unknown, options?: CollectorRequestOptions): Promise<unknown>;
87
+ export declare function collectorDelete(pathname: string, options?: CollectorRequestOptions): Promise<unknown>;
72
88
  export declare function resolveMode(): Promise<Mode>;
73
- export {};
package/dist/collector.js CHANGED
@@ -21,6 +21,14 @@ function codeForStatus(status) {
21
21
  return "not_found";
22
22
  if (status === 401 || status === 403)
23
23
  return "collector_unauthorized";
24
+ // The write routes' answers: a duplicate name or reused retry key, a stale
25
+ // If-Match etag, and a missing If-Match.
26
+ if (status === 409)
27
+ return "conflict";
28
+ if (status === 412)
29
+ return "precondition_failed";
30
+ if (status === 428)
31
+ return "precondition_required";
24
32
  if (status === 429)
25
33
  return "collector_rate_limited";
26
34
  if (status >= 500)
@@ -193,7 +201,10 @@ export function parseCollectorPage(value, context, pageSchema, parseItem) {
193
201
  ...source,
194
202
  items: sourceItems.data.map((item, index) => parseItem(item, `${context}.items[${index}]`)),
195
203
  });
196
- return { items: page.items, hasMore: page.has_more };
204
+ const nextCursor = typeof page.next_cursor === "string" && page.next_cursor !== ""
205
+ ? page.next_cursor
206
+ : undefined;
207
+ return { items: page.items, hasMore: page.has_more, ...(nextCursor === undefined ? {} : { nextCursor }) };
197
208
  }
198
209
  catch (error) {
199
210
  if (error instanceof CollectorError)
@@ -203,6 +214,16 @@ export function parseCollectorPage(value, context, pageSchema, parseItem) {
203
214
  throw error;
204
215
  }
205
216
  }
217
+ /**
218
+ * Validate one whole response body against its generated operation schema,
219
+ * for the operations that answer with a single resource rather than a page.
220
+ */
221
+ export function parseCollectorBody(value, context, schema) {
222
+ const parsed = schema.safeParse(value);
223
+ if (!parsed.success)
224
+ throw contractMismatch(context, parsed.error);
225
+ return parsed.data;
226
+ }
206
227
  function normalizeProblemDetails(value) {
207
228
  const problem = asRecord(value, "error response");
208
229
  if (problem.timestamp === undefined)
@@ -250,6 +271,7 @@ async function collectorRequest(pathname, method, params, body, options) {
250
271
  : timeout;
251
272
  const headers = {
252
273
  accept: "application/json",
274
+ ...options.headers,
253
275
  ...collectorHeaders(options.access),
254
276
  ...(body === undefined ? {} : { "content-type": "application/json" }),
255
277
  };
@@ -272,6 +294,10 @@ async function collectorRequest(pathname, method, params, body, options) {
272
294
  throw new CollectorError(`collector unreachable at ${collectorUrl()} — start it with ` +
273
295
  "`dotnet run --project services/qyl.collector` or set QYL_DEMO=1", true);
274
296
  }
297
+ // A DELETE answers 204 with no body; the caller's operation decides
298
+ // whether an empty answer is one its contract allows.
299
+ if (response.status === 204)
300
+ return undefined;
275
301
  let responseBody;
276
302
  try {
277
303
  responseBody = await response.json();
@@ -298,6 +324,12 @@ export function collectorGet(pathname, params = {}, options = {}) {
298
324
  export function collectorPost(pathname, body, options = {}) {
299
325
  return collectorRequest(pathname, "POST", {}, body, options);
300
326
  }
327
+ export function collectorPatch(pathname, body, options = {}) {
328
+ return collectorRequest(pathname, "PATCH", {}, body, options);
329
+ }
330
+ export function collectorDelete(pathname, options = {}) {
331
+ return collectorRequest(pathname, "DELETE", {}, undefined, options);
332
+ }
301
333
  export function resolveMode() {
302
334
  return Promise.resolve(process.env.QYL_DEMO === "1" ? "demo" : "live");
303
335
  }
@@ -1 +1 @@
1
- {"version":3,"file":"collector.js","sourceRoot":"","sources":["../src/collector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collector.js","sourceRoot":"","sources":["../src/collector.ts"],"names":[],"mappings":"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"}
@@ -16,3 +16,13 @@
16
16
  export declare const API_KEY_HEADER: string;
17
17
  /** Header scoping a request to one project (`ProjectScopeHeader` parameter). */
18
18
  export declare const PROJECT_HEADER: string;
19
+ /**
20
+ * Header carrying the etag a PATCH or DELETE changes (`Common.IfMatchHeader`
21
+ * parameter): a stale tag is answered 412, a missing one 428.
22
+ */
23
+ export declare const IF_MATCH_HEADER: string;
24
+ /**
25
+ * Header carrying the retry key of a creating POST (`Common.IdempotencyKeyHeader`
26
+ * parameter): a repeat with the same key and body returns the first result.
27
+ */
28
+ export declare const IDEMPOTENCY_KEY_HEADER: string;
@@ -25,4 +25,14 @@ function requiredHeaderName(component, description) {
25
25
  export const API_KEY_HEADER = requiredHeaderName(qylOpenApi.components.securitySchemes.ApiKeyAuth, "published Qyl API-key security scheme");
26
26
  /** Header scoping a request to one project (`ProjectScopeHeader` parameter). */
27
27
  export const PROJECT_HEADER = requiredHeaderName(qylOpenApi.components.parameters.ProjectScopeHeader, "published Qyl project-scope parameter");
28
+ /**
29
+ * Header carrying the etag a PATCH or DELETE changes (`Common.IfMatchHeader`
30
+ * parameter): a stale tag is answered 412, a missing one 428.
31
+ */
32
+ export const IF_MATCH_HEADER = requiredHeaderName(qylOpenApi.components.parameters["Common.IfMatchHeader"], "published Qyl If-Match precondition parameter");
33
+ /**
34
+ * Header carrying the retry key of a creating POST (`Common.IdempotencyKeyHeader`
35
+ * parameter): a repeat with the same key and body returns the first result.
36
+ */
37
+ export const IDEMPOTENCY_KEY_HEADER = requiredHeaderName(qylOpenApi.components.parameters["Common.IdempotencyKeyHeader"], "published Qyl Idempotency-Key parameter");
28
38
  //# sourceMappingURL=contract-headers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"contract-headers.js","sourceRoot":"","sources":["../src/contract-headers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,UAAU,MAAM,iCAAiC,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAE/E,SAAS,kBAAkB,CACzB,SAAqD,EACrD,WAAmB;IAEnB,IACE,SAAS,EAAE,EAAE,KAAK,QAAQ;WACvB,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ;WAClC,SAAS,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAC9B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,GAAG,WAAW,sBAAsB,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,SAAS,CAAC,IAAI,CAAC;AACxB,CAAC;AAED,4EAA4E;AAC5E,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAC9C,UAAU,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,EAChD,uCAAuC,CACxC,CAAC;AAEF,gFAAgF;AAChF,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAC9C,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,kBAAkB,EACnD,uCAAuC,CACxC,CAAC"}
1
+ {"version":3,"file":"contract-headers.js","sourceRoot":"","sources":["../src/contract-headers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,UAAU,MAAM,iCAAiC,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAE/E,SAAS,kBAAkB,CACzB,SAAqD,EACrD,WAAmB;IAEnB,IACE,SAAS,EAAE,EAAE,KAAK,QAAQ;WACvB,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ;WAClC,SAAS,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAC9B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,GAAG,WAAW,sBAAsB,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,SAAS,CAAC,IAAI,CAAC;AACxB,CAAC;AAED,4EAA4E;AAC5E,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAC9C,UAAU,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,EAChD,uCAAuC,CACxC,CAAC;AAEF,gFAAgF;AAChF,MAAM,CAAC,MAAM,cAAc,GAAG,kBAAkB,CAC9C,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,kBAAkB,EACnD,uCAAuC,CACxC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,kBAAkB,CAC/C,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,sBAAsB,CAAC,EACxD,+CAA+C,CAChD,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,kBAAkB,CACtD,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,6BAA6B,CAAC,EAC/D,yCAAyC,CAC1C,CAAC"}
@@ -27,6 +27,16 @@ export { contractSchema, publishedContractSchema, type ContractInput };
27
27
  * (dashboard, workbench) costs nothing.
28
28
  */
29
29
  export declare function compactOutputSchema<T>(schema: z.ZodType<T>): StandardSchemaWithJSON<T, T>;
30
+ /**
31
+ * Emits a tool's input JSON Schema with `type: "object"` at the root.
32
+ *
33
+ * MCP requires `inputSchema.type` to be `"object"`, and hosts validate it. A
34
+ * discriminated union of object variants is an object, but zod spells it as
35
+ * `allOf: [<any object>, { oneOf: [...] }]` with no root `type`, so `tools/list`
36
+ * would publish a shape a strict host rejects. This hoists the union to the
37
+ * root and states the type; validation is the untouched generated zod schema.
38
+ */
39
+ export declare function objectRootInputSchema<T>(schema: z.ZodType<T>): StandardSchemaWithJSON<T, T>;
30
40
  export declare const SpanSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").Span, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").Span, unknown>>;
31
41
  export declare const TraceSummarySchema: z.ZodType<import("@ancplua/qyl-api-schema/types").TraceSummary, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").TraceSummary, unknown>>;
32
42
  export declare const TraceSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").Trace, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").Trace, unknown>>;
@@ -49,6 +59,13 @@ export declare const DisplayTracesInputSchema: z.ZodType<import("@ancplua/qyl-ap
49
59
  export declare const DisplayTracesOutputSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").DisplayTracesOutput, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").DisplayTracesOutput, unknown>>;
50
60
  export declare const DisplayMcpDashboardInputSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").DisplayMcpDashboardInput, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").DisplayMcpDashboardInput, unknown>>;
51
61
  export declare const DisplayMcpDashboardOutputSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").DisplayMcpDashboardOutput, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").DisplayMcpDashboardOutput, unknown>>;
62
+ export declare const ToolErrorSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").ToolError, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").ToolError, unknown>>;
63
+ export declare const ListMetricsInputSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").ListMetricsInput, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").ListMetricsInput, unknown>>;
64
+ export declare const ListMetricsOutputSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").ListMetricsOutput, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").ListMetricsOutput, unknown>>;
65
+ export declare const GetMetricSeriesInputSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").GetMetricSeriesInput, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").GetMetricSeriesInput, unknown>>;
66
+ export declare const GetMetricSeriesOutputSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").GetMetricSeriesOutput, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").GetMetricSeriesOutput, unknown>>;
67
+ export declare const QueryMetricInputSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").QueryMetricInput, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").QueryMetricInput, unknown>>;
68
+ export declare const QueryMetricOutputSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").QueryMetricOutput, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").QueryMetricOutput, unknown>>;
52
69
  export declare const ListTracesInputSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").ListTracesInput, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").ListTracesInput, unknown>>;
53
70
  export declare const ListTracesOutputSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").ListTracesOutput, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").ListTracesOutput, unknown>>;
54
71
  export declare const GetTraceInputSchema: z.ZodType<import("@ancplua/qyl-api-schema/types").GetTraceInput, unknown, z.core.$ZodTypeInternals<import("@ancplua/qyl-api-schema/types").GetTraceInput, unknown>>;
@@ -109,6 +109,64 @@ export function compactOutputSchema(schema) {
109
109
  compacted.set(schema, wrapper);
110
110
  return wrapper;
111
111
  }
112
+ const objectRooted = new WeakMap();
113
+ /** `{ type: "object" }` with no properties and nothing forbidden: zod's spelling of "any object". */
114
+ function isOpenObject(value) {
115
+ if (value === null || typeof value !== "object" || Array.isArray(value))
116
+ return false;
117
+ const schema = value;
118
+ const properties = schema.properties;
119
+ const additional = schema.additionalProperties;
120
+ return schema.type === "object" &&
121
+ (properties === undefined || Object.keys(properties).length === 0) &&
122
+ schema.required === undefined &&
123
+ (additional === undefined || additional === true ||
124
+ (typeof additional === "object" && additional !== null && Object.keys(additional).length === 0));
125
+ }
126
+ /**
127
+ * Emits a tool's input JSON Schema with `type: "object"` at the root.
128
+ *
129
+ * MCP requires `inputSchema.type` to be `"object"`, and hosts validate it. A
130
+ * discriminated union of object variants is an object, but zod spells it as
131
+ * `allOf: [<any object>, { oneOf: [...] }]` with no root `type`, so `tools/list`
132
+ * would publish a shape a strict host rejects. This hoists the union to the
133
+ * root and states the type; validation is the untouched generated zod schema.
134
+ */
135
+ export function objectRootInputSchema(schema) {
136
+ const cachedWrapper = objectRooted.get(schema);
137
+ if (cachedWrapper !== undefined)
138
+ return cachedWrapper;
139
+ let emitted;
140
+ const jsonSchema = () => {
141
+ if (emitted === undefined) {
142
+ const json = z.toJSONSchema(schema, { target: JSON_SCHEMA_TARGET, io: "input" });
143
+ normalizeOutputSpelling(json);
144
+ if (json.type === undefined) {
145
+ const parts = Array.isArray(json.allOf) ? json.allOf : [];
146
+ const unions = parts.filter((part) => Array.isArray(part.oneOf) || Array.isArray(part.anyOf));
147
+ const others = parts.filter((part) => !unions.includes(part) && !isOpenObject(part));
148
+ if (unions.length === 1 && others.length === 0) {
149
+ delete json.allOf;
150
+ Object.assign(json, unions[0]);
151
+ }
152
+ json.type = "object";
153
+ }
154
+ emitted = json;
155
+ }
156
+ return emitted;
157
+ };
158
+ const standard = schema["~standard"];
159
+ const wrapper = {
160
+ "~standard": {
161
+ version: 1,
162
+ vendor: standard.vendor,
163
+ jsonSchema: { input: jsonSchema, output: jsonSchema },
164
+ validate: (value) => standard.validate(value),
165
+ },
166
+ };
167
+ objectRooted.set(schema, wrapper);
168
+ return wrapper;
169
+ }
112
170
  // Qyl telemetry and installable MCP server contracts.
113
171
  export const SpanSchema = contractSchema("OTel.Traces.Span");
114
172
  export const TraceSummarySchema = contractSchema("OTel.Traces.TraceSummary");
@@ -138,6 +196,13 @@ export const DisplayTracesInputSchema = contractSchema("Mcp.Tools.DisplayTracesI
138
196
  export const DisplayTracesOutputSchema = contractSchema("Mcp.Tools.DisplayTracesOutput");
139
197
  export const DisplayMcpDashboardInputSchema = contractSchema("Mcp.Tools.DisplayMcpDashboardInput");
140
198
  export const DisplayMcpDashboardOutputSchema = contractSchema("Mcp.Tools.DisplayMcpDashboardOutput");
199
+ export const ToolErrorSchema = contractSchema("Mcp.Tools.ToolError");
200
+ export const ListMetricsInputSchema = contractSchema("Mcp.Tools.ListMetricsInput");
201
+ export const ListMetricsOutputSchema = contractSchema("Mcp.Tools.ListMetricsOutput");
202
+ export const GetMetricSeriesInputSchema = contractSchema("Mcp.Tools.GetMetricSeriesInput");
203
+ export const GetMetricSeriesOutputSchema = contractSchema("Mcp.Tools.GetMetricSeriesOutput");
204
+ export const QueryMetricInputSchema = contractSchema("Mcp.Tools.QueryMetricInput");
205
+ export const QueryMetricOutputSchema = contractSchema("Mcp.Tools.QueryMetricOutput");
141
206
  export const ListTracesInputSchema = contractSchema("Mcp.Tools.ListTracesInput");
142
207
  export const ListTracesOutputSchema = contractSchema("Mcp.Tools.ListTracesOutput");
143
208
  export const GetTraceInputSchema = contractSchema("Mcp.Tools.GetTraceInput");
@@ -1 +1 @@
1
- {"version":3,"file":"contract-validation.js","sourceRoot":"","sources":["../src/contract-validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract-validation.js","sourceRoot":"","sources":["../src/contract-validation.ts"],"names":[],"mappings":"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"}
package/dist/data.d.ts CHANGED
@@ -1,14 +1,36 @@
1
1
  /**
2
2
  * Telemetry fetching (shared by model tools, display tools, fetch_telemetry —
3
- * demo mode honors every filter the live endpoints support).
3
+ * demo mode honors every filter and every cursor the live endpoints support).
4
+ *
5
+ * Every list returns the page it was given: the Collector's `has_more` and
6
+ * opaque `next_cursor` live, and a demo page cut from the dataset with the
7
+ * same semantics (`paging.ts`). Filters travel to the Collector under their
8
+ * published query-parameter names; the demo branch applies the same filters
9
+ * itself, so an answer never claims a filter it did not apply.
4
10
  */
5
11
  import { type CollectorRequestOptions } from "./collector.js";
6
12
  import type { SessionId, TraceId } from "@ancplua/qyl-api-schema/types";
7
13
  import type { McpDashboardStats, Mode, QylLogRecord, QylSession, QylTrace } from "./wire.js";
8
- export declare function fetchTraces(limit: number, options?: CollectorRequestOptions): Promise<{
9
- traces: QylTrace[];
14
+ /** A page plus the mode it came from; `nextCursor` is added after redaction, it is not telemetry. */
15
+ type PagedResult<K extends string, T> = {
16
+ [key in K]: T[];
17
+ } & {
18
+ hasMore: boolean;
19
+ nextCursor?: string;
10
20
  mode: Mode;
11
- }>;
21
+ };
22
+ /** The published window: `start_time` inclusive, `end_time` exclusive, both RFC 3339. */
23
+ export interface TimeRange {
24
+ start_time?: string;
25
+ end_time?: string;
26
+ }
27
+ export interface TraceFilters extends TimeRange {
28
+ limit: number;
29
+ service_name?: string;
30
+ errors_only?: boolean;
31
+ cursor?: string;
32
+ }
33
+ export declare function fetchTraces(filters: TraceFilters, options?: CollectorRequestOptions): Promise<PagedResult<"traces", QylTrace>>;
12
34
  export declare function fetchTrace(traceId: string, options?: CollectorRequestOptions): Promise<{
13
35
  trace: QylTrace;
14
36
  mode: Mode;
@@ -17,21 +39,22 @@ export declare function fetchSessionTraces(sessionId: string, limit: number, opt
17
39
  traces: QylTrace[];
18
40
  mode: Mode;
19
41
  }>;
20
- export declare function fetchSessions(limit: number, activeOnly?: boolean, options?: CollectorRequestOptions): Promise<{
21
- sessions: QylSession[];
22
- mode: Mode;
23
- }>;
24
- interface LogFilters {
42
+ export interface SessionFilters extends TimeRange {
43
+ limit: number;
44
+ active_only?: boolean;
45
+ cursor?: string;
46
+ }
47
+ export declare function fetchSessions(filters: SessionFilters, options?: CollectorRequestOptions): Promise<PagedResult<"sessions", QylSession>>;
48
+ export interface LogFilters extends TimeRange {
25
49
  trace_id?: string;
50
+ session_id?: string;
26
51
  service_name?: string;
27
52
  severity_min?: number;
28
53
  query?: string;
29
54
  limit: number;
55
+ cursor?: string;
30
56
  }
31
- export declare function fetchLogs(filters: LogFilters, options?: CollectorRequestOptions): Promise<{
32
- logs: QylLogRecord[];
33
- mode: Mode;
34
- }>;
57
+ export declare function fetchLogs(filters: LogFilters, options?: CollectorRequestOptions): Promise<PagedResult<"logs", QylLogRecord>>;
35
58
  /** Shared by display_traces and fetch_telemetry (view "traces"). */
36
59
  export declare function fetchTracesForDisplay(args: {
37
60
  trace_id?: TraceId;
package/dist/data.js CHANGED
@@ -1,23 +1,53 @@
1
1
  /**
2
2
  * Telemetry fetching (shared by model tools, display tools, fetch_telemetry —
3
- * demo mode honors every filter the live endpoints support).
3
+ * demo mode honors every filter and every cursor the live endpoints support).
4
+ *
5
+ * Every list returns the page it was given: the Collector's `has_more` and
6
+ * opaque `next_cursor` live, and a demo page cut from the dataset with the
7
+ * same semantics (`paging.ts`). Filters travel to the Collector under their
8
+ * published query-parameter names; the demo branch applies the same filters
9
+ * itself, so an answer never claims a filter it did not apply.
4
10
  */
5
11
  import { CollectorError, collectorGet, parseCollectorLog, parseCollectorPage, parseCollectorSession, parseCollectorTrace, resolveMode, } from "./collector.js";
6
12
  import { getDemo, getDemoMcpSpans } from "./demo.js";
7
- import { formatAttributeValue } from "@ancplua/qyl-api-schema/runtime";
13
+ import { compareUnixNanos, epochMsToUnixNanos, formatAttributeValue, } from "@ancplua/qyl-api-schema/runtime";
14
+ import { demoPage } from "./paging.js";
8
15
  import { aggregateMcpStats, pickBucketMs } from "./stats.js";
9
16
  import { redactTelemetry } from "./telemetry-redaction.js";
10
17
  import { LogsListResponseSchema, SessionsListResponseSchema, SessionTracesListResponseSchema, TracesListResponseSchema, } from "./contract-validation.js";
11
- export async function fetchTraces(limit, options = {}) {
18
+ function paged(key, page, mode) {
19
+ const redacted = redactTelemetry({ [key]: page.items, mode });
20
+ return {
21
+ ...redacted,
22
+ hasMore: page.hasMore,
23
+ ...(page.nextCursor === undefined ? {} : { nextCursor: page.nextCursor }),
24
+ };
25
+ }
26
+ function withinRange(iso, range) {
27
+ const at = Date.parse(iso);
28
+ if (range.start_time !== undefined && at < Date.parse(range.start_time))
29
+ return false;
30
+ if (range.end_time !== undefined && at >= Date.parse(range.end_time))
31
+ return false;
32
+ return true;
33
+ }
34
+ export async function fetchTraces(filters, options = {}) {
12
35
  const mode = await resolveMode();
13
36
  if (mode === "demo") {
14
- return redactTelemetry({ traces: getDemo().traces.slice(0, limit), mode });
37
+ const traces = getDemo().traces.filter((trace) => withinRange(trace.start_time, filters) &&
38
+ (filters.service_name === undefined || trace.services.includes(filters.service_name)) &&
39
+ (!filters.errors_only || trace.has_error));
40
+ return paged("traces", demoPage(traces, filters.limit, filters.cursor), mode);
15
41
  }
16
- const body = await collectorGet("/api/v1/traces", { limit }, options);
17
- return redactTelemetry({
18
- traces: parseCollectorPage(body, "/api/v1/traces", TracesListResponseSchema, parseCollectorTrace).items,
19
- mode,
20
- });
42
+ const body = await collectorGet("/api/v1/traces", {
43
+ start_time: filters.start_time,
44
+ end_time: filters.end_time,
45
+ service_name: filters.service_name,
46
+ errors_only: filters.errors_only ? true : undefined,
47
+ limit: filters.limit,
48
+ cursor: filters.cursor,
49
+ }, options);
50
+ return paged("traces", parseCollectorPage(body, "/api/v1/traces", TracesListResponseSchema, parseCollectorTrace), mode);
21
51
  }
22
52
  export async function fetchTrace(traceId, options = {}) {
23
53
  const mode = await resolveMode();
@@ -60,17 +90,21 @@ export async function fetchSessionTraces(sessionId, limit, options = {}) {
60
90
  throw err;
61
91
  }
62
92
  }
63
- export async function fetchSessions(limit, activeOnly, options = {}) {
93
+ export async function fetchSessions(filters, options = {}) {
64
94
  const mode = await resolveMode();
65
95
  if (mode === "demo") {
66
- const sessions = (activeOnly ? getDemo().sessions.filter((s) => s.state === "active") : getDemo().sessions).slice(0, limit);
67
- return redactTelemetry({ sessions, mode });
96
+ const sessions = getDemo().sessions.filter((session) => (!filters.active_only || session.state === "active") &&
97
+ withinRange(session.start_time, filters));
98
+ return paged("sessions", demoPage(sessions, filters.limit, filters.cursor), mode);
68
99
  }
69
- const body = await collectorGet("/api/v1/sessions", { limit, is_active: activeOnly ? true : undefined }, options);
70
- return redactTelemetry({
71
- sessions: parseCollectorPage(body, "/api/v1/sessions", SessionsListResponseSchema, parseCollectorSession).items,
72
- mode,
73
- });
100
+ const body = await collectorGet("/api/v1/sessions", {
101
+ is_active: filters.active_only ? true : undefined,
102
+ start_time: filters.start_time,
103
+ end_time: filters.end_time,
104
+ limit: filters.limit,
105
+ cursor: filters.cursor,
106
+ }, options);
107
+ return paged("sessions", parseCollectorPage(body, "/api/v1/sessions", SessionsListResponseSchema, parseCollectorSession), mode);
74
108
  }
75
109
  export async function fetchLogs(filters, options = {}) {
76
110
  const mode = await resolveMode();
@@ -78,6 +112,13 @@ export async function fetchLogs(filters, options = {}) {
78
112
  let logs = getDemo().logs;
79
113
  if (filters.trace_id)
80
114
  logs = logs.filter((l) => l.trace_id === filters.trace_id);
115
+ if (filters.session_id !== undefined) {
116
+ // Demo log records carry no session id; the session owns its traces, so
117
+ // its logs are the logs of those traces. An unknown session is an empty
118
+ // page, as the Collector answers a log filter that matches nothing.
119
+ const traceIds = new Set((getDemo().sessionTraces[filters.session_id] ?? []).map((trace) => trace.trace_id));
120
+ logs = logs.filter((l) => l.trace_id !== undefined && traceIds.has(l.trace_id));
121
+ }
81
122
  if (filters.service_name) {
82
123
  logs = logs.filter((l) => String(l.resource.service_name) === filters.service_name);
83
124
  }
@@ -89,19 +130,28 @@ export async function fetchLogs(filters, options = {}) {
89
130
  const needle = filters.query.toLowerCase();
90
131
  logs = logs.filter((l) => formatAttributeValue(l.body).toLowerCase().includes(needle));
91
132
  }
92
- return redactTelemetry({ logs: logs.slice(0, filters.limit), mode });
133
+ if (filters.start_time !== undefined) {
134
+ const start = epochMsToUnixNanos(Date.parse(filters.start_time));
135
+ logs = logs.filter((l) => compareUnixNanos(l.time_unix_nano, start) >= 0);
136
+ }
137
+ if (filters.end_time !== undefined) {
138
+ const end = epochMsToUnixNanos(Date.parse(filters.end_time));
139
+ logs = logs.filter((l) => compareUnixNanos(l.time_unix_nano, end) < 0);
140
+ }
141
+ return paged("logs", demoPage(logs, filters.limit, filters.cursor), mode);
93
142
  }
94
143
  const body = await collectorGet("/api/v1/logs", {
144
+ session_id: filters.session_id,
95
145
  trace_id: filters.trace_id,
96
146
  service_name: filters.service_name,
97
147
  severity_min: filters.severity_min,
98
148
  query: filters.query,
149
+ start_time: filters.start_time,
150
+ end_time: filters.end_time,
99
151
  limit: filters.limit,
152
+ cursor: filters.cursor,
100
153
  }, options);
101
- return redactTelemetry({
102
- logs: parseCollectorPage(body, "/api/v1/logs", LogsListResponseSchema, parseCollectorLog).items,
103
- mode,
104
- });
154
+ return paged("logs", parseCollectorPage(body, "/api/v1/logs", LogsListResponseSchema, parseCollectorLog), mode);
105
155
  }
106
156
  /** Shared by display_traces and fetch_telemetry (view "traces"). */
107
157
  export async function fetchTracesForDisplay(args, options = {}) {
@@ -112,7 +162,8 @@ export async function fetchTracesForDisplay(args, options = {}) {
112
162
  if (args.session_id) {
113
163
  return fetchSessionTraces(args.session_id, args.limit, options);
114
164
  }
115
- return fetchTraces(args.limit, options);
165
+ const { traces, mode } = await fetchTraces({ limit: args.limit }, options);
166
+ return { traces, mode };
116
167
  }
117
168
  /** Shared by display_mcp_dashboard and fetch_telemetry (view "mcp_stats"). */
118
169
  export async function fetchMcpStats(hours, options = {}) {