Skip to main content
Glama

⚡ eskomsepush-mcp

EskomSePush를 위한 Model Context Protocol 서버 — 실시간 남아프리카 공화국 부하 차단 데이터를 Claude 및 모든 MCP 호환 AI 클라이언트에 제공합니다.

남아프리카 공화국 개발자가 남아프리카 공화국 사람들을 위해 만들었습니다. Claude에게 일상적인 언어로 부하 차단에 대해 물어보세요.


기능

도구

설명

플랜

get_status

현재 국가 부하 차단 단계 (Eskom + 케이프타운)

무료 ✅

check_allowance

오늘 남은 API 호출 횟수 확인

무료 ✅

search_areas

교외 지역이나 도시 이름으로 지역 ID 찾기

유료 💳

get_area_schedule

해당 지역의 예정된 이벤트 및 전체 일정

유료 💳

get_areas_nearby

GPS 좌표로 지역 찾기

유료 💳

예시 프롬프트

  • "지금 몇 단계인가요?" → 무료 플랜에서 작동

  • "오늘 API 호출이 얼마나 남았나요?" → 무료 플랜에서 작동

  • "오늘 밤 Stellenbosch에 부하 차단이 있나요?" → 유료 플랜

  • "이번 주 Sandton의 부하 차단 일정을 보여줘" → 유료 플랜

  • "내 근처의 부하 차단 지역 찾기" (GPS 사용) → 유료 플랜


Related MCP server: Energy Grid MCP Server

사전 요구 사항

API 플랜 요구 사항

EskomSePush는 계층형 API를 운영합니다. 무료 티어는 지역 조회 엔드포인트에서 HTTP 410 Gone을 반환하며, 해당 기능은 유료 구독이 필요합니다. 이 MCP 서버는 플랜에 관계없이 전체 도구 인터페이스를 노출하며, 지원되지 않는 도구는 클라이언트에 410 오류를 명확하게 표시합니다.

플랜

비용

작동 기능

무료

Gumroad를 통해 $0

get_status, check_allowance

유료

연간 $55부터

5개 도구 전체


설치

옵션 1 — npx (권장)

npx eskomsepush-mcp

옵션 2 — 복제 및 빌드

git clone https://github.com/zukhanyendiki9-code/eskomsepush-mcp.git
cd eskomsepush-mcp
npm install
npm run build

구성

Claude Desktop

claude_desktop_config.json에 추가하세요:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "eskomsepush": {
      "command": "npx",
      "args": ["-y", "eskomsepush-mcp"],
      "env": {
        "ESP_API_TOKEN": "your-api-token-here"
      }
    }
  }
}

Claude Code

claude mcp add eskomsepush -e ESP_API_TOKEN=your-token -- npx -y eskomsepush-mcp

Cursor / Windsurf

{
  "mcpServers": {
    "eskomsepush": {
      "command": "npx",
      "args": ["-y", "eskomsepush-mcp"],
      "env": {
        "ESP_API_TOKEN": "your-api-token-here"
      }
    }
  }
}

개발

npm run build        # compile TypeScript
npm run dev          # watch mode
npm run inspect      # open MCP Inspector UI for testing

팁: 개발 중 도구에 test: true를 전달하면 모의 데이터를 반환하며 일일 할당량에 포함되지 않습니다.

테스트 상태

도구

무료 플랜에서 테스트됨

get_status

check_allowance

search_areas

⚠️ 유료 플랜 필요

get_area_schedule

⚠️ 유료 플랜 필요

get_areas_nearby

⚠️ 유료 플랜 필요

유료 플랜을 사용 중이며 유료 티어 도구를 테스트하신다면, 동작 확인을 위해 이슈나 PR을 열어주시기 바랍니다.


API 할당량

플랜

일일 호출 횟수

무료

50

유료

더 높은 제한

check_allowance 도구를 사용하여 사용량을 모니터링하세요. 빌드 중에는 test: true를 사용하세요.


기여

PR을 환영합니다. 남아프리카 공화국 거주자로서 더 유용하게 만들 아이디어가 있다면 이슈를 열어주세요.

ZATech Slack#eskomsepush 채널에서 EskomSePush 개발자 커뮤니티에 참여하세요.


라이선스

MIT © Zukanye Ndiki

Available Tools

5 tools
check_allowanceA

Check how many EskomSePush API calls you have remaining today. Free tier allows 50 calls per day.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses that the operation is a read (check) and mentions the free tier limit (50 calls per day). It does not detail side effects because none exist.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with key action and resource, and no wasted words. Highly concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters, no output schema, and simple purpose, the description provides all necessary context, including the free tier limit. No critical gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so baseline is 4. The description inherently says no parameters are needed, which is sufficient.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool checks remaining API calls, using a specific verb ('Check') and resource ('allowance'). It distinguishes from siblings like get_area_schedule which deal with area data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for checking quota but does not explicitly state when to use or when not to use alternatives. Since no sibling tool serves this purpose, the context is clear but lacks direct guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_area_scheduleA

Get the upcoming load shedding schedule and events for a specific area. Requires an area ID — use search_areas first if you don't have one.

