@davidfuchs/mcp-uptime-kuma 0.2.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -4,14 +4,26 @@ A Model Context Protocol (MCP) server for [Uptime Kuma](https://github.com/louis
4
4
 
5
5
  ## Features
6
6
 
7
- - **Multiple Transports**: Supports both stdio (for local integration) and streamable HTTP (for remote access)
8
- - **Built with TypeScript**: Full type safety and modern tooling
7
+ - **Uptime Kuma Integration**: Real-time access to monitors and heartbeats via WebSocket connection. This MCP server is immediately notified of status changes in Uptime Kuma.
8
+ - **Context-Friendly**: Carefully controls the amount of data returned to avoid overwhelming the LLM context window. Tools default to returning only essential fields and recent heartbeats, with options to request more when needed.
9
+ - **Multiple Transports**: Supports both stdio (for local integration) and streamable HTTP (for remote access).
9
10
  - **MCP SDK**: Uses the official `@modelcontextprotocol/sdk` package
10
- - **Uptime Kuma Integration**: Real-time access to monitors and heartbeats via WebSocket connection
11
11
  - **Comprehensive Tools**: Retrieve monitor configurations and status data (heartbeats)
12
12
 
13
13
  ## Available Tools
14
14
 
15
+ ### getMonitorSummary
16
+ Retrieves a summarized list of all monitors with essential information and their current status.
17
+
18
+ - **Input**:
19
+ - `keywords` (string, optional): Space-separated keywords to filter monitors by pathName (case-insensitive). All keywords must match for a monitor to be included.
20
+ - **Output**: Array of monitor summaries with:
21
+ - Monitor ID, name, pathName
22
+ - Active and maintenance state
23
+ - Most recent heartbeat status (0=DOWN, 1=UP, 2=PENDING, 3=MAINTENANCE)
24
+ - Status message from the most recent heartbeat
25
+ - Total count of matching monitors
26
+
15
27
  ### getMonitor
16
28
  Retrieves detailed information about a specific monitor by its ID.
17
29
 
@@ -32,22 +44,30 @@ Retrieves heartbeats (status checks) for a specific monitor.
32
44
 
33
45
  - **Input**:
34
46
  - `monitorID` (number): The ID of the monitor to get heartbeats for
35
- - `includeAll` (boolean, optional): If true, returns all heartbeats (up to 100). If false, returns only the most recent heartbeat (default: false)
36
- - **Output**: Array of heartbeat objects containing status, response time, timestamps, etc.
47
+ - `maxHeartbeats` (number, optional): Maximum number of most recent heartbeats to return (1-100). Default: 1
48
+ - **Output**: Object containing:
49
+ - `monitorID`: The monitor ID
50
+ - `heartbeats`: Array of heartbeat objects with status, response time, timestamps, etc.
51
+ - `count`: Number of heartbeats returned
37
52
 
38
- ### listAllHeartbeats
39
- Retrieves the complete heartbeat list for all monitors.
53
+ ### listHeartbeats
54
+ Retrieves the heartbeats for all monitors.
40
55
 
41
56
  - **Input**:
42
- - `includeAll` (boolean, optional): If true, returns all heartbeats (up to 100 per monitor). If false, returns only the most recent heartbeat per monitor (default: false)
43
- - **Output**: Map of monitor IDs to their heartbeat arrays, with monitor and heartbeat counts
57
+ - `maxHeartbeats` (number, optional): Maximum number of most recent heartbeats per monitor (1-100). Default: 1
58
+ - **Output**: Object containing:
59
+ - `heartbeats`: Map of monitor IDs to their heartbeat arrays
60
+ - `monitorCount`: Number of monitors
61
+ - `totalHeartbeatCount`: Total number of heartbeats across all monitors
44
62
 
45
63
  ## Usage Notes
46
64
 
47
65
  - **Monitors** contain configuration information (URLs, check intervals, notification settings, etc.)
48
66
  - **Heartbeats** contain actual status data (up/down status, response times, timestamps, etc.)
49
67
  - To check if something is **up or down**, use the heartbeat tools, not the monitor tools
50
- - By default, tools return only essential fields. Set `includeAdditionalFields=true` to get all available data
68
+ - Use **getMonitorSummary** for a quick overview of all monitors and their current status
69
+ - By default, monitor tools return only essential fields. Set `includeAdditionalFields=true` to get all available data
70
+ - By default, heartbeat tools return only the most recent heartbeat. Use `maxHeartbeats` to retrieve more historical data
51
71
 
52
72
  ## Prerequisites
53
73
 
@@ -79,15 +99,42 @@ For Claude Code, VS Code, or other MCP clients, you can configure the server as
79
99
  }
