MCPサーバー

PJM vs MISO Energy Arbitrage Oracle

io.github.dornansgar390-hue/energy-oracle

このMCPでできること

Delivers subscription-gated PJM and MISO wholesale electricity arbitrage signals, profitability checks, and on-chain subscription transaction support.

build_subscription_tx
Build Subscription Transaction
Generate the cryptographic transaction calldata required to purchase a subscription on Arbitrum One. Output covers a two-step payload: ERC-20 RLC token approve followed by contract purchaseSubscription. This tool strictly builds calldata and does not submit transactions; the calling agent must sign and broadcast the payload externally.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'title': 'build_subscription_txArguments', 'required': ['agent_address', 'tier'], 'properties': {'tier': {'type': 'integer', 'title': 'Tier', 'description': 'Subscription tier: 0 = 1 day ($20), 1 = 3 days ($50), 2 = 7 days ($100)'}, 'agent_address': {'type': 'string', 'title': 'Agent Address', 'description': 'EVM address of the agent that will receive the subscription, e.g. 0x1234...'}, 'sponsor_address': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Sponsor Address', 'default': None, 'description': "Optional EVM address of a sponsor who pays for the agent's subscription"}}}
出力スキーマ
{'type': 'object', 'title': 'build_subscription_txOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
check_subscription
Check Subscription
Check whether an EVM address has an active subscription. Returns expiry timestamp and human-readable info.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'title': 'check_subscriptionArguments', 'required': ['address'], 'properties': {'address': {'type': 'string', 'title': 'Address', 'description': "The agent's EVM address (0x...), e.g. 0x1234..."}}}
出力スキーマ
{'type': 'object', 'title': 'check_subscriptionOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
get_connection_info
Connection Info
Retrieve integration and transport configuration guides for connecting this oracle to AI clients (Claude Desktop, Cursor, MCP clients), including the complete list of accessible tools and capabilities.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'title': 'get_connection_infoArguments', 'properties': {}}
出力スキーマ
{'type': 'object', 'title': 'get_connection_infoOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
get_oracle_info
Oracle General Info
Retrieve comprehensive metadata for the PJM vs MISO Energy Arbitrage Oracle: smart contract address, Arbitrum One network, Intel TDX attestation status, and available subscription pricing tiers. Use as the primary initialization step for any agent workflow.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'title': 'get_oracle_infoArguments', 'properties': {}}
出力スキーマ
{'type': 'object', 'title': 'get_oracle_infoOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
get_oracle_status
Oracle Status
Check the real-time operational status of the oracle contract. Returns whether the system is ACTIVE or in MAINTENANCE, along with total active subscribers. Use this tool to verify system availability before requesting premium telemetry.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'title': 'get_oracle_statusArguments', 'properties': {}}
出力スキーマ
{'type': 'object', 'title': 'get_oracle_statusOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
get_sdk_template
Get SDK Template
Get the FULL Python SDK code (ai_agent_oracle_client.py). Auto-cycle: check subscription → purchase (approve + purchase, RLC) → read signal. Suitable for non-MCP agents running on web3.py.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'title': 'get_sdk_templateArguments', 'properties': {}}
出力スキーマ
{'type': 'object', 'title': 'get_sdk_templateOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
get_subscription_cost
Get Subscription Cost
Current subscription cost in RLC (dynamic, pegged to USD). Returns live cost from on-chain contract.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'title': 'get_subscription_costArguments', 'required': ['tier'], 'properties': {'tier': {'type': 'integer', 'title': 'Tier', 'description': 'Subscription tier: 0 = 1 day ($20), 1 = 3 days ($50), 2 = 7 days ($100)'}}}
出力スキーマ
{'type': 'object', 'title': 'get_subscription_costOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
get_telemetry
Get Telemetry
Retrieve the premium analytical energy signal computed inside the Intel TDX enclave. Returns the complete spatial arbitrage vector (direction: -1, 0, +1) and current price spread index between PJM and MISO. Executed as a static on-chain view call. Requires an active, unexpired paid RLC subscription for the provided address.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'title': 'get_telemetryArguments', 'required': ['subscriber_address'], 'properties': {'subscriber_address': {'type': 'string', 'title': 'Subscriber Address', 'description': 'EVM address that has an active RLC subscription, e.g. 0x1234...'}}}
出力スキーマ
{'type': 'object', 'title': 'get_telemetryOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
is_arbitrage_profitable
Is Arbitrage Profitable
Evaluate the instantaneous financial viability of spatial electricity arbitrage between PJM West Hub and MISO Indiana Hub wholesale markets. Returns a boolean profitability indicator. Use as a zero-friction pre-flight check before deciding to purchase a full telemetry subscription.
読み取り専用 外部アクセスあり 冪等
入力スキーマ
{'type': 'object', 'title': 'is_arbitrage_profitableArguments', 'properties': {}}
出力スキーマ
{'type': 'object', 'title': 'is_arbitrage_profitableOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
追加
get_sdk_template
2026年9月21日2:41
追加
get_connection_info
2026年9月21日2:41
追加
build_subscription_tx
2026年9月21日2:41
追加
get_telemetry
2026年9月21日2:41
追加
is_arbitrage_profitable
2026年9月21日2:41
追加
get_subscription_cost
2026年9月21日2:41
追加
check_subscription
2026年9月21日2:41
追加
get_oracle_status
2026年9月21日2:41
追加
get_oracle_info
2026年9月21日2:41