<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Evan Morgan</title>
    <description>The latest articles on Forem by Evan Morgan (@evanmorgan).</description>
    <link>https://forem.com/evanmorgan</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2721545%2Fb59cf76c-b3ca-48e7-8c7b-ba02b662b2ad.jpg</url>
      <title>Forem: Evan Morgan</title>
      <link>https://forem.com/evanmorgan</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/evanmorgan"/>
    <language>en</language>
    <item>
      <title>Deploy a BrightSign Player in 10 Minutes with AI</title>
      <dc:creator>Evan Morgan</dc:creator>
      <pubDate>Tue, 03 Feb 2026 10:25:53 +0000</pubDate>
      <link>https://forem.com/evanmorgan/deploy-a-brightsign-player-in-10-minutes-with-ai-5355</link>
      <guid>https://forem.com/evanmorgan/deploy-a-brightsign-player-in-10-minutes-with-ai-5355</guid>
      <description>&lt;p&gt;&lt;em&gt;From zero to content on your digital signage player in under 10 minutes.&lt;/em&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  What We're Building
&lt;/h2&gt;

&lt;p&gt;By the end of this post, you'll display an image on a BrightSign player using AI-generated code. No SDK. No framework. Just one prompt and a working script.&lt;/p&gt;

&lt;p&gt;Let's go.&lt;/p&gt;

&lt;h2&gt;
  
  
  Prerequisites
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;A BSN.cloud account - &lt;a href="https://bsn.cloud" rel="noopener noreferrer"&gt;Sign up free at bsn.cloud&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;A BSN network - Created when you sign up&lt;/li&gt;
&lt;li&gt;A BrightSign player - Powered on, connected to a screen, registered to your network. If you don't have one, you can &lt;a href="https://store.brightsign.biz/" rel="noopener noreferrer"&gt;order a BrightSign player here&lt;/a&gt;, or if you haven't set it up yet, follow the &lt;a href="https://vimeo.com/948903290?fl=pl&amp;amp;fe=ti" rel="noopener noreferrer"&gt;Player Setup video&lt;/a&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Got all three? Start your timer.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Get Your API Credentials
&lt;/h2&gt;

&lt;p&gt;Log into &lt;a href="https://adminpanel.bsn.cloud/" rel="noopener noreferrer"&gt;the BSN Admin Panel&lt;/a&gt;. Navigate to Settings -&amp;gt; Applications -&amp;gt; Add Application. Name it anything. Give it &lt;strong&gt;Devices&lt;/strong&gt; permissions (read and write). Copy:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Client ID&lt;/li&gt;
&lt;li&gt;Secret&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Store them safely, you'll need these so your application can authenticate.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt;: if you have trouble performing these steps, refer to the &lt;a href="https://docs.brightsign.biz/developers/2025-api-usage-guide" rel="noopener noreferrer"&gt;BrightSign API Authentication Guide&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: Install the MCP Server
&lt;/h2&gt;

&lt;p&gt;The MCP server is the secret sauce to speeding up our deployment times. It will query the documentation in real-time to generate accurate, working code on the first try. No more copy-pasting from docs. No more trial-and-error.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fastros1dzmqr7yvbmy9p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fastros1dzmqr7yvbmy9p.png" alt=" " width="800" height="469"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let's give your AI assistant direct access to BrightSign documentation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Claude Code:&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;claude mcp add brightdeveloper-docs &lt;span class="nt"&gt;--transport&lt;/span&gt; http https://brightdeveloper-mcp.bsn.cloud/mcp
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;VS Code / Cursor:&lt;/strong&gt; Add to your MCP settings:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"servers"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"brightdeveloper"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"type"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"http"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"url"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://brightdeveloper-mcp.bsn.cloud/mcp"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 3: Run the Prompt
&lt;/h2&gt;

&lt;p&gt;Open Claude and paste this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Generate a complete, working program that displays "Hello BrightSign" on my player.

# Requirements
- Use the BrightSign MCP server documentation to get the API details right
- Load credentials from a .env file, you create it and I'll fill in the values for BRIGHTSIGN_CLIENT_ID and BRIGHTSIGN_CLIENT_SECRET
- Authenticate with BSN.cloud
- Set network context after auth
- Use the Remote DWS (RDWS) API to upload files directly to the player's storage
- Upload an autorun.brs file that displays an image fullscreen
- Upload the hello-brightsign.png image from:
  https://raw.githubusercontent.com/BrightDevelopers/BrightDev/main/examples/hello-brightsign/static/hello-brightsign.png
- Reboot the player to run the new autorun
- Print progress at each step
- Single file I can run directly

# My Settings
- Language: Node.js / Go / Python / Anything you like
- Network name: YOUR_NETWORK_NAME_HERE
- Player serial: TARGET_PLAYER_SERIAL_HERE
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Step 4: See It
&lt;/h2&gt;

&lt;p&gt;Add your credentials to the generated &lt;code&gt;.env&lt;/code&gt; file then run the generated code. Watch your player reboot. The "Hello BrightSign" image appears.&lt;/p&gt;

&lt;p&gt;That's it. You just deployed directly to a BrightSign player. Here's mine (please forgive my key to Erebor and split keyboard 😅)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpb1sx90e7wijvecz5zmm.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpb1sx90e7wijvecz5zmm.jpg" alt=" " width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://github.com/BrightDevelopers/BrightDev" rel="noopener noreferrer"&gt;BrightDev Repo&lt;/a&gt;&lt;/strong&gt; - More examples&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://github.com/BrightDevelopers/discussions" rel="noopener noreferrer"&gt;GitHub Discussions&lt;/a&gt;&lt;/strong&gt; - Questions, ideas and bug reports&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Part of &lt;a href="https://github.com/BrightDevelopers" rel="noopener noreferrer"&gt;BrightDeveloper&lt;/a&gt; - BrightSign's AI-first developer program.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>brightsign</category>
      <category>ai</category>
      <category>digitalsignage</category>
      <category>api</category>
    </item>
  </channel>
</rss>
