Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
NASS_DEVICENoDevice used by faster-whisper, e.g. cpu.cpu
GROQ_API_KEYNoGroq API key for optional external ASR; used only when NASS_ALLOW_EXTERNAL_ASR=1.
NASS_WORKERSNoNumber of transcription workers.1
NASS_DATA_DIRNoDirectory for Nass data, such as job data.
NASS_MEDIA_DIRNoDirectory containing local audio files for nass_start_local_file.
NASS_TRANSPORTNoTransport mode. Set to `http` to run HTTP transport locally; default is stdio.
NASS_AUDIO_CACHENoEnable or disable local audio cache.1
NASS_BACKEND_URLNoURL of the authenticated upstream Python backend used by the Netlify remote gateway.
NASS_COMPUTE_TYPENoCompute type used by faster-whisper, e.g. int8.int8
NASS_BACKEND_TOKENNoShared secret for remote gateway/backend authentication; must match between Netlify and the backend.
NASS_WHISPER_MODELNoWhisper model to use. Larger models such as medium/large-v3 need more compute.small
NASS_INITIAL_PROMPTNoInitial prompt used to bias Whisper transcription, e.g. Arabic terms and names.
NASS_JOB_QUEUE_LIMITNoPer-process job queue quota to prevent task buildup.8
NASS_WHISPER_CPP_BINNoPath to the whisper.cpp binary (whisper-cli) for the alternative local ASR backend.
NASS_MAX_DURATION_SECNoMaximum allowed media duration in seconds.14400
NASS_MCP_BEARER_TOKENNoBearer token used by MCP clients to authenticate to the remote gateway.
NASS_PROVIDER_TIMEOUTNoTimeout in seconds for audio/caption providers.600
NASS_YOUTUBEJS_SCRIPTNoPath to youtubejs_audio.mjs for optional YouTube.js audio extraction.
NASS_WHISPER_CPP_MODELNoPath to the whisper.cpp ggml model file for the alternative local ASR backend.
NASS_ALLOW_EXTERNAL_ASRNoSet to 1 to allow optional external ASR via Groq.
NASS_CAPTION_CACHE_SECONDSNoCaption cache lifetime in seconds.86400
NASS_AUDIO_CACHE_LIMIT_BYTESNoMaximum audio cache size in bytes.3221225472

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": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
nass_healthA

Inspect availability of independent caption/audio/ASR backends; never claim success from installation alone.

nass_start_transcriptionA

Queue a YouTube transcription. auto=prefer captions, audio=recognize original audio, captions=captions only, verify=run audio ASR independently and provide both for comparison. Always prefer 'audio' for no-captions videos or when verifying quoted speech.

nass_start_local_fileC

Transcribe a media file inside configured NASS_MEDIA_DIR, bypassing YouTube completely.

nass_job_statusB

Get queued/running/completed/failed status and the precise fallback attempt ledger.

nass_get_transcriptC

Read long transcripts in reliable pages; next_segment identifies the next page.

nass_search_transcriptB

Search complete stored transcript; return precise quotes/timestamps and source links. Arabic diacritics and common alef variants are normalized for retrieval only.

nass_exportB

Export transcript as SRT, TXT or JSON on the server, for later sharing/analysis.

nass_audio_excerptB

Return an audio Content block containing up to 45 seconds of actual spoken audio. Useful for directly checking critical quotations. Client audio support varies.

nass_start_audio_downloadA

Queue an audio-only download without captions or speech recognition; poll job status. Better suited than the synchronous tool for long videos.

nass_download_original_audioB

Obtain an actual audio media file on the MCP host, without using any captions. A synchronous download is appropriate for relatively short public videos. The returned file path is server-local and never implies user-side download.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.5/5.0

Scored across 10 tools

Disambiguation4/5

Most tools are clearly separated by action and resource: start transcription vs get/search/export transcript, YouTube source vs local file, transcript access vs audio access. The main overlap is nass_start_audio_download vs nass_download_original_audio, both audio-download paths differentiated mainly by async/sync and video length, so some misselection risk remains.

Naming Consistency4/5

All tools use a consistent nass_ prefix and snake_case formatting. Most names follow verb_noun, but nass_export, nass_health, and nass_audio_excerpt are noun-only or objectless deviations, making the pattern slightly less uniform.

Tool Count5/5

Ten tools is well within the appropriate range for a transcription/audio workflow. Each tool covers a distinct stage—job start, status polling, transcript retrieval/search/export, audio inspection/download, and backend health—without excessive surface area.

Completeness4/5

The surface covers the core lifecycle: starting YouTube or local-file transcription, checking job status, reading/searching/exporting transcripts, obtaining audio excerpts/downloads, and checking backend health. Minor gaps include no explicit job cancellation or transcript/job listing and management operations, which agents may need for longer workflows.

Maintenance

ActivityMaintained
ResponsivenessNo issues