80
100
  ```
81
101
 
102
+ If you're using LibreChat (librechat.yaml), you can configure it like this:
103
+
104
+ ```yaml
105
+ mcpServers:
106
+ uptime-kuma:
107
+ command: npx
108
+ args: ["-y", "@davidfuchs/mcp-uptime-kuma"]
109
+ customUserVars:
110
+ UPTIME_KUMA_URL:
111
+ title: "Uptime Kuma URL"
112
+ description: "The URL to log into Uptime Kuma."
113
+ UPTIME_KUMA_USERNAME:
114
+ title: "Uptime Kuma Username"
115
+ description: "The username to log into Uptime Kuma."
116
+ UPTIME_KUMA_PASSWORD:
117
+ title: "Uptime Kuma Password"
118
+ description: "The password to log into Uptime Kuma."
119
+ env:
120
+ UPTIME_KUMA_URL: "{{UPTIME_KUMA_URL}}"
121
+ UPTIME_KUMA_USERNAME: "{{UPTIME_KUMA_USERNAME}}"
122
+ UPTIME_KUMA_PASSWORD: "{{UPTIME_KUMA_PASSWORD}}"
123
+ serverInstructions: true
124
+ startup: false
125
+ ```
126
+
127
+ If you're the only one using the LibreChat server, you can remove `customUserVars` and set the environment variables directly in the `env` section. You can also remove `startup: false` - that's only in there because without it, LibreChat tries to start the mcp-uptime-kuma MCP server immediately on startup, which fails because the user-provided credentials aren't available yet.
128
+
82
129
  ### For the Streamable HTTP Transport
83
130
 
84
131
  The recommended way to run the MCP server using streamable HTTP is to run it as a Docker container.
85
132
 
86
- A docker-compose file is provided - update the included environment variables as needed and run:
133
+ A docker-compose file is provided in the Github repository. Grab it, update the included environment variables as needed for your Uptime Kuma deployment, and run:
87
134
 
88
135
  `docker compose up -d`
89
136
 
90
- The MCP endpoint will be available on your Docker host at port 300 (configurable via `PORT` environment variable).
137
+ The MCP endpoint will be available on your Docker host at port 3000 (configurable via `PORT` environment variable).
91
138
 
92
139
  If you'd prefer to run it directly on your host machine, see the Development Usage section below.
93
140
 
@@ -192,15 +239,18 @@ mcp-uptime-kuma/
192
239
  │ ├── uptime-kuma-client.ts # WebSocket client for Uptime Kuma API
193
240
  │ └── types.ts # TypeScript type definitions
194
241
  ├── dist/ # Compiled JavaScript (generated)
242
+ ├── docker-compose.yml # Docker Compose configuration
243
+ ├── Dockerfile # Docker image definition
195
244
  ├── package.json # Project dependencies and scripts
196
245
  ├── tsconfig.json # TypeScript configuration
197
246
  ├── .env # Environment configuration (create this)
247
+ ├── LICENSE # License file
198
248
  └── README.md # This file
199
249
  ```
200
250
 
201
251
  ## Development
202
252
 
203
- To add new tools or modify existing ones, edit `src/server.ts`. The Uptime Kuma client in `src/uptime-kuma-client.ts` handles the WebSocket connection and caches monitor and heartbeat data.
253
+ To add new tools or modify existing ones, edit `src/server.ts`. The Uptime Kuma client in `src/uptime-kuma-client.ts` handles the WebSocket connection and retrieves monitor and heartbeat data.
204
254
 
205
255
  ## Learn More