ParametersJSON Schema
NameRequiredDescriptionDefault
area_idYesThe area ID from search_areas (e.g. 'eskmo-7-stellenboschstellenboschwestern-cape')
testNoUse test data (does not count against your quota)

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It implies a read-only operation but does not disclose behaviors such as authentication requirements, rate limits, or error handling. The description is adequate but lacks depth for a tool with no annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no wasted words. The first sentence states the purpose, the second provides usage guidance. Highly concise and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, so the description should explain return values. It mentions 'schedule and events' but lacks specifics on the structure or content of the response. Parameter documentation is sufficient, but the return format is vague.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with both parameters having descriptions. The description adds context by reiterating the prerequisite and tool to obtain area_id, but adds little beyond the schema's own descriptions. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves 'upcoming load shedding schedule and events for a specific area', uses a specific verb ('Get'), and distinguishes from siblings by directing users to search_areas for obtaining an area ID.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states the prerequisite (area ID) and directs users to search_areas if they lack one, providing clear when-to-use and alternative guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_areas_nearbyA

Find load shedding areas near a GPS location. Useful when you know coordinates but not the area name.

ParametersJSON Schema
NameRequiredDescriptionDefault
latYesLatitude (e.g. -33.9249 for Cape Town)
lonYesLongitude (e.g. 18.4241 for Cape Town)
testNoUse test data (does not count against your quota)

TDQS

A3.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description should disclose behavioral traits. It only describes the purpose and does not mention safety, side effects, authentication, or return behavior, leaving the agent uninformed about safe usage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no filler words. Every part contributes to understanding the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple tool (3 params, no output schema), the description adequately explains the primary use case and differentiates from siblings. It does not explain return values, but that is acceptable without an output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all 3 parameters with descriptions (100% coverage). The description does not add new meaning beyond the schema, so a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Find' and resource 'load shedding areas', with clear context 'near a GPS location'. It effectively distinguishes from sibling 'search_areas', which presumably searches by area name.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states it is useful when coordinates are known but not the area name, suggesting use over 'search_areas'. However, it does not explicitly mention when not to use or list alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_statusB

Get the current national load shedding stage for both Eskom and Cape Town. Use this to find out what stage we are on right now.

ParametersJSON Schema
NameRequiredDescriptionDefault
testNoUse test data instead of live data (does not count against your quota)

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must convey behavioral traits. It only states the tool fetches current status and mentions the test parameter (which is documented in the schema). It does not disclose update frequency, caching, or quota details beyond the test parameter's note.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the purpose, and contains no unnecessary information. Every part is useful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has an optional test parameter and no output schema. The description does not explain the return format (e.g., numeric stage, object with details), which is necessary for an agent to interpret the result correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema coverage is 100% for the single parameter (test), and its description is already in the schema. The tool description adds no additional meaning to the parameter, meeting the baseline expectation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves the current national load shedding stage for both Eskom and Cape Town. It uses a specific verb 'get' and identifies the resource, which distinguishes it from sibling tools like get_area_schedule or get_areas_nearby.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for finding the current stage, but does not explicitly mention when not to use this tool or provide alternatives. The sibling tools exist for area-specific or schedule lookups, but no guidance is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_areasA

Search for load shedding areas by name or suburb. Returns area IDs you can use with get_area_schedule. Always search first if you don't have an area ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesSuburb, city, or area name to search for (e.g. 'Stellenbosch', 'Sandton', 'Ballito')
testNoUse test data (does not count against your quota)

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries the full burden. It discloses that the tool returns area IDs (non-destructive read), and mentions the test parameter behavior. This is good, but could elaborate on error handling or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with purpose, and no unnecessary words. Every sentence provides value: the first defines what it does, the second gives usage guidance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and full parameter coverage, the description is complete. It explains the input format, output utility, and usage context. An agent can correctly invoke this tool without ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and both parameter descriptions are clear. The description adds no extra meaning beyond what the schema provides for parameters, but it does explain the output purpose.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: searching for load shedding areas by name or suburb. It specifies the output (area IDs) and how it connects to another tool (get_area_schedule). This distinguishes it from siblings like get_areas_nearby or get_area_schedule.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly advises 'Always search first if you don't have an area ID,' which tells the agent when to use this tool. It implies that if an area ID is known, use get_area_schedule instead. This provides clear context but could be more explicit about alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 5 tool updatesv0.1.0
    • First observedcheck_allowance
    • First observedget_area_schedule
    • First observedget_areas_nearby
    • First observedget_status
    • First observedsearch_areas

TDQS

A4.2/5.0
Disambiguation5/5

Each tool serves a distinct purpose: API allowance, area schedule, nearby areas, national status, and area search. No overlap in functionality.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (check_allowance, get_area_schedule, get_areas_nearby, get_status, search_areas), using snake_case throughout.

Tool Count5/5

Five tools is well-scoped for the EskomSePush API domain, covering the essential operations without feeling thin or overloaded.

Completeness5/5

The tool set covers all core functionality of the EskomSePush API: status, area lookup, schedule, nearby search, and API quota checking. No obvious gaps.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides real-time access to Israeli emergency alerts from the official Pikud Haoref (Home Front Command) API. Enables AI assistants to check current alerts, retrieve alert history with intelligent city filtering, and monitor emergency notifications including rocket alerts, aerial intrusions, and earthquakes.
    5
    -
  • A
    license
    A
    quality
    D
    maintenance
    Provides real-time electricity grid data including CO2 intensity, power mix, and wholesale prices, plus optimal green time windows for energy-intensive AI tasks. Supports UK, Germany, and global regions with optional API keys.
    9
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to access and analyze Spanish electricity consumption data via the Datadis API, providing tools for supply management, consumption analysis, anomaly detection, and executive reporting.
    MIT
  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables querying of real-time and forecast UK carbon intensity data from National Grid ESO, allowing AI agents to retrieve carbon emissions by region and time.
    3
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/zukhanyendiki9-code/eskomsepush-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server