Hotkeyless Ahk Mcp

by tim0-12432

176 downloads
Not rated
GitHub

About

MCP server for Hotkeyless AHK HTTP API. It lets your agent control your whole computer through hotkeys.

Details

Author
tim0-12432
Downloads
176
Categories
Other

- Wraps the Hotkeyless AHK HTTP API as an MCP server
- Configurable blacklist, timeout, cache, and server address
- Supports OpenCode, Claude Code, and GitHub Copilot
- Includes ready-to-use skill documents for agent runtimes
- Can be run via npx or built from source

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Hotkeyless Ahk Mcp
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install and run via npx -y @tim0_12432/hotkeyless-ahk-mcp-server or build from source with bun install && bun run build. Configure the server in opencode.json, .mcp.json, or mcp-config.json with environment variables like BLACKLIST, BASE_URL, and TIMEOUT_MS. For skill documents, copy skill folders into the appropriate .opencode/skills, .claude/skills, or .github/copilot/skills directories.

discover_commands

Fetch available Hotkeyless commands from /list.

trigger_command

Trigger one Hotkeyless command by exact name using /trigger. Enforces blacklist and verifies command exists.

send_keys

Send keystrokes through optional /send_keys endpoint. Returns clear error when endpoint is unsupported.

mouse_move

Move mouse cursor via optional /mouse_move endpoint. Returns clear error when endpoint is unsupported.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "hotkeyless ahk mcp": {
            "hotkeyless-ahk": {
                "command": "npx",
                "args": [
                    "-y",
                    "@tim0_12432/hotkeyless-ahk-mcp-server"
                ],
                "env": {
                    "BLACKLIST": "shutdown,restart,kill,..."
                }
            }
        }
    }
}

McpServers

{
    "hotkeyless-ahk": {
        "command": "npx",
        "args": [
            "-y",
            "@tim0_12432/hotkeyless-ahk-mcp-server"
        ],
        "env": {
            "BLACKLIST": "shutdown,restart,kill,..."
        }
    }
}

Hotkeyless AHK MCP and Skills

License: MIT
AHK Version
MCP
Claude Support
OpenCode Support
Github Copilot Support

This repository provides:

- A TypeScript MCP server that wraps the Hotkeyless AHK HTTP API.
- Reusable skill documents for OpenCode, Claude, and generic agent runtimes.
- Practical examples for desktop automation scenarios.

Workspace layout

packages/
  mcp-server/   # Node MCP server package
  skills/       # Agent skill documents
examples/       # End-to-end usage examples

---

1. MCP server
- Quick start
- Hotkeyless AHK API contract
- Configuration
2. Agent skills
- Quick start

---

MCP server

Quick start

OpenCode

opencode.json:

{
...
"mcp": {
...
"hotkeyless-ahk": {
"type": "local",
"command": ["npx", "-y", "@tim0_12432/hotkeyless-ahk-mcp-server"],
"enabled": true,
"environment": {
"BLACKLIST": "shutdown,restart,kill"
...
}
}
},
...
}

ClaudeCode

.mcp.json:

{
"mcpServers": {
...
"hotkeyless-ahk": {
"command": "npx",
"args": ["-y", "@tim0_12432/hotkeyless-ahk-mcp-server"],
"env": {
"BLACKLIST": "shutdown,restart,kill"
...
}
}
}
}

Github Copilot

mcp-config.json:

{
...
"mcpServers": {
...
"hotkeyless-ahk": {
"type": "local",
"command": "npx",
"args": ["-y", "@tim0_12432/hotkeyless-ahk-mcp-server"],
"env": {
"BLACKLIST": "shutdown,restart,kill"
...
},
"tools": [""]
}
},
...
}

Build from source

<details>
<summary>Follow instructions here.</summary>

1. Build server

bun install
bun run build

npm should also work without problems!

2. Setup your harness

OpenCode

opencode.json:

{
...
"mcp": {
...
"hotkeyless-ahk": {
"type": "local",
"command": ["node", "<absolute path to the built files>/mcp-server/dist/index.js"],
"enabled": true,
"environment": {
"BLACKLIST": "shutdown,restart,kill"
...
}
}
},
...
}

ClaudeCode

.mcp.json:

{
"mcpServers": {
...
"hotkeyless-ahk": {
"command": "node",
"args": ["<absolute path to the built files>/mcp-server/dist/index.js"],
"env": {
"BLACKLIST": "shutdown,restart,kill"
...
}
}
}
}

Github Copilot

mcp-config.json:

{
...
"mcpServers": {
...
"hotkeyless-ahk": {
"type": "local",
"command": "node",
"args": ["<absolute path to the built files>/mcp-server/dist/index.js"],
"env": {
"BLACKLIST": "shutdown,restart,kill"
...
},
"tools": ["
"]
}
},
...
}

</details>

Hotkeyless AHK API contract

- GET /list returns JSON array of { command: string, note: string }
- GET /send/<command> accepts query parameters

Configuration

Default config is at mcp-server/dist/infrastructure/config/config.ts.

Environment overrides:

|Parameter override|What it does|Default|
|---|---|---|
|BASE_URL|Adress of the Hotkeyless AHK server|http://localhost:42800|
|TIMEOUT_MS|Timeout milliseconds for each request|4000|
|BLACKLIST|A list of commands to avoid being called|[]|
|CACHE_TTL_MS|Cache lifetime for command list in milliseconds|5000|
|ENDPOINT_LIST|Endpoint address of the command list|/list|
|ENDPOINT_TRIGGER|Endpoint address for invoking commands|/send|

Agent Skills

Quick start

OpenCode

1. Copy the ./skills/.opencode/... folders to
- .opencode/skills for project specific skill setup
- %USERPROFILE%/.config/opencode/skills for global setup
2. You can adjust AGENTS.md, custom subagents or custom commands to reference the skills
3. Restart your OpenCode (CLI or Desktop)
4. When asking the agent to use the "hotkeyless AHK skills" it should now use the skill guide

ClaudeCode

1. Copy the ./skills/.claude/... folders to
- .claude/skills for project specific skill setup
- %USERPROFILE%/.config/claude-code/skills for global setup
2. You can adjust CLAUDE.md, custom subagents or custom commands to reference the skills
3. Restart your Claude Code
4. When asking the agent to use the "hotkeyless AHK skills" it should now use the skill guide

Github Copilot

1. Copy the ./skills/.claude/... folders to
- .claude/skills for project specific skill setup
- %USERPROFILE%/.config/claude-code/skills for global setup
2. You can adjust AGENTS.md, custom subagents or custom commands to reference the skills
3. Restart your Claude Code
4. When asking the agent to use the "hotkeyless AHK skills" it should now use the skill guide

---

License

MIT

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.