Inspiration

I wanted to learn MCP server and development on an Ubuntu with i3 machine.

What it does

It processes natural language (NL) to send commands to the OBS WebSocket server.

How I built it

I used C++ (my primary language) to create a socketing base, connection handshake, authentication, processing NL commands, and sending requests to the OBS server. I also used Qt C++ library to provide a nicer application UI.

Challenges I ran into

I wanted to test my (now new) laptop (an old piece of hunk - old gaming laptop), in which I installed Linux (Ubuntu with i3) to give it life and save it from Windows :) Making it work on Linux was a challenge, as I'm pretty new to it too. I learned that vibe coding small projects is pretty nice and enjoyable. However, making it expandable (the whole purpose of OOP), needs some serious prompt engineering. For a beginner, it was very difficult to add more features as I kept going down rabbit holes of compile errors :(

Accomplishments that I'm proud of

This is literally my first time vibe coding (seriously). I am a big believer of reading the documentation (occasionally asking AI's help) than making AI do the work. So as a first vibe coding project, its pretty neat!

What I learned

I learnt how to vibe code :)

What's next for OBS natural language controller

Make it into a beautiful app, allow any connections from any remote device via authentication (of course), rather than hard-coding the IP. Allow for more and more natural language commands to function.

Share this project:

Updates