Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
BILI_COOKIENoBilibili cookie string, e.g. SESSDATA=...; bili_jct=... Optional; use a secondary account.
VIDEO_AUDITNoPath to the audit log file.~/.cache/mcp-video-learn/audit.jsonl
VIDEO_YTDLPNoPath or command name for yt-dlp, used only as a fallback when the Bilibili API fails.yt-dlp
BILI_COOKIESNoPath to a Netscape-format cookies.txt file for Bilibili login state. Optional; use a secondary account.
SHARP_MODULENoPath to an already-installed sharp module, used to decode animated WebP files.
VIDEO_FFMPEGNoPath or command name for the ffmpeg executable.ffmpeg
VIDEO_MAX_MBNoMaximum download size per request in megabytes.60
VIDEO_COOKIESNoLegacy alias for BILI_COOKIES; path to a Netscape-format cookies.txt file.
VIDEO_ALLOW_ROOTSNoPath-separator-delimited list of local directories that media_frames is allowed to read. Defaults to the current directory plus the temporary directory.

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
}

Tools

Functions exposed to the LLM to take actions

NameDescription
bili_video_infoA

看一个 B 站视频的元信息(不下载):标题、UP 主、时长、简介摘要、有没有字幕。用于判断值不值得看。

bili_video_watchA

真正“看”一个 B 站视频:走官方 API 下载低清流(机房 IP 也可用)→ 抽 N 帧拼成网格 + 字幕文本。适合回答“这个视频讲了什么”。注意:只有字幕能反映台词/讲解,纯语音内容会缺失。

media_framesA

把任意“动的东西”变成模型能看懂的帧网格:本地 GIF/WebP/视频、媒体直链、或 B 站链接。适合识别动图表情包、看短视频、检查本地素材。返回元信息(尺寸/帧数/时长)+ 一张网格图。

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.6/5.0

Scored across 3 tools

Disambiguation3/5

bili_video_info is clearly a metadata-only check, but bili_video_watch and media_frames both accept Bilibili links and both return frame grids, creating real overlap. The descriptions do try to separate them (talking-head/subtitle use case vs. generic animated media), so an agent can usually choose correctly, but the boundary requires reading carefully.

Naming Consistency3/5

Two tools share a bili_video_ resource prefix while the third uses a generic media_ prefix, and the verb/action component varies (info = noun, watch = verb, frames = noun). Readable and domain-suggestive, but no predictable verb_noun pattern across the set.

Tool Count4/5

Three tools is on the lean side but each covers a distinct stage (triage metadata → deep watch → generic media inspection), so nothing feels redundant filler. The scope is intentionally narrow, so a small count is defensible.

Completeness4/5

The core workflow—decide whether to watch, then extract frames plus subtitles, plus a generic media path—is covered end to end. Gaps remain: no subtitle/transcript-only retrieval, no timestamp-targeted frame extraction, and pure-speech content is explicitly unsupported, which will dead-end some 'what does this say' queries.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues