get-alertstate
Retrieve alert states from Seq MCP Server to monitor and manage signals, events, and alerts, enabling efficient logging and system tracking with customizable filtering options.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/seq-server.ts:205-225 (handler)The handler function that executes the tool logic: fetches alert state from SEQ API endpoint '/api/alertstate' using makeSeqRequest, returns JSON-formatted text content, handles errors.async () => { try { const alertState = await makeSeqRequest<any>('/api/alertstate'); return { content: [{ type: "text", text: JSON.stringify(alertState, null, 2) }] }; } catch (error) { const err = error as Error; return { content: [{ type: "text", text: `Error fetching alert state: ${err.message}` }], isError: true }; } }
- src/seq-server.ts:202-226 (registration)Registration of the 'get-alertstate' tool on the MCP server with empty input schema and inline handler function.server.tool( "get-alertstate", {}, async () => { try { const alertState = await makeSeqRequest<any>('/api/alertstate'); return { content: [{ type: "text", text: JSON.stringify(alertState, null, 2) }] }; } catch (error) { const err = error as Error; return { content: [{ type: "text", text: `Error fetching alert state: ${err.message}` }], isError: true }; } } );
- src/seq-server.ts:31-56 (helper)Helper function makeSeqRequest used by the tool to perform authenticated HTTP requests to SEQ API endpoints.async function makeSeqRequest<T>(endpoint: string, params: Record<string, string> = {}): Promise<T> { const url = new URL(`${SEQ_BASE_URL}${endpoint}`); // Add API key as query parameter url.searchParams.append('apiKey', SEQ_API_KEY); // Add additional query parameters Object.entries(params).forEach(([key, value]) => { if (value !== undefined && value !== null) { url.searchParams.append(key, value); } }); const headers: Record<string, string> = { 'Accept': 'application/json', 'X-Seq-ApiKey': SEQ_API_KEY }; const response = await fetch(url.toString(), { headers }); if (!response.ok) { throw new Error(`SEQ API error: ${response.statusText} (${response.status})`); } return response.json(); }