Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORTNoListen port.8787
MCP_RATE_MAXNoCoarse per-IP rate limit max requests (Cloudflare is primary).120
MCP_BIND_HOSTNoBind address — keep on localhost behind a proxy.127.0.0.1
LOOPCLUB_ORIGINNoOrigin baked into emitted ?jam= links.https://app.loopclub.xyz
MCP_ALLOWED_HOSTSNoHost-header allowlist (DNS-rebind defense).mcp.loopclub.xyz,localhost,127.0.0.1
MCP_MAX_BODY_BYTESNoRequest body cap.65536
MCP_RATE_WINDOW_MSNoCoarse per-IP rate limit window in milliseconds.60000
MCP_ALLOWED_ORIGINSNoOrigin allowlist (absent Origin = allowed; foreign = 403).https://app.loopclub.xyz,https://loopclub.xyz

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
build_loopA

Turn a described beat into a loopclub link. Returns a ?jam= deep link, an ASCII grid preview, the lit-cell count, and the instruments used. The user opens the link to audition the loop free and rent the cells in-app. Read loopclub://vocabulary and loopclub://genres first for idiomatic loops.

describe_loopA

Read a loop back: pass a ?jam= link (or raw pattern/synthData bigints) and get a human-readable, per-track summary plus the ASCII grid. Use it to inspect a loop a user pasted, or to verify what you just built.

Prompts

Interactive templates invoked by user choice

NameDescription
jamKick off a loopclub jam: generate an idiomatic, in-key loop and return the link.

Resources

Contextual data attached and managed by the client

NameDescription
vocabularyThe grid rules: 16 steps, 9 tracks, the synth row, pitch range, and how to be musical.
genresWorked example loops (house, techno, boom-bap, dnb) as ASCII + spec, for few-shot grounding.
how-it-worksThe link → audition → rent lifecycle. Auditioning is free; pressing cells costs USDm.

TDQS

A4.2/5.0

Scored across 2 tools

Disambiguation5/5

build_loop creates a loop from a described beat, while describe_loop reads an existing loop back. The two operations are exact opposites with no overlapping purpose, making misselection very unlikely.

Naming Consistency5/5

Both names follow a strict snake_case verb_noun pattern and share the same noun stem (loop). This is highly predictable and consistent.

Tool Count3/5

Two tools is thin for a loop-building service, even if create/read are the core operations. It sits at the borderline of feeling under-scoped rather than clearly appropriate.

Completeness4/5

The server covers the main lifecycle of constructing a loop and inspecting it, which matches the stated purpose of generating and verifying ?jam= links. Minor gaps like updating, deleting, or listing loops are not present, but loops may be treated as immutable links.