Skip to main content
Glama
ober37

AC Infinity MCP

create_advance_automation

Define an advanced automation on an AC Infinity device: set fan speed, port, and schedule. Preview with dry run before sending.

Instructions

Create a new Advance Automation on a device.

Defaults to dry_run=True for safety. Set dry_run=False to send the automation to the device. The port bitmask (grouptDevType) is computed automatically from the port number (Port N → 2^(N-1)).

Args: device_id: The AC Infinity device code (from discover_devices). name: Automation name (max 64 chars, control chars stripped). on_speed: Fan speed when automation is active (1–10). port: 1-based port number the automation should control (1–8). off_speed: Not used — On mode relies on the port's own minimum speed setting. Parameter accepted for compatibility but not sent to the device. begin_time: Schedule start in minutes since midnight (0–1439, or 255=always active). Default: 0 (midnight). Use 255 for "always active" (runs 00:00–23:59 every day). end_time: Schedule end in minutes since midnight (0–1439, or 255=always active). Default: 1439 (23:59). Use 255 for "always active". dry_run: If True (default), previews the automation without sending it. Set to False to create the automation on the device.

Returns: JSON with action, name, port, port_name, on_speed, min_speed (the port's configured minimum speed — used when the automation is inactive), begin_time, end_time, schedule_summary, dry_run, sent. Live responses also include automation_id (for programmatic chaining — do not surface to the user; use name instead). On failure returns {"error": "..."}. When the specified port does not exist on the device, returns {"error": "Port N not found on device X", "available_ports": [{"port": N, "name": "..."}], "suggested_reply": "..."}. Port names absent or empty in the API response fall back to "Port N"; control chars are sanitized.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
device_idYes
nameYes
on_speedYes
portYes
off_speedNo
begin_timeNo
end_timeNo
dry_runNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

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

With no annotations, description fully discloses behavior: dry_run safety, automatic bitmask, off_speed unused, error handling with available_ports and suggested_reply, and return structure.

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

Conciseness4/5

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

Structured clearly with purpose first then parameter details. Slightly verbose with return value enumeration but well-organized. Could be more concise without losing clarity.

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?

Complete for a complex tool with 8 parameters and no annotations. Covers all inputs, behaviors, defaults, return types, and error cases. Output schema exists but description adds extra context.

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

Parameters5/5

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

Schema coverage is 0%, yet description adds meaning for all 8 parameters: valid ranges, defaults, special values (255), and usage context like off_speed being compatibility-only.

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

Purpose4/5

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

Clearly states 'Create a new Advance Automation on a device', specifying verb and resource. However, does not explicitly differentiate from sibling tools like set_temperature_automation or modify operations.

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?

No explicit when-to-use or alternative comparisons. Provides safety hints (dry_run default) but no guidance on when to choose this tool over others.

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

Install Server

Other Tools

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/ober37/ac-infinity-mcp'

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