Skip to main content
Glama

skyspark-mcp

MCP server for SkySpark — connect AI assistants to your building automation data.

Evaluate Axon expressions, read/write records, manage functions, and explore your SkySpark projects through the Model Context Protocol.

Features

  • 21 tools for comprehensive SkySpark interaction

  • SCRAM, token, or no-auth — works with any network setup (including Tailscale)

  • Multi-project — target different projects from the same server

  • Base64-safe commits — avoids Axon ${} string interpolation issues

  • Production-tested — used daily for building analytics dashboards

Quick Start

pip install skyspark-mcp

Create a .env file (see .env.example):

SKYSPARK_HOST=192.168.1.100
SKYSPARK_PORT=8080
SKYSPARK_PROJECT=demo
SKYSPARK_AUTH=scram
SKYSPARK_USERNAME=su
SKYSPARK_PASSWORD=your-password

Run the server:

# SSE transport (default, port 8765)
skyspark-mcp

# stdio transport (for direct MCP client integration)
skyspark-mcp --stdio

Tools

Core

Tool

Description

ss_eval

Evaluate any Axon expression

ss_about

Server info (version, project, user)

ss_read

Read records by Haystack filter

ss_read_by_id

Read a single record by ID

ss_search

Full-text search across records

CRUD

Tool

Description

ss_create

Create a new record

ss_update

Update record tags

ss_delete

Delete matching records

Functions

Tool

Description

ss_func_list

List project functions

ss_func_read

Read function source code

ss_func_commit

Update function source (base64-safe)

ss_func_commit_batch

Batch commit multiple functions

ss_func_diff

Compare current vs proposed source

ss_funcs_all

List ALL functions including built-ins

Content (base64-safe)

Tool

Description

ss_view_update

Update view source

ss_page_update

Update Docunomicon page content

ss_rec_create

Create record with complex tag values

Discovery

Tool

Description

ss_views

List views

ss_templates

List Docunomicon templates

ss_libs

List installed extensions

ss_projects

List available projects

Authentication

SCRAM (default)

Standard SkySpark authentication. Set SKYSPARK_USERNAME and SKYSPARK_PASSWORD.

No Auth

For trusted networks (Tailscale, VPN, localhost). Set SKYSPARK_AUTH=none. The server strips auth headers automatically.

Token

Pre-shared auth token. Set SKYSPARK_AUTH=token and SKYSPARK_PASSWORD=your-token.

Multi-Project

Every tool accepts an optional project and server parameter:

ss_eval(expr="readAll(site)", project="other_project")
ss_read(filter_expr="site", server="http://other-server:8080", project="demo")

Clients are pooled per server+project combination.

Usage with Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "skyspark": {
      "command": "skyspark-mcp",
      "args": ["--stdio"],
      "env": {
        "SKYSPARK_HOST": "192.168.1.100",
        "SKYSPARK_PORT": "8080",
        "SKYSPARK_PROJECT": "demo",
        "SKYSPARK_AUTH": "scram",
        "SKYSPARK_USERNAME": "su",
        "SKYSPARK_PASSWORD": "your-password"
      }
    }
  }
}

Usage with mcporter

# SSE
npx mcporter call --allow-http 'http://localhost:8765/mcp.ss_eval(expr: "readAll(site)")'

# stdio
npx mcporter call --stdio "skyspark-mcp --stdio" 'ss_eval(expr: "1 + 1")'

Dependencies

  • phable — Python Haystack client

  • FastMCP — MCP server framework

License

MIT — built by Pip 🌱

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/pipseedai/skyspark-mcp'

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