@access-mcp/system-status 0.4.0 → 0.4.1
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 +51 -52
- package/dist/index.js +4 -5
- package/dist/server.js +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,79 +1,86 @@
|
|
|
1
1
|
# System Status MCP Server
|
|
2
2
|
|
|
3
|
-
MCP server providing real-time system status information for ACCESS-CI resources.
|
|
3
|
+
MCP server providing real-time system status information for ACCESS-CI resources. Provides critical operational information about ACCESS-CI systems, including current outages, scheduled maintenance, and system-wide announcements.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Usage Examples
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
### **Monitor Current Issues**
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
```
|
|
10
|
+
"Are there any current outages on ACCESS-CI?"
|
|
11
|
+
"Is Delta currently operational?"
|
|
12
|
+
"What systems are experiencing issues right now?"
|
|
13
|
+
"Show me all systems that are down"
|
|
14
|
+
```
|
|
10
15
|
|
|
11
|
-
###
|
|
16
|
+
### **Track Maintenance Windows**
|
|
12
17
|
|
|
13
|
-
|
|
18
|
+
```
|
|
19
|
+
"When is the next maintenance for Expanse?"
|
|
20
|
+
"Show me all scheduled maintenance for this week"
|
|
21
|
+
"Is there upcoming maintenance on Bridges-2?"
|
|
22
|
+
"What maintenance is planned for GPU systems?"
|
|
23
|
+
```
|
|
14
24
|
|
|
15
|
-
**
|
|
25
|
+
### **System Announcements**
|
|
16
26
|
|
|
17
|
-
|
|
27
|
+
```
|
|
28
|
+
"What are the latest system announcements?"
|
|
29
|
+
"Are there any important notices for ACCESS users?"
|
|
30
|
+
"Show me recent updates about system changes"
|
|
31
|
+
"Any policy updates I should know about?"
|
|
32
|
+
```
|
|
18
33
|
|
|
19
|
-
**
|
|
20
|
-
- Total outages count and severity breakdown
|
|
21
|
-
- Affected resources list
|
|
22
|
-
- Enhanced outage details with severity levels
|
|
34
|
+
### **Check Resource Status**
|
|
23
35
|
|
|
24
|
-
|
|
36
|
+
```
|
|
37
|
+
"What's the current status of Anvil?"
|
|
38
|
+
"Is Frontera available for job submission?"
|
|
39
|
+
"Check if all GPU systems are operational"
|
|
40
|
+
"Get status for all TACC resources"
|
|
41
|
+
```
|
|
25
42
|
|
|
26
|
-
|
|
43
|
+
## Tools
|
|
44
|
+
|
|
45
|
+
### get_current_outages
|
|
46
|
+
|
|
47
|
+
Get current system outages and issues affecting ACCESS-CI resources.
|
|
27
48
|
|
|
28
49
|
**Parameters:**
|
|
29
50
|
|
|
30
51
|
- `resource_filter` (string, optional): Filter by specific resource name or ID
|
|
31
52
|
|
|
32
|
-
**
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
53
|
+
**Example:**
|
|
54
|
+
```typescript
|
|
55
|
+
// User: "Are there any current outages on Delta?"
|
|
56
|
+
const outages = await get_current_outages({
|
|
57
|
+
resource_filter: "delta"
|
|
58
|
+
});
|
|
59
|
+
```
|
|
36
60
|
|
|
37
|
-
###
|
|
61
|
+
### get_scheduled_maintenance
|
|
38
62
|
|
|
39
|
-
Get
|
|
63
|
+
Get scheduled maintenance and future outages for ACCESS-CI resources.
|
|
40
64
|
|
|
41
65
|
**Parameters:**
|
|
42
66
|
|
|
43
67
|
- `resource_filter` (string, optional): Filter by specific resource name or ID
|
|
44
|
-
- `limit` (number, optional): Maximum number of past outages to return (default: 100)
|
|
45
|
-
|
|
46
|
-
**Returns:**
|
|
47
|
-
- Historical outage data with duration analysis
|
|
48
|
-
- Recent outages (last 30 days) summary
|
|
49
|
-
- Outage type categorization
|
|
50
68
|
|
|
51
69
|
### get_system_announcements
|
|
52
70
|
|
|
53
|
-
Get
|
|
71
|
+
Get all system announcements (current and scheduled).
|
|
54
72
|
|
|
55
73
|
**Parameters:**
|
|
56
74
|
|
|
57
75
|
- `limit` (number, optional): Maximum number of announcements to return (default: 50)
|
|
58
76
|
|
|
59
|
-
|
|
60
|
-
- Unified view of current outages, scheduled maintenance, and recent past incidents
|
|
61
|
-
- Categorized announcements for better organization
|
|
62
|
-
- Timeline-based sorting
|
|
63
|
-
|
|
64
|
-
### check_resource_status
|
|
77
|
+
### get_resource_status
|
|
65
78
|
|
|
66
|
-
|
|
79
|
+
Get the current operational status of a specific resource.
|
|
67
80
|
|
|
68
81
|
**Parameters:**
|
|
69
82
|
|
|
70
|
-
- `
|
|
71
|
-
- `use_group_api` (boolean, optional): Use resource group API for more efficient querying (default: false)
|
|
72
|
-
|
|
73
|
-
**Returns:**
|
|
74
|
-
- Operational status for each requested resource
|
|
75
|
-
- Active outage details with severity levels
|
|
76
|
-
- API method used (direct vs group-specific)
|
|
83
|
+
- `resource_id` (string): The resource ID to check status for
|
|
77
84
|
|
|
78
85
|
## Resources
|
|
79
86
|
|
|
@@ -133,13 +140,11 @@ Add to your Claude Desktop configuration:
|
|
|
133
140
|
**Natural Language**: "Are there any systems down right now?"
|
|
134
141
|
|
|
135
142
|
**Tool Call**:
|
|
136
|
-
|
|
137
143
|
```typescript
|
|
138
144
|
const outages = await get_current_outages();
|
|
139
145
|
```
|
|
140
146
|
|
|
141
147
|
**Returns**: List of active outages with:
|
|
142
|
-
|
|
143
148
|
- Affected resources
|
|
144
149
|
- Start time and expected resolution
|
|
145
150
|
- Impact description
|
|
@@ -150,15 +155,13 @@ const outages = await get_current_outages();
|
|
|
150
155
|
**Natural Language**: "When is Delta scheduled for maintenance?"
|
|
151
156
|
|
|
152
157
|
**Tool Call**:
|
|
153
|
-
|
|
154
158
|
```typescript
|
|
155
159
|
const maintenance = await get_scheduled_maintenance({
|
|
156
|
-
resource_filter: "delta"
|
|
160
|
+
resource_filter: "delta"
|
|
157
161
|
});
|
|
158
162
|
```
|
|
159
163
|
|
|
160
164
|
**Returns**: Upcoming maintenance windows including:
|
|
161
|
-
|
|
162
165
|
- Scheduled start and end times
|
|
163
166
|
- Systems affected
|
|
164
167
|
- Type of maintenance
|
|
@@ -169,15 +172,13 @@ const maintenance = await get_scheduled_maintenance({
|
|
|
169
172
|
**Natural Language**: "What are the latest announcements?"
|
|
170
173
|
|
|
171
174
|
**Tool Call**:
|
|
172
|
-
|
|
173
175
|
```typescript
|
|
174
176
|
const announcements = await get_system_announcements({
|
|
175
|
-
limit: 10
|
|
177
|
+
limit: 10
|
|
176
178
|
});
|
|
177
179
|
```
|
|
178
180
|
|
|
179
181
|
**Returns**: Recent announcements about:
|
|
180
|
-
|
|
181
182
|
- Policy changes
|
|
182
183
|
- New features or services
|
|
183
184
|
- Important deadlines
|
|
@@ -188,15 +189,13 @@ const announcements = await get_system_announcements({
|
|
|
188
189
|
**Natural Language**: "Is Expanse available?"
|
|
189
190
|
|
|
190
191
|
**Tool Call**:
|
|
191
|
-
|
|
192
192
|
```typescript
|
|
193
193
|
const status = await get_resource_status({
|
|
194
|
-
resource_id: "expanse.sdsc.xsede.org"
|
|
194
|
+
resource_id: "expanse.sdsc.xsede.org"
|
|
195
195
|
});
|
|
196
196
|
```
|
|
197
197
|
|
|
198
198
|
**Returns**: Current operational status:
|
|
199
|
-
|
|
200
199
|
- Overall system health
|
|
201
200
|
- Service availability
|
|
202
201
|
- Performance metrics
|
package/dist/index.js
CHANGED
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { SystemStatusServer } from "./server.js";
|
|
3
|
-
import { startWebServer } from "./web-server.js";
|
|
4
3
|
async function main() {
|
|
5
|
-
// Check if we should run as
|
|
4
|
+
// Check if we should run as HTTP server (for deployment)
|
|
6
5
|
const port = process.env.PORT;
|
|
6
|
+
const server = new SystemStatusServer();
|
|
7
7
|
if (port) {
|
|
8
|
-
// Running in
|
|
9
|
-
|
|
8
|
+
// Running in HTTP mode (deployment)
|
|
9
|
+
await server.start({ httpPort: parseInt(port) });
|
|
10
10
|
}
|
|
11
11
|
else {
|
|
12
12
|
// Running in MCP mode (stdio)
|
|
13
|
-
const server = new SystemStatusServer();
|
|
14
13
|
await server.start();
|
|
15
14
|
}
|
|
16
15
|
}
|
package/dist/server.js
CHANGED
|
@@ -230,8 +230,8 @@ export class SystemStatusServer extends BaseAccessServer {
|
|
|
230
230
|
return {
|
|
231
231
|
...outage,
|
|
232
232
|
severity,
|
|
233
|
-
posted_time: outage.CreationTime,
|
|
234
|
-
last_updated: outage.LastModificationTime,
|
|
233
|
+
posted_time: outage.CreationTime || outage.DateTime || outage.created_at || outage.date_posted,
|
|
234
|
+
last_updated: outage.LastModificationTime || outage.DateTime || outage.updated_at || outage.date_modified,
|
|
235
235
|
};
|
|
236
236
|
});
|
|
237
237
|
const summary = {
|