33 */
44export type TelemetryResult = "success" | "failure" ;
55export type ServerCommand = "start" | "stop" ;
6+ export type TelemetryConfigSet = "true" | "false" ;
67
78/**
89 * Base interface for all events
@@ -14,21 +15,11 @@ export interface Event {
1415}
1516
1617export interface BaseEvent extends Event {
17- properties : {
18- device_id ?: string ;
19- mcp_server_version : string ;
20- mcp_server_name : string ;
21- mcp_client_version ?: string ;
22- mcp_client_name ?: string ;
23- platform : string ;
24- arch : string ;
25- os_type : string ;
18+ properties : CommonProperties & {
2619 component : string ;
2720 duration_ms : number ;
2821 result : TelemetryResult ;
2922 category : string ;
30- os_version ?: string ;
31- session_id ?: string ;
3223 } & Event [ "properties" ] ;
3324}
3425
@@ -58,3 +49,27 @@ export interface ServerEvent extends BaseEvent {
5849 runtime_duration_ms ?: number ;
5950 } & BaseEvent [ "properties" ] ;
6051}
52+
53+ /**
54+ * Interface for static properties, they can be fetched once and reused.
55+ */
56+ export type CommonStaticProperties = {
57+ device_id ?: string ;
58+ mcp_server_version : string ;
59+ mcp_server_name : string ;
60+ platform : string ;
61+ arch : string ;
62+ os_type : string ;
63+ os_version ?: string ;
64+ }
65+
66+ /**
67+ * Common properties for all events that might change.
68+ */
69+ export type CommonProperties = {
70+ mcp_client_version ?: string ;
71+ mcp_client_name ?: string ;
72+ config_atlas_auth ?: TelemetryConfigSet ;
73+ config_connection_string ?: TelemetryConfigSet ;
74+ session_id ?: string ;
75+ } & CommonStaticProperties ;
0 commit comments