@davidfuchs/mcp-uptime-kuma 0.5.3 → 0.6.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 +73 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +79 -16
- package/dist/index.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +4 -1
package/README.md
CHANGED
|
@@ -33,7 +33,7 @@ A [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) server for [U
|
|
|
33
33
|
| `getHeartbeats` | Get status check history for a specific monitor |
|
|
34
34
|
| `getSettings` | Get Uptime Kuma server settings |
|
|
35
35
|
|
|
36
|
-
###
|
|
36
|
+
### Filtering
|
|
37
37
|
|
|
38
38
|
Both `getMonitorSummary` and `listMonitors` support powerful filtering options:
|
|
39
39
|
|
|
@@ -61,6 +61,8 @@ Both `getMonitorSummary` and `listMonitors` support powerful filtering options:
|
|
|
61
61
|
|
|
62
62
|
## Quick Start
|
|
63
63
|
|
|
64
|
+
### Using npx (stdio transport)
|
|
65
|
+
|
|
64
66
|
Most folks will want to configure mcp-uptime-kuma using stdio as follows.
|
|
65
67
|
|
|
66
68
|
```json
|
|
@@ -81,6 +83,76 @@ Most folks will want to configure mcp-uptime-kuma using stdio as follows.
|
|
|
81
83
|
|
|
82
84
|
If authentication is disabled on your Uptime Kuma instance, you can remove the username/password environment variables. See the [Usage Instructions](#usage-instructions) section for more details on authentication methods.
|
|
83
85
|
|
|
86
|
+
### Using Docker (streamable HTTP transport)
|
|
87
|
+
|
|
88
|
+
For remote access or containerized deployments, you can run mcp-uptime-kuma as a Docker container using the streamable HTTP transport.
|
|
89
|
+
|
|
90
|
+
**Option 1: Using Docker Compose**
|
|
91
|
+
|
|
92
|
+
Create a `docker-compose.yml` file:
|
|
93
|
+
|
|
94
|
+
```yaml
|
|
95
|
+
services:
|
|
96
|
+
mcp-uptime-kuma:
|
|
97
|
+
image: davidfuchs/mcp-uptime-kuma:latest
|
|
98
|
+
container_name: mcp-uptime-kuma
|
|
99
|
+
environment:
|
|
100
|
+
- UPTIME_KUMA_URL=http://your-uptime-kuma-instance:3001
|
|
101
|
+
- UPTIME_KUMA_USERNAME=your_username # Optional
|
|
102
|
+
- UPTIME_KUMA_PASSWORD=your_password # Optional
|
|
103
|
+
# OR use JWT token authentication:
|
|
104
|
+
# - UPTIME_KUMA_JWT_TOKEN=your_jwt_token
|
|
105
|
+
- PORT=3000 # Optional, defaults to 3000
|
|
106
|
+
ports:
|
|
107
|
+
- "3000:3000"
|
|
108
|
+
command: ["-t", "streamable-http"]
|
|
109
|
+
restart: unless-stopped
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
Then run:
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
docker compose up -d
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
**Option 2: Using Docker Run**
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
docker run -d \
|
|
122
|
+
--name mcp-uptime-kuma \
|
|
123
|
+
-p 3000:3000 \
|
|
124
|
+
-e UPTIME_KUMA_URL=http://your-uptime-kuma-instance:3001 \
|
|
125
|
+
-e UPTIME_KUMA_USERNAME=your_username \
|
|
126
|
+
-e UPTIME_KUMA_PASSWORD=your_password \
|
|
127
|
+
davidfuchs/mcp-uptime-kuma:latest \
|
|
128
|
+
-t streamable-http
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
The MCP endpoint will be available at `http://mcp-uptime-kuma:3000/mcp` on your Docker host.
|
|
132
|
+
|
|
133
|
+
**Configuring Your MCP Client**
|
|
134
|
+
|
|
135
|
+
After starting the Docker container, configure your MCP client to connect to it:
|
|
136
|
+
|
|
137
|
+
```json
|
|
138
|
+
{
|
|
139
|
+
"mcpServers": {
|
|
140
|
+
"uptime-kuma": {
|
|
141
|
+
"url": "http://mcp-uptime-kuma:3000/mcp"
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
Or for LibreChat (librechat.yaml):
|
|
148
|
+
|
|
149
|
+
```yaml
|
|
150
|
+
mcpServers:
|
|
151
|
+
uptime-kuma:
|
|
152
|
+
url: "http://mcp-uptime-kuma:3000/mcp"
|
|
153
|
+
serverInstructions: true
|
|
154
|
+
```
|
|
155
|
+
|
|
84
156
|
## Usage Instructions
|
|
85
157
|
|
|
86
158
|
### Prerequisites
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,eAAe,CAAC;AAuPvB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -2,8 +2,12 @@
|
|
|
2
2
|
import 'dotenv/config';
|
|
3
3
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
4
4
|
import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js';
|
|
5
|
+
import { isInitializeRequest } from '@modelcontextprotocol/sdk/types.js';
|
|
5
6
|
import express from 'express';
|
|
7
|
+
import cors from 'cors';
|
|
6
8
|
import rateLimit from 'express-rate-limit';
|
|
9
|
+
import { randomUUID } from 'node:crypto';
|
|
10
|
+
import NodeCache from 'node-cache';
|
|
7
11
|
import { createServer } from './server.js';
|
|
8
12
|
/**
|
|
9
13
|
* Main entry point for @davidfuchs/mcp-uptime-kuma
|
|
@@ -74,6 +78,13 @@ async function runStdio(config) {
|
|
|
74
78
|
async function runHttp(config) {
|
|
75
79
|
const app = express();
|
|
76
80
|
app.use(express.json());
|
|
81
|
+
// CORS configuration for MCP client compatibility
|
|
82
|
+
app.use(cors({
|
|
83
|
+
origin: process.env.ALLOWED_ORIGIN || '*', // Configure via environment variable
|
|
84
|
+
exposedHeaders: ['mcp-session-id'],
|
|
85
|
+
allowedHeaders: ['Content-Type', 'mcp-session-id', 'mcp-protocol-version'],
|
|
86
|
+
// MUST include 'mcp-protocol-version' otherwise preflight check will error out
|
|
87
|
+
}));
|
|
77
88
|
// Rate limiting configuration
|
|
78
89
|
const limiter = rateLimit({
|
|
79
90
|
windowMs: 15 * 60 * 1000, // 15 minutes
|
|
@@ -86,26 +97,59 @@ async function runHttp(config) {
|
|
|
86
97
|
app.use(limiter);
|
|
87
98
|
// Create the MCP server once (reused across requests)
|
|
88
99
|
const { server, authenticateClient } = await createServer(config);
|
|
89
|
-
//
|
|
90
|
-
|
|
100
|
+
// Store transports by session ID
|
|
101
|
+
const transportCache = new NodeCache({
|
|
102
|
+
stdTTL: 3600, // 1-hour expiry
|
|
103
|
+
checkperiod: 0,
|
|
104
|
+
useClones: false, // MUST include this to store references instead of cloning objects
|
|
105
|
+
// otherwise the StreamableHTTPServerTransport object will be broken!
|
|
106
|
+
});
|
|
91
107
|
let authenticated = false;
|
|
92
|
-
// Handle
|
|
108
|
+
// Handle POST requests for client-to-server communication
|
|
93
109
|
app.post('/mcp', async (req, res) => {
|
|
94
110
|
try {
|
|
95
|
-
//
|
|
96
|
-
const
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
111
|
+
// Check for existing session ID
|
|
112
|
+
const sessionId = req.headers['mcp-session-id'];
|
|
113
|
+
let transport;
|
|
114
|
+
// Check if the session ID exists in the transport cache; if so reuse the transport
|
|
115
|
+
if (sessionId) {
|
|
116
|
+
transport = transportCache.get(sessionId);
|
|
117
|
+
}
|
|
118
|
+
if (!transport && isInitializeRequest(req.body)) {
|
|
119
|
+
// Create a new transport only for new initialization request
|
|
120
|
+
transport = new StreamableHTTPServerTransport({
|
|
121
|
+
sessionIdGenerator: () => randomUUID(),
|
|
122
|
+
onsessioninitialized: (sessionId) => {
|
|
123
|
+
// Store the transport by session ID
|
|
124
|
+
transportCache.set(sessionId, transport);
|
|
125
|
+
},
|
|
126
|
+
});
|
|
127
|
+
// Clean up transport when closed
|
|
128
|
+
transport.onclose = () => {
|
|
129
|
+
if (sessionId)
|
|
130
|
+
transportCache.del(sessionId);
|
|
131
|
+
};
|
|
132
|
+
// Connect the transport to the MCP server
|
|
133
|
+
await server.connect(transport);
|
|
134
|
+
// Authenticate on first connection
|
|
135
|
+
if (!authenticated) {
|
|
136
|
+
await authenticateClient();
|
|
137
|
+
authenticated = true;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
else if (!transport) {
|
|
141
|
+
// Invalid request - no valid session ID and not an initialization request
|
|
142
|
+
res.status(400).json({
|
|
143
|
+
jsonrpc: '2.0',
|
|
144
|
+
error: {
|
|
145
|
+
code: -32000,
|
|
146
|
+
message: 'Bad Request: No valid session ID provided',
|
|
147
|
+
},
|
|
148
|
+
id: null,
|
|
149
|
+
});
|
|
150
|
+
return;
|
|
108
151
|
}
|
|
152
|
+
// Handle the request
|
|
109
153
|
await transport.handleRequest(req, res, req.body);
|
|
110
154
|
}
|
|
111
155
|
catch (error) {
|
|
@@ -122,6 +166,25 @@ async function runHttp(config) {
|
|
|
122
166
|
}
|
|
123
167
|
}
|
|
124
168
|
});
|
|
169
|
+
// Reusable handler for GET and DELETE requests
|
|
170
|
+
const handleSessionRequest = async (req, res) => {
|
|
171
|
+
const sessionId = req.headers['mcp-session-id'];
|
|
172
|
+
let transport;
|
|
173
|
+
// Check if the session ID exists in the transport cache; if so reuse the transport
|
|
174
|
+
if (sessionId) {
|
|
175
|
+
transport = transportCache.get(sessionId);
|
|
176
|
+
}
|
|
177
|
+
if (!sessionId || !transport) {
|
|
178
|
+
res.status(400).send('Invalid or missing session ID');
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
// Handle the request
|
|
182
|
+
await transport.handleRequest(req, res);
|
|
183
|
+
};
|
|
184
|
+
// Handle GET requests for server-to-client notifications via SSE
|
|
185
|
+
app.get('/mcp', handleSessionRequest);
|
|
186
|
+
// Handle DELETE requests for session termination
|
|
187
|
+
app.delete('/mcp', handleSessionRequest);
|
|
125
188
|
// Health check endpoint
|
|
126
189
|
app.get('/health', (req, res) => {
|
|
127
190
|
res.json({ status: 'ok', server: 'mcp-uptime-kuma' });
|
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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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.
|
|
1
|
+
export declare const VERSION = "0.6.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = '0.
|
|
1
|
+
export const VERSION = '0.6.0';
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@davidfuchs/mcp-uptime-kuma",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"mcpName": "io.github.DavidFuchs/mcp-uptime-kuma",
|
|
5
5
|
"description": "A Model Context Protocol (MCP) server for Uptime Kuma version 2, supporting both stdio and streamable HTTP transports.",
|
|
6
6
|
"type": "module",
|
|
@@ -46,10 +46,13 @@
|
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
48
|
"@modelcontextprotocol/sdk": "^1.22.0",
|
|
49
|
+
"@types/cors": "^2.8.19",
|
|
50
|
+
"cors": "^2.8.5",
|
|
49
51
|
"dotenv": "^17.2.3",
|
|
50
52
|
"express": "^4.21.2",
|
|
51
53
|
"express-rate-limit": "^8.2.1",
|
|
52
54
|
"fuzzysort": "^3.1.0",
|
|
55
|
+
"node-cache": "^5.1.2",
|
|
53
56
|
"socket.io-client": "^4.8.1",
|
|
54
57
|
"zod": "^3.24.1"
|
|
55
58
|
},
|