Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

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

Tools

Functions exposed to the LLM to take actions

NameDescription
whoamiA

Show the upstream MCP URL, read-only flag, the account plan, whether writes are allowed (canWrite) with a plain-language writeAccess reason, and the live /users/profile response for the OAuth-authenticated user. Good first call to confirm auth and whether create/generate/render tools will work (free accounts are read-only over the MCP). If not signed in, it returns a 'run login' error — use the login tool.

loginA

Authenticate with the backend. If not already logged in, returns an authorization URL to open in your browser; approve the sign-in and the token is cached in the background, then retry your action. (Browser-based login can't be popped reliably from here, so you click the link.)

logoutA

Clear the cached OAuth session (and best-effort revoke it server-side) so the next tool call re-authenticates via the browser. Use to switch accounts or reset a broken auth state.

list_projectsA

GET /projects for the authenticated user. Supports paging, sorting, search, and status filter.

get_projectA

GET /projects/:id — full project document for the authenticated user.

project_statsA

GET /projects/stats — aggregate project counts/metrics for the authenticated user.

list_clipsB

Clips for the authenticated user. With projectId -> GET /clips/project/:projectId; otherwise GET /clips (the clip library) with paging/status.

list_moviesC

Rendered movies for the user. With projectId -> GET /movies/project/:projectId; else GET /movies.

list_voicesA

GET /voices — voiceover voices available to the user (stock + cloned).

get_usageA

GET /billing/usage — credit and export usage for the authenticated user.

helpA

Guided, numbered walkthrough of the whole pipeline — sign in → create a project → add photos → edit → animate clips → add music/voiceover/overlays → arrange → render — with example args and the gotchas (async polling, paid gating). Call this first if you're not sure where to start.

list_endpointsA

Return the curated catalog of API endpoints (grouped) so you know what api_request can call. Not exhaustive — every mounted route is reachable, this covers the main surface.

add_image_from_fileA

Upload a LOCAL image file to a project. Reads the file, mints a presigned S3 URL (POST /projects/:id/images/upload-url), PUTs the bytes straight to storage (no credentials needed), then attaches it (POST /projects/:id/images). This is the credential-less upload path the remote MCP can't do. Image aspect ratio must be between 0.5:1 and 2:1. Blocked in read-only mode.

resolve_addressA

Resolve a free-text address into ranked candidates (formatted, placeId, location, components). Use before creating a project for a real listing — pass the chosen candidate as the project address so listing facts (price/beds/baths) auto-populate. Prefer candidates with isStreetLevel=true.

generate_clipA

Animate one still project image into a video clip (Runway Gen-4). Async — returns a jobId; poll get_clip_status. imageUrl is auto-resolved from the project if omitted. Costs credits.

get_clip_statusA

Poll a clip-generation job started by generate_clip (GET /clip-generation/clip-status/:jobId).

edit_imageA

Create a non-destructive, versioned edit of a project image. editType: staging/destaging, twilight(+_interior), upscale, green_grass, bright_day, seasonal (winter/halloween/christmas +_interior), advanced replace/remove/add (need advancedParams), or manual (customPrompt). staging needs roomType+style. Async — returns a jobId; the new version appears on the image. Costs 1 credit.

render_movieA

Assemble the project's timeline into the final video (clips + music + watermark + overlays). Only projectId is required; settings fall back to the project. Async — returns a jobId; poll list_movies. Costs credits and an export.

add_timeline_audioA

Place an EXISTING audio asset (a generated voiceover, a music track, any audio URL) on the timeline at a specific point so it's in the render. duration defaults to the full movie length (ideal for background music); pass sourceDuration for a fixed clip like a voiceover. Get a voiceover url/durationSec from get_project (project.voiceover / voiceovers[]). Blocked in read-only mode.

add_timeline_overlayA

Overlay an EXISTING image/logo OR a text caption on the timeline at a specific point. For an image, pass imageId (already in the project — url auto-resolved) or a direct url; for text, pass text. position is percent-of-canvas (0-100) from the top-left. Blocked in read-only mode.

move_timeline_elementA

Change when a single timeline element starts and/or how long it lasts (any track). Use to nudge a floating audio/overlay element to a new point. To resequence all clips, use reorder_timeline. Element ids come from get_project (timeline.tracks[].elements[].id). Blocked in read-only mode.

reorder_timelineA

Rearrange a track's elements (defaults to the video/clip track) into the given order and recompute sequential startTimes so they play back-to-back. Pass element ids in the desired order; omitted elements keep their relative order and are appended after. Ids come from get_project. Blocked in read-only mode.

api_requestA

Generic authenticated request to ANY backend route. Path is relative to the API base (e.g. '/projects' or 'admin/users'). Use list_endpoints to discover paths. Non-GET methods are blocked when MCP_READONLY is set. Returns { status, ok, request, data } including error envelopes.

Prompts

Interactive templates invoked by user choice

NameDescription
getting_startedStart-to-finish walkthrough from sign-in to a rendered movie.

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/TryReelEstate/reel-estate-mcp'

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