206
256
 
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMpE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,CA+Q/E"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMpE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,SAAS,CAAC,CAkT/E"}
package/dist/server.js CHANGED
@@ -9,22 +9,23 @@ import { HeartbeatSchema, MonitorBaseSchema } from './types.js';
9
9
  export async function createServer(config) {
10
10
  const server = new McpServer({
11
11
  name: 'mcp-uptime-kuma',
12
- version: '0.1.0',
12
+ version: '0.3.0',
13
13
  }, {
14
14
  instructions: `
15
- This MCP server provides access to Uptime Kuma monitoring data.
16
-
17
- Available tools:
18
- - getMonitor: Retrieve configuration and details for a specific monitor by ID
19
- - listMonitors: Get all monitors with their configurations
20
- - getHeartbeats: Retrieve status checks and uptime data for a specific monitor
21
- - listAllHeartbeats: Get status checks and uptime data for all monitors
15
+ This MCP server provides access to Uptime Kuma monitoring data. This data is useful if the user is asking
16
+ for information about the status of a system, or historical uptime/downtime information.
22
17
 
23
18
  Monitors contain configuration information (URLs, check intervals, notification settings, etc.).
24
19
  Heartbeats contain actual status data (up/down status, response times, timestamps, etc.).
25
20
  To check if something is up or down, use heartbeat tools, not monitor tools.
21
+ Prefer to use the 'getMonitorSummary' tool to get a quick overview of all monitors and their current status
22
+ before using other monitor or heartbeat tools.
23
+
24
+ Be clear in your response how many heartbeats you're consulting for status information.
25
+ Do not exceed 5 heartbeats when using the 'listHeartbeats' tool unless the user asks you to.
26
+ Do not exceed 10 heartbeats when using the 'getHeartbeats' tool unless the user asks you to.
26
27
 
27
- By default, tools return only essential fields. Set includeAdditionalFields=true to get all available data.
28
+ By default, monitor tools return only essential fields. Set includeAdditionalFields=true to get all available data.
28
29
  `
29
30
  });
30
31
  // Initialize Uptime Kuma client and login
@@ -44,7 +45,7 @@ export async function createServer(config) {
44
45
  // Register getMonitor tool
45
46
  server.registerTool('getMonitor', {
46
47
  title: 'Get Monitor',
47
- description: 'Retrieves detailed information about a specific monitor by its ID',
48
+ description: 'Retrieves detailed information about a specific monitor by its ID. By default returns only core fields; set includeAdditionalFields to true to return all fields.',
48
49
  inputSchema: {
49
50
  monitorID: z.number().int().positive().describe('The ID of the monitor to retrieve'),
50
51
  includeAdditionalFields: z.boolean().optional().describe('Include all additional fields from Uptime Kuma (default: false)')
@@ -75,7 +76,7 @@ export async function createServer(config) {
75
76
  // Register listMonitors tool
76
77
  server.registerTool('listMonitors', {
77
78
  title: 'List Monitors',
78
- description: 'Retrieves the full list of all monitors the user has access to from the cache. By default returns all fields; set includeAdditionalFields to false to return only defined fields.',
79
+ description: 'Retrieves the full list of all monitors the user has access to. By default returns only core fields; set includeAdditionalFields to true to return all fields.',
79
80
  inputSchema: {
80
81
  includeAdditionalFields: z.boolean().optional().describe('Include all additional fields from Uptime Kuma (default: false)')
81
82
  },
@@ -106,33 +107,67 @@ export async function createServer(config) {
106
107
  throw new McpError(ErrorCode.InternalError, `Failed to list monitors: ${errorMessage}`);
107
108
  }
108
109
  });
110
+ // Register getMonitorSummary tool
111
+ server.registerTool('getMonitorSummary', {
112
+ title: 'Get Monitor Summary',
113
+ description: 'Retrieves a summarized list of all monitors with essential information (ID, name, pathName, active state, maintenance state) and the status and message from the most recent heartbeat. This is useful for getting a quick overview of all monitors. Optionally filter by keywords in the pathName of the monitor.',
114
+ inputSchema: {
115
+ keywords: z.string().optional().describe('Space-separated keywords to filter monitors by pathName (case-insensitive). All keywords must match for a monitor to be included.')
116
+ },
117
+ outputSchema: {
118
+ summaries: z.array(z.object({
119
+ id: z.number(),
120
+ name: z.string(),
121
+ pathName: z.string(),
122
+ active: z.boolean(),
123
+ maintenance: z.boolean(),
124
+ status: z.number().optional().describe('0=DOWN, 1=UP, 2=PENDING, 3=MAINTENANCE'),
125
+ msg: z.string().optional().describe('Status message from the most recent heartbeat'),
126
+ })).describe('Array of monitor summaries'),
127
+ count: z.number()
128
+ },
129
+ }, async ({ keywords }) => {
130
+ if (!isAuthenticated) {
131
+ throw new McpError(ErrorCode.InternalError, 'Not authenticated with Uptime Kuma');
132
+ }
133
+ try {
134
+ const summaries = client.getMonitorSummary(keywords);
135
+ return {
136
+ content: [{
137
+ type: 'text',
138
+ text: JSON.stringify(summaries, null, 2)
139
+ }],
140
+ structuredContent: {
141
+ summaries,
142
+ count: summaries.length
143
+ },
144
+ };
145
+ }
146
+ catch (error) {
147
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
148
+ throw new McpError(ErrorCode.InternalError, `Failed to get monitor summary: ${errorMessage}`);
149
+ }
150
+ });
109
151
  // Register getHeartbeats tool
110
152
  server.registerTool('getHeartbeats', {
111
153
  title: 'Get Heartbeats',
112
- description: 'Retrieves heartbeats for a specific monitor from the cache. By default returns up to 100 most recent heartbeats; set includeAll to false to return only the most recent heartbeat.',
154
+ description: 'Retrieves heartbeats for a specific monitor. By default returns only the most recent heartbeat; set maxHeartbeats to return up to 100 heartbeats.',
113
155
  inputSchema: {
114
156
  monitorID: z.number().int().positive().describe('The ID of the monitor to get heartbeats for'),
115
- includeAll: z.boolean().optional().describe('If true, returns all heartbeats (up to 100). If false, returns only the most recent heartbeat (default: false)')
157
+ maxHeartbeats: z.number().int().positive().max(100).optional().describe('If set, returns the most recent X heartbeats (up to 100). If unset, returns only the most recent heartbeat (default: 1)')
116
158
  },
117
159
  outputSchema: {
118
160
  monitorID: z.number(),
119
161
  heartbeats: z.array(HeartbeatSchema),
120
162
  count: z.number()
121
163
  },
122
- }, async ({ monitorID, includeAll }) => {
164
+ }, async ({ monitorID, maxHeartbeats }) => {
123
165
  if (!isAuthenticated) {
124
166
  throw new McpError(ErrorCode.InternalError, 'Not authenticated with Uptime Kuma');
125
167
  }
126
168
  try {
127
- const includeAllFlag = includeAll ?? false;
128
- let heartbeatsArray;
129
- if (includeAllFlag) {
130
- heartbeatsArray = client.getHeartbeatsForMonitor(monitorID, true);
131
- }
132
- else {
133
- const singleHeartbeat = client.getHeartbeatsForMonitor(monitorID, false);
134
- heartbeatsArray = singleHeartbeat ? [singleHeartbeat] : [];
135
- }
169
+ const count = maxHeartbeats ?? 1;
170
+ const heartbeatsArray = client.getHeartbeatsForMonitor(monitorID, count);
136
171
  return {
137
172
  content: [{
138
173
  type: 'text',
@@ -151,36 +186,24 @@ export async function createServer(config) {
151
186
  }
152
187
  });
153
188
  // Register listAllHeartbeats tool
154
- server.registerTool('listAllHeartbeats', {
155
- title: 'List All Heartbeats',
156
- description: 'Retrieves the complete heartbeat list for all monitors from the cache. By default, each monitor ID maps to an array of up to 100 recent heartbeats; set includeAll to false to return only the most recent heartbeat per monitor.',
189
+ server.registerTool('listHeartbeats', {
190
+ title: 'List Heartbeats',
191
+ description: 'Retrieves the heartbeats for all monitors. By default, each monitor ID maps to an array of the one most recent heartbeat; set maxHeartbeats to return up to 100 heartbeats for each monitor.',
157
192
  inputSchema: {
158
- includeAll: z.boolean().optional().describe('If true, returns all heartbeats (up to 100 per monitor). If false, returns only the most recent heartbeat per monitor (default: false)')
193
+ maxHeartbeats: z.number().int().positive().max(100).optional().describe('If set, returns the most recent X heartbeats per monitor (up to 100). If unset, returns only the most recent heartbeat per monitor (default: 1)')
159
194
  },
160
195
  outputSchema: {
161
196
  heartbeats: z.record(z.string(), z.array(HeartbeatSchema)).describe('Map of monitor IDs to their heartbeat arrays'),
162
197
  monitorCount: z.number(),
163
198
  totalHeartbeatCount: z.number()
164
199
  },
165
- }, async ({ includeAll }) => {
200
+ }, async ({ maxHeartbeats }) => {
166
201
  if (!isAuthenticated) {
167
202
  throw new McpError(ErrorCode.InternalError, 'Not authenticated with Uptime Kuma');
168
203
  }
169
204
  try {
170
- const includeAllFlag = includeAll ?? false;
171
- const rawHeartbeatList = includeAllFlag
172
- ? client.getHeartbeatList(true)
173
- : client.getHeartbeatList(false);
174
- // Normalize to always return arrays for consistent schema
175
- const heartbeatList = {};
176
- for (const [monitorID, heartbeats] of Object.entries(rawHeartbeatList)) {
177
- if (includeAllFlag) {
178
- heartbeatList[monitorID] = heartbeats;
179
- }
180
- else {
181
- heartbeatList[monitorID] = heartbeats ? [heartbeats] : [];
182
- }
183
- }
205
+ const count = maxHeartbeats ?? 1;
206
+ const heartbeatList = client.getHeartbeatList(count);
184
207
  // Calculate total heartbeat count
185
208
  const totalCount = Object.values(heartbeatList).reduce((sum, heartbeats) => sum + heartbeats.length, 0);
186
209
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Socket } from 'socket.io-client';
2
- import type { MonitorBase, MonitorWithAdditionalFields, LoginResponse, MonitorList, Heartbeat, HeartbeatList } from './types.js';
2
+ import type { MonitorBase, MonitorWithAdditionalFields, LoginResponse, MonitorList, Heartbeat } from './types.js';
3
3
  /**
4
4
  * Uptime Kuma Socket.io API Client
5
5
  */
@@ -54,18 +54,35 @@ export declare class UptimeKumaClient {
54
54
  * Get the cached heartbeat list
55
55
  * The list is populated after login and kept up-to-date via server events
56
56
  *
57
- * @param includeAll - If true, returns arrays of all heartbeats (up to 100). If false, returns only the most recent heartbeat for each monitor
58
- * @returns The cached heartbeat list
57
+ * @param maxHeartbeats - Maximum number of heartbeats to return per monitor (default: 1)
58
+ * @returns The cached heartbeat list with arrays of heartbeats
59
59
  */
60
- getHeartbeatList<T extends boolean = true>(includeAll?: T): HeartbeatList<T>;
60
+ getHeartbeatList(maxHeartbeats?: number): {
61
+ [monitorID: string]: Heartbeat[];
62
+ };
61
63
  /**
62
64
  * Get heartbeats for a specific monitor from the cache
63
65
  *
64
66
  * @param monitorID - The ID of the monitor
65
- * @param includeAll - If true, returns all heartbeats (up to 100). If false, returns only the most recent heartbeat
66
- * @returns Heartbeat(s) for the monitor, or empty array/undefined if none exist
67
+ * @param maxHeartbeats - Maximum number of heartbeats to return (default: 1)
68
+ * @returns Array of heartbeats for the monitor, or empty array if none exist
67
69
  */
68
- getHeartbeatsForMonitor<T extends boolean = true>(monitorID: number, includeAll?: T): T extends true ? Heartbeat[] : Heartbeat | undefined;
70
+ getHeartbeatsForMonitor(monitorID: number, maxHeartbeats?: number): Heartbeat[];
71
+ /**
72
+ * Get a summarized list of all monitors with their most recent heartbeat status
73
+ *
74
+ * @param keywords - Optional space-separated keywords to filter by pathName (case-insensitive)
75
+ * @returns Array of monitor summaries containing essential info and latest heartbeat status
76
+ */
77
+ getMonitorSummary(keywords?: string): Array<{
78
+ id: number;
79
+ name: string;
80
+ pathName: string;
81
+ active: boolean;
82
+ maintenance: boolean;
83
+ status?: number;
84
+ msg?: string;
85
+ }>;
69
86
  /**
70
87
  * Get the socket instance (for advanced usage)
71
88
  */
@@ -1 +1 @@
1
- {"version":3,"file":"uptime-kuma-client.d.ts","sourceRoot":"","sources":["../src/uptime-kuma-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EACV,WAAW,EACX,2BAA2B,EAG3B,aAAa,EAEb,WAAW,EACX,SAAS,EACT,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,kBAAkB,CAA2B;gBAEzC,GAAG,EAAE,MAAM;IAIvB;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBxB;;OAEG;IACH,UAAU,IAAI,IAAI;IAkBlB;;;;;;;OAOG;IACH,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA8BjF;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAmBjC;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAoC/B;;;;;OAKG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,2BAA2B,GAAG,SAAS;IAItE;;;;;OAKG;IACH,cAAc,IAAI,WAAW,CAAC,IAAI,CAAC;IAInC;;;;;;OAMG;IACH,gBAAgB,CAAC,CAAC,SAAS,OAAO,GAAG,IAAI,EAAE,UAAU,GAAE,CAAa,GAAG,aAAa,CAAC,CAAC,CAAC;IAavF;;;;;;OAMG;IACH,uBAAuB,CAAC,CAAC,SAAS,OAAO,GAAG,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,GAAE,CAAa,GAAG,CAAC,SAAS,IAAI,GAAG,SAAS,EAAE,GAAG,SAAS,GAAG,SAAS;IAUrJ;;OAEG;IACH,SAAS,IAAI,MAAM,GAAG,IAAI;CAG3B;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,2BAA2B,GAAG,WAAW,CAyBrF"}
1
+ {"version":3,"file":"uptime-kuma-client.d.ts","sourceRoot":"","sources":["../src/uptime-kuma-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EACV,WAAW,EACX,2BAA2B,EAG3B,aAAa,EAEb,WAAW,EACX,SAAS,EAEV,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,gBAAgB,CAAyB;IACjD,OAAO,CAAC,kBAAkB,CAA2B;gBAEzC,GAAG,EAAE,MAAM;IAIvB;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBxB;;OAEG;IACH,UAAU,IAAI,IAAI;IAkBlB;;;;;;;OAOG;IACH,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA8BjF;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAmBjC;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAoC/B;;;;;OAKG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,2BAA2B,GAAG,SAAS;IAItE;;;;;OAKG;IACH,cAAc,IAAI,WAAW,CAAC,IAAI,CAAC;IAInC;;;;;;OAMG;IACH,gBAAgB,CAAC,aAAa,GAAE,MAAU,GAAG;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,CAAA;KAAE;IAUjF;;;;;;OAMG;IACH,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,GAAE,MAAU,GAAG,SAAS,EAAE;IAUlF;;;;;OAKG;IACH,iBAAiB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;QAC1C,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,OAAO,CAAC;QAChB,WAAW,EAAE,OAAO,CAAC;QACrB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,CAAC;IAkCF;;OAEG;IACH,SAAS,IAAI,MAAM,GAAG,IAAI;CAG3B;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,2BAA2B,GAAG,WAAW,CAyBrF"}
@@ -156,33 +156,63 @@ export class UptimeKumaClient {
156
156
  * Get the cached heartbeat list
157
157
  * The list is populated after login and kept up-to-date via server events
158
158
  *
159
- * @param includeAll - If true, returns arrays of all heartbeats (up to 100). If false, returns only the most recent heartbeat for each monitor
160
- * @returns The cached heartbeat list
159
+ * @param maxHeartbeats - Maximum number of heartbeats to return per monitor (default: 1)
160
+ * @returns The cached heartbeat list with arrays of heartbeats
161
161
  */
162
- getHeartbeatList(includeAll = true) {
163
- if (includeAll) {
164
- return this.heartbeatListCache;
165
- }
166
- // Return only the most recent heartbeat for each monitor
167
- const recentHeartbeats = {};
162
+ getHeartbeatList(maxHeartbeats = 1) {
163
+ const result = {};
168
164
  for (const [monitorID, heartbeats] of Object.entries(this.heartbeatListCache)) {
169
- recentHeartbeats[monitorID] = heartbeats[0];
165
+ result[monitorID] = heartbeats.slice(0, maxHeartbeats);
170
166
  }
171
- return recentHeartbeats;
167
+ return result;
172
168
  }
173
169
  /**
174
170
  * Get heartbeats for a specific monitor from the cache
175
171
  *
176
172
  * @param monitorID - The ID of the monitor
177
- * @param includeAll - If true, returns all heartbeats (up to 100). If false, returns only the most recent heartbeat
178
- * @returns Heartbeat(s) for the monitor, or empty array/undefined if none exist
173
+ * @param maxHeartbeats - Maximum number of heartbeats to return (default: 1)
174
+ * @returns Array of heartbeats for the monitor, or empty array if none exist
179
175
  */
180
- getHeartbeatsForMonitor(monitorID, includeAll = true) {
176
+ getHeartbeatsForMonitor(monitorID, maxHeartbeats = 1) {
181
177
  const heartbeats = this.heartbeatListCache[monitorID.toString()];
182
- if (includeAll) {
183
- return (heartbeats || []);
178
+ if (!heartbeats) {
179
+ return [];
180
+ }
181
+ return heartbeats.slice(0, maxHeartbeats);
182
+ }
183
+ /**
184
+ * Get a summarized list of all monitors with their most recent heartbeat status
185
+ *
186
+ * @param keywords - Optional space-separated keywords to filter by pathName (case-insensitive)
187
+ * @returns Array of monitor summaries containing essential info and latest heartbeat status
188
+ */
189
+ getMonitorSummary(keywords) {
190
+ const summaries = [];
191
+ // Parse keywords into an array
192
+ const keywordArray = keywords ? keywords.trim().split(/\s+/).map(k => k.toLowerCase()) : [];
193
+ for (const [monitorID, monitor] of Object.entries(this.monitorListCache)) {
194
+ // Filter by keywords if provided
195
+ if (keywordArray.length > 0) {
196
+ const pathNameLower = monitor.pathName.toLowerCase();
197
+ const matchesAllKeywords = keywordArray.every(keyword => pathNameLower.includes(keyword));
198
+ if (!matchesAllKeywords) {
199
+ continue;
200
+ }
201
+ }
202
+ // Get the most recent heartbeat for this monitor
203
+ const heartbeats = this.heartbeatListCache[monitorID];
204
+ const latestHeartbeat = heartbeats && heartbeats.length > 0 ? heartbeats[0] : undefined;
205
+ summaries.push({
206
+ id: monitor.id,
207
+ name: monitor.name,
208
+ pathName: monitor.pathName,
209
+ active: monitor.active,
210
+ maintenance: monitor.maintenance,
211
+ status: latestHeartbeat?.status,
212
+ msg: latestHeartbeat?.msg,
213
+ });
184
214
  }
185
- return (heartbeats?.[0]);
215
+ return summaries;
186
216
  }
187
217
  /**
188
218
  * Get the socket instance (for advanced usage)
@@ -1 +1 @@
1
- {"version":3,"file":"uptime-kuma-client.js","sourceRoot":"","sources":["../src/uptime-kuma-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uptime-kuma-client.js","sourceRoot":"","sources":["../src/uptime-kuma-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAa9C;;GAEG;AACH,MAAM,OAAO,gBAAgB;IACnB,MAAM,GAAkB,IAAI,CAAC;IAC7B,GAAG,CAAS;IACZ,gBAAgB,GAAsB,EAAE,CAAC;IACzC,kBAAkB,GAAwB,EAAE,CAAC;IAErD,YAAY,GAAW;QACrB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBACzB,YAAY,EAAE,IAAI;gBAClB,iBAAiB,EAAE,IAAI;gBACvB,oBAAoB,EAAE,CAAC;aACxB,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;gBAC7B,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,KAAY,EAAE,EAAE;gBAC/C,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAC3D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,yBAAyB;YACzB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAE7B,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,CAAC;QAED,mBAAmB;QACnB,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;QAC3B,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,QAAgB,EAAE,QAAgB,EAAE,KAAc;QACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBAC3C,MAAM,CAAC,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC;gBAC7C,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAA2D;gBACxE,QAAQ;gBACR,QAAQ;aACT,CAAC;YAEF,IAAI,KAAK,EAAE,CAAC;gBACV,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;YAC1B,CAAC;YAED,uEAAuE;YACvE,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACjC,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAE/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,QAAuB,EAAE,EAAE;gBAC/D,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;oBAChB,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACpB,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,IAAI,cAAc,CAAC,CAAC,CAAC;gBACpD,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,yBAAyB;QAC/B,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QAEzB,0EAA0E;QAC1E,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,WAA8B,EAAE,EAAE;YAC/D,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,0CAA0C;QAC1C,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,uBAAuB,EAAE,CAAC,OAA0B,EAAE,EAAE;YACrE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,+BAA+B;QAC/B,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,uBAAuB,EAAE,CAAC,SAAiB,EAAE,EAAE;YAC5D,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,uBAAuB;QAC7B,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QAEzB,wDAAwD;QACxD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,SAAiB,EAAE,aAA0B,EAAE,SAA4B,EAAE,EAAE;YAC9G,kEAAkE;YAClE,2DAA2D;YAC3D,OAAO,CAAC,KAAK,CAAC,sCAAsC,SAAS,GAAG,EAAE,aAAa,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YACtG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,GAAG,aAAa,CAAC;QAChE,CAAC,CAAC,CAAC;QAEH,sDAAsD;QACtD,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,SAAoB,EAAE,EAAE;YACnD,sDAAsD;YACtD,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC;gBACzB,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,SAAS,CAAC,CAAC;gBAClE,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;YAEjD,wDAAwD;YACxD,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACxC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;YAC1C,CAAC;YAED,sDAAsD;YACtD,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAEtD,wEAAwE;YACxE,IAAI,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;gBACpD,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACxF,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,UAAU,CAAC,SAAiB;QAC1B,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,gBAAgB,CAAC,gBAAwB,CAAC;QACxC,MAAM,MAAM,GAAyC,EAAE,CAAC;QAExD,KAAK,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC9E,MAAM,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;QACzD,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;OAMG;IACH,uBAAuB,CAAC,SAAiB,EAAE,gBAAwB,CAAC;QAClE,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEjE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,QAAiB;QASjC,MAAM,SAAS,GAAG,EAAE,CAAC;QAErB,+BAA+B;QAC/B,MAAM,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAE5F,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACzE,iCAAiC;YACjC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;gBACrD,MAAM,kBAAkB,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC1F,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,SAAS;gBACX,CAAC;YACH,CAAC;YAED,iDAAiD;YACjD,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;YACtD,MAAM,eAAe,GAAG,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAExF,SAAS,CAAC,IAAI,CAAC;gBACb,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,MAAM,EAAE,eAAe,EAAE,MAAM;gBAC/B,GAAG,EAAE,eAAe,EAAE,GAAG;aAC1B,CAAC,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAoC;IACtE,MAAM,QAAQ,GAAgB;QAC5B,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;KACjC,CAAC;IAEF,oCAAoC;IACpC,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS;QAAE,QAAQ,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAC1D,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACnE,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;QAAE,QAAQ,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IACzE,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;QAAE,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC7D,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;QAAE,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC7D,IAAI,OAAO,CAAC,kBAAkB,KAAK,SAAS;QAAE,QAAQ,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IACvG,IAAI,OAAO,CAAC,yBAAyB,KAAK,SAAS;QAAE,QAAQ,CAAC,yBAAyB,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAC5H,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS;QAAE,QAAQ,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAE/E,OAAO,QAAQ,CAAC;AAClB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@davidfuchs/mcp-uptime-kuma",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "A Model Context Protocol (MCP) server for Uptime Kuma version 2, supporting both stdio and streamable HTTP transports.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",