TRIGGERcmd
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login
    1. Home
    2. Russ
    • Profile
    • Following 1
    • Followers 42
    • Topics 227
    • Posts 2,636
    • Best 167
    • Controversial 6
    • Groups 1

    Russ

    @Russ

    administrators

    I'm a tech enthusiast with about 30 years experience in IT. Recently I'm also a TRIGGERcmd developer.

    166
    Reputation
    3.8k
    Profile views
    2.6k
    Posts
    42
    Followers
    1
    Following
    Joined Last Online
    Website triggercmd.com Location Haslett, MI

    Russ Unfollow Follow
    administrators

    Best posts made by Russ

    • RE: Laptop Battery Management - Automated On/Off Cycle

      @philip-nguyen, there's a similar question here.

      These are the high level steps:

      1. Create 2 commands that just run echo (doesn't matter what), and name them PlugOn and PlugOff.
      2. Setup two Alexa routines - one that turns on your smart plug when the PlugOn command runs, and other that turns it off when the PlugOff command runs.
      3. Create a script. At the beginning of the script, do the following:
      4. Set variable called PLUG_IS_ON with a default value of true.
      5. To make sure the plug is on at first, run the tcmd utility like this: tcmd -t plugon -c (your TRIGGERcmd computer name)
      6. Create a loop that repeats every minute. Inside the loop, do the following:
      7. Check your battery level with BatteryInfoView.exe
      8. When the level is below 30 percent and PLUG_IS_ON = false, run tcmd utility like this: tcmd -t plugon -c (your TRIGGERcmd computer name)
      9. When the level is above 99 percent and PLUG_IS_ON = true, run tcmd utility like this: tcmd -t plugoff -c (your TRIGGERcmd computer name)
      10. Also set PLUG_IS_ON to true when you run plugon, and set it to false when you run plugoff

      I think that should work. Do you know how to do that? Let me know if you get stuck, and where you get stuck. I can look at your script if you paste it here.

      posted in Example Commands
      RussR
      Russ
    • List of ways to trigger your commands

      You can use this web page of course, but don't stop there. Check out this list of ways to run your commands on your computers.

      The Smart Home version of the Alexa skill and Google Assistant action does the best job of matching your spoken words to your commands.

      Smart Home voice assistant skills (Example: "Alexa, turn on calculator") <--Recommended

      • "TRIGGERcmd Smart Home" Alexa skill
      • "TRIGGERcmd Smart Home" Google Assistant action

      Original "conversational" voice assistant skills (Example: "Alexa, ask TRIGGERcmd to run calculator"):

      • Original Alexa skill
      • Original Google Assistant action (deprecated)

      Progressive Web App (PWA)

      • https://app.triggercmd.com

      Mobile apps:

      • Apple App Store: TRIGGERcmd
      • Google Play Store: TRIGGERcmd (supports widgets)
      • Amazon App Store: TRIGGERcmd

      Run your commands when things happen in other Internet services:

      • Zapier - create a "Zap" that runs your command when something happens on one of their 1500+ supported apps.
      • Make - create "scenarios" that run commands on your computers.
      • IFTTT - If This Then run a command, or if a TRIGGERcmd command runs, run an IFTTT applet.
      • Microsoft Power Automate (aka Flow) - run commands when things happen in Office 365 and other services.
      • Pipedream - build workflows that run your commands.

      IoT Smart Home hubs:

      • Home Assistant - Flip virtual HA switches to run your TRIGGERcmd commands.
      • Samsung SmartThings - Create virtual switches for each command, then flip the switches to run them. (Not working as of 6/21/2025)
      • Homey - Use the ‘run command’ flow action.
      • Hubitat - Trigger a command like you'd flip a switch.
      • Node-RED - Run commands using an "http request".
      • HomeKit - Use the homebridge-http-switch plugin with a bookmark URL.

      Other cool stuff:

      • Run an Alexa routine - when one of your TRIGGERcmd commands runs.
      • Google Assistant routine (aka automation) - use one of your TRIGGERcmd commands as a "starter" to run your routine when the command runs, or run one of your commands as a routine's "action." Either way, you must use the google automations script editor, not the Home app.
      • Local stdio MCP - Run commands from local AI LLM chat tools like Claude Desktop or VS Code. Use the "MCP Tool Description" field of each command to tell the LLM what the command does, and how to use the parameters.
      • Online Streamable HTTP MCP - Same as above but for online AI tools like Mistral AI.
      • Bookmarks - Create and share URL's that run your commands without authentication. You can set an optional timeout to make bookmark URL's expire. People can also scan your bookmark's QR code to run the command.
      • iOS shortcut - Use the iOS Shortcuts app to run your commands with Siri.
      • REST API - Use curl or other client to call the TRIGGERcmd API.
      • tcmd - Command line tool written in Go.
      • Tasker - Tasker is an Android app for automating things with your phone.
      • Slack app - Run your commands with Slack "slash" commands.
      • Powershell - Run a command on a computer across the Internet from your powershell script.
      • Roku channel - Run a command from your Roku.
      • Unity - Run a command from a Unity game or utility you made.
      • Streamdeck - Configure a Streamdeck button to run a command on a remote computer.
      • Python - Run a command on a remote computer from a python script.
      • Paywall URL's - Similar to bookmark URL's, you can also charge people via Paypal to run your commands.
      posted in Instructions trigger methods
      RussR
      Russ
    • Autohotkey script for Play, Pause, Volume Up/Down, Next/Previous

      You'll need to install this on your Windows box to make it work: https://autohotkey.com

      This is my media.ahk autohotkey script:

      Gosub, %1%
      return

      next:
      Send {Media_Next}
      return

      previous:
      Send {Media_Prev}
      return

      pause:
      Send {Media_Play_Pause}
      return

      play:
      Send {Media_Play_Pause}
      return

      stop:
      Send {Media_Stop}
      return

      volup:
      Send {Volume_Up}
      return

      voldown:
      Send {Volume_Down}
      return

      mute:
      Send {Volume_Mute}
      return

      These are the corresponding commands.json entries:

      {"trigger":"Mute","command":"start C:\\autohotkeyscripts\\media.ahk mute","ground":"foreground","voice":"mute"},
      {"trigger":"Volume Up","command":"start C:\\autohotkeyscripts\\media.ahk volup","ground":"foreground","voice":"volume up"},
      {"trigger":"Volume Down","command":"start C:\\autohotkeyscripts\\media.ahk voldown","ground":"foreground","voice":"volume down"},
      {"trigger":"Media Next","command":"start C:\\autohotkeyscripts\\media.ahk next","ground":"foreground","voice":"next"},
      {"trigger":"Media Stop","command":"start C:\\autohotkeyscripts\\media.ahk stop","ground":"foreground","voice":"stop"},
      {"trigger":"Media Previous","command":"start C:\\autohotkeyscripts\\media.ahk previous","ground":"foreground","voice":"previous"},
      {"trigger":"Media Play Pause","command":"start C:\\autohotkeyscripts\\media.ahk pause","ground":"foreground","voice":"pause"},

      NOTE: You don't need a Play and a Pause because they do the same thing - they just toggle between play and pause.

      This is optional, but I'm also using my Raspberry Pi based IR receiver to trigger the above commands with a VCR remote.

      I have these entries in my /etc/lirc/lircrc file on the Pi:

        begin
             prog = irexec
             button = KEY_1
             config = export HOME=/root ; /root/triggertest.sh play downstairs
        end
        begin
             prog = irexec
             button = KEY_2
             config = export HOME=/root ; /root/triggertest.sh notepad downstairs
        end
        begin
             prog = irexec
             button = KEY_PLAY
             config = export HOME=/root ; /root/triggertest.sh "Media Play Pause" downstairs
        end
        begin
             prog = irexec
             button = KEY_PAUSE
             config = export HOME=/root ; /root/triggertest.sh "Media Play Pause" downstairs
        end
        begin
             prog = irexec
             button = KEY_RIGHT
             config = export HOME=/root ; /root/triggertest.sh "Media Next" downstairs
        end
        begin
             prog = irexec
             button = KEY_LEFT
             config = export HOME=/root ; /root/triggertest.sh "Media Previous" downstairs
        end
        begin
             prog = irexec
             button = KEY_STOP
             config = export HOME=/root ; /root/triggertest.sh "Media Stop" downstairs
        end
        begin
             prog = irexec
             button = KEY_UP
             config = export HOME=/root ; /root/triggertest.sh "Volume Up" downstairs
        end
        begin
             prog = irexec
             button = KEY_DOWN
             config = export HOME=/root ; /root/triggertest.sh "Volume Down" downstairs
        end
        begin
             prog = irexec
             button = KEY_MUTE
             config = export HOME=/root ; /root/triggertest.sh "Mute" downstairs
        end
      
      posted in Windows
      RussR
      Russ
    • RE: internal server error

      @Micael-Sousa, good to know. I'm glad you figured this out.

      posted in Alexa
      RussR
      Russ
    • Turn monitors on and off

      Turn monitors off:

      powershell (Add-Type '[DllImport(\"user32.dll\")]^public static extern int SendMessage(int hWnd, int hMsg, int wParam, int lParam);' -Name a -Pas)::SendMessage(-1,0x0112,0xF170,2)
      

      Turn monitors on (didn't work for me - see below):

      powershell (Add-Type '[DllImport(\"user32.dll\")]^public static extern int SendMessage(int hWnd, int hMsg, int wParam, int lParam);' -Name a -Pas)::SendMessage(-1,0x0112,0xF170,-1)
      

      In my case, the Turn monitors on powershell command didn't work for me. My monitors turned on but then turned right back off for some reason. So instead, I used this script and made this my command line so it effectively presses the Print Scrn button to turn my monitors back on:

      wscript d:\scripts\key.vbs PRTSC
      
      posted in Windows
      RussR
      Russ
    • RE: Doc Api

      @Ruan-Santana, I added two pages to the documentation this morning:

      https://docs.triggercmd.com/#/./API/TriggerCommand
      https://docs.triggercmd.com/#/./API/ListCommands

      Is that what you're looking for?

      posted in API
      RussR
      Russ
    • RE: New Bookmark option for each trigger

      @tim-s, that's right - you could even just change the trigger name and change it back, and it would invalidate the bookmark URL.

      posted in Announcements
      RussR
      Russ
    • RE: Shutdown não funciona no mac

      @Waldex-Santos, I think this should work:

      osascript -e 'delay 60' -e 'tell app "System Events" to shut down'
      
      posted in Mac
      RussR
      Russ
    • Hubitat integration

      @Royski created this Hubitat integration that works just like the SmartThings integration.

      His write up is here, on the Hubitat community forum:
      https://community.hubitat.com/t/release-triggercmd-for-hubitat/22715

      The code and instructions are here:
      https://github.com/rvmey/HubitatTRIGGERcmd

      Here's quick video showing it working:
      https://youtu.be/V90B7jbEYxI

      posted in Instructions
      RussR
      Russ
    • RE: Triggercmd smart home not reachable

      It's back up now.

      One of my servers went down last night, and Kubernetes didn't handle the fail-over well.

      I got an email from my monitoring system while I was sleeping. I'll need to setup something else that will actually wake me up.

      I'm sorry about this outage.

      posted in Google Home
      RussR
      Russ

    Latest posts made by Russ

    • Run the MCP server in Docker

      Add an entry like this under mcpServers in claude_desktop_config.json, or mcp.json for VS Code:

              "triggercmd": {
                  "command": "docker",
                  "args": [
                      "run",
                      "-i",
                      "--rm",
                      "-e",
                      "TRIGGERCMD_TOKEN",
                      "rvmey/triggercmd-mcp"
                  ],
                  "env": {
                      "TRIGGERCMD_TOKEN": "your triggercmd token"
                  }
              },
      

      This is the docker image: https://hub.docker.com/r/rvmey/triggercmd-mcp
      This is the github repo: https://github.com/rvmey/triggercmd-mcp-stdio

      posted in MCP
      RussR
      Russ
    • I used the local TRIGGERcmd stdio mcp server with a local LLM with Ollama and Open WebUI

      ddd1e4a9-b0f0-4077-80ce-b3e66bc283cd-image.png

      I used this bash script to run an MCP/OpenAI proxy server in Ubuntu under WSL:

      #!/bin/bash -xv
      curl -O https://agents.triggercmd.com/triggercmd-mcp/triggercmd-mcp-linux-amd64
      chmod +x triggercmd-mcp-linux-amd64
      
      docker build -t mcp-proxy-server .
      docker run -it -p 8000:8000 -e TRIGGERCMD_TOKEN="my triggercmd token" mcp-proxy-server
      

      This is my Dockerfile:

      FROM python:3.11-slim
      WORKDIR /app
      RUN pip install mcpo uv
      
      COPY triggercmd-mcp-linux-amd64 /triggercmd-mcp-linux-amd64
      
      # Replace with your MCP server command; example: uvx mcp-server-time
      CMD ["uvx", "mcpo", "--host", "0.0.0.0", "--port", "8000", "--api-key", "top-secret", "--", "/triggercmd-mcp-linux-amd64" ]
      

      This is how you set it up in the Settings - External Tools - Manage Tool Servers:

      00e91ceb-1dab-4a65-ade4-b82f0267c3cc-image.png

      posted in MCP
      RussR
      Russ
    • How to use the TRIGGERcmd MCP servers

      There are 3 ways to use it:

      • The chat interface built into the web UI. This is mostly for quickly testing the TRIGGERcmd MCP server, but I think people will find it more useful in a Claude Desktop or some tool like that because it can be used in combination with other MCP servers in that context.
      • The local stdio based MCP server for local tools like Claude Desktop or VS Code.
      • The Streamable HTTP MCP Server for online LLM AI tools, like Mistral AI.

      These are the LLM prompts for some of my favorite use-cases:

      • "Use #triggercmd to run calculator on NewLaptop" <- this is a good "hello world" type example.
      • "Play a popular Youtube video on my upstairs Roku" <- this one is fun and practical.
      posted in MCP
      RussR
      Russ
    • New Streamable HTTP MCP Server for online LLM AI tools.

      You can use this TRIGGERcmd MCP server with online tools like Mistral AI.

      To set it up in Mistral AI, go here: https://chat.mistral.ai/connections

      Then click + Add Connector and fill in this form:

      42237914-cf5f-47db-a2eb-8218f6ca1f88-image.png

      It works just like the local stdio MCP server used with local AI tools like Claude desktop. Click here for an example of that.

      4f337be5-d297-44d6-8082-85790907a551-image.png

      You can also use it with Open AI's agent builder tool at https://platform.openai.com/agent-builder

      904b7cf2-fbba-453d-9a88-187c0d71ff77-image.png

      posted in Announcements
      RussR
      Russ
    • Use Claude Desktop to lookup and play a Youtube video on your Roku

      I'm having fun with the TRIGGERcmd MCP server and this Youtube MCP server. This is an example to demostrate how easy it is to turn any script into an MCP tool for AI to use on your behalf.

      Here's a Youtube video showing how it works: https://youtu.be/ctV8TUvcQuI

      This shows me telling the Claude AI LLM to lookup a Youtube video and play it on my Roku.

      fe03fce6-dcc7-41e3-904b-1f67adb2dada-image.png

      This is my claude_desktop_config.json file:

      {
        "mcpServers": {
          "triggercmd": {
            "command": "C:\\tools\\triggercmd-mcp-windows-amd64.exe"
          },
          "youtube": {
                  "command": "C:\\Users\\russe\\AppData\\Local\\Microsoft\\WindowsApps\\python.exe",
                  "args": [
                      "-m", "uv", "run", "--directory", 
                      "C:\\tools\\mcp\\youtube-mcp", 
                      "youtube_server.py"
                  ],
                  "env": {
                      "YOUTUBE_API_KEY": "(get your own)"
                  }
          }
        }
      }
      

      This is my TRIGGERcmd command from commands.json:

       {
        "trigger": "Youtube Upstairs Roku",
        "command": "c:\\tools\\yt-upstairs-roku.bat",
        "offCommand": "",
        "ground": "foreground",
        "voice": "",
        "voiceReply": "",
        "allowParams": "true",
        "mcpToolDescription": "Shows a specific video on my upstairs Roku.  The parameter specifies the video by its Youtube video ID. "
       }
      

      This is my yt-upstairs-roku.bat file:

      curl -v -XPOST "http://192.168.1.12:8060/launch/837?contentId=%1"
      

      192.168.86.127 is the IP of my upstairs Roku.
      837 is the ID of the Youtube app on Roku.
      %1 is a placeholder for the parameter (the Youtube video ID).

      d50c22a1-8bc9-4269-8c2f-ee093c986473-image.png

      posted in Windows
      RussR
      Russ
    • RE: TRIGGERcmd stdio MCP server for LLM AI integration

      Here I'm using the triggercmd MCP server in goose:

      7a3e53e5-185d-41fc-a2dd-13d9e0aa9273-2B04CF8C-7574-4A99-9101-332825A2C4F8.jpeg

      posted in Announcements
      RussR
      Russ
    • New MCP server in web UI

      Now you don't have to install the TRIGGERcmd MCP server in Claude or VSCode if you just want to try it out. You can use it right in your browser, if you're subscribed.

      2f8fe235-ad43-4626-8a69-e269ee52ee24-image.png

      Also, as of agent version 1.0.50, a new mcp tool will be added for any command that has an MCP Tool Description:

      c02ec4d8-f47c-482d-bc75-9f68fcadf564-image.png

      Your description should explain to the AI LLM what the command does and how to use the parameters. For example:

      "This is a color LED light bulb that you can turn on or off. You can also change the color. The parameters are on, off, or a color like red, blue, green etc."

      posted in Announcements
      RussR
      Russ
    • RE: api pyton para alexa

      @Fabio, are you able to run your script as a TRIGGERcmd command yet?

      You can run it with a command like this:

      python3 c:\folder\pyautogui-position\script.py
      
      posted in API
      RussR
      Russ
    • TRIGGERcmd stdio MCP server for LLM AI integration

      This should work with any MCP client, but I've tested it with VS Code and Claude Desktop.

      This video shows how to set it up and use it: https://youtu.be/4WSN52Optjk

      This screenshot shows the basic functionality, but click here for a more interesting use case that uses a "dynamic tool" that gets created for each command that has an MCP Tool Description.

      c3154223-a644-4430-9886-78ecded02ce6-image.png

      I put the instructions and download links here:
      https://github.com/rvmey/triggercmd-mcp-stdio

      Or for an online LLM like Mistral or OpenAI agent builder, use the online TRIGGERcmd MCP server.

      posted in Announcements
      RussR
      Russ
    • RE: Can't Open Application

      @garym77, does that command work from a Terminal window? You should run it there first so you can see if the command gives an error.

      Also, you should make the voice word something like creality so you can say "Alexa, turn on creality" after you enable the Triggercmd Smart Home skill.

      posted in General Discussion
      RussR
      Russ