glim.sh
REMOTE · GLIM.SH · SCANNED SEP 20
Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security80
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability76
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 5297 tokens (~264/item across 20 items; 14 tools + 6 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 14 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 16 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the glim.sh MCP server?
glim.sh is a hosted endpoint at https://glim.sh/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · glim.sh
claude mcp add --transport http sh-glim-glim 'https://glim.sh/mcp'
{
"mcpServers": {
"sh-glim-glim": {
"url": "https://glim.sh/mcp"
}
}
} {
"servers": {
"sh-glim-glim": {
"type": "http",
"url": "https://glim.sh/mcp"
}
}
} [mcp_servers.sh-glim-glim] url = "https://glim.sh/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"sh-glim-glim": {
"type": "remote",
"url": "https://glim.sh/mcp",
"enabled": true
}
}
} openclaw mcp add sh-glim-glim --url 'https://glim.sh/mcp' --transport streamable-http
mcp_servers:
sh-glim-glim:
url: "https://glim.sh/mcp" {
"McpServers": {
"sh-glim-glim": {
"Transport": "http",
"Url": "https://glim.sh/mcp"
}
}
} assistant mcp add sh-glim-glim -t streamable-http -u 'https://glim.sh/mcp'
{
"mcpServers": {
"sh-glim-glim": {
"type": "http",
"url": "https://glim.sh/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 9 Sept 26 +1
- Schema quality: good → excellent functional
- 29 Aug 26 0
- Tool “glim_detect_ai” rewrote its description, which is the text the model reads security
- Schema quality: excellent → good functional
- “glim_detect_ai” reworded the description of “format” cosmetic
- “glim_detect_ai” reworded the description of “text” cosmetic
- “glim_detect_ai” dropped the optional parameter “tier” cosmetic
- 28 Aug 26 −1
- Tool “glim_github_get” rewrote its description, which is the text the model reads security
- Tool “glim_github_search” rewrote its description, which is the text the model reads security
- “glim_github_get” reworded the description of “ref” cosmetic
- “glim_github_search” reworded the description of “kind” cosmetic
- “glim_github_search” reworded the description of “query” cosmetic
- 26 Aug 26 +1
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 25 Aug 26 0
- Stability: 0.97 → pass security
- 24 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.
- 15 Aug 26 0
- The server rewrote its instructions, which are the text every model session reads security
- 12 Aug 26 0
- The server rewrote its instructions, which are the text every model session reads security
- Schema quality: 4668 → 5178 ▼ functional
- New tool “glim_telegram_get” functional
- New tool “glim_telegram_search” functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Probed https://glim.sh/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_256_GCM_SHA384 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=glim.sh | CN=YR1,O=Let's Encrypt,C=US | 27 Jul 2026 | 25 Oct 2026 | RSA 2048 | SHA256-RSA | 531f1b62fe2bc5cc5d33b66de1092f37bb4 |
| SANs: glim.sh | ||||||
| CN=YR1,O=Let's Encrypt,C=US (CA) | CN=Root YR,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | RSA 2048 | SHA256-RSA | a20253f15f2691c05dc1ce13b9bcca4e |
| CN=Root YR,O=ISRG,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | RSA 4096 | SHA256-RSA | f24b6d17f9d9ad7cb1c9fea78782699f |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of glim.sh. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| sh. | present | 55297 | 8 | Verified |
| glim.sh. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://glim.sh/mcp | Verified | 200 | |
| http (plaintext) | http://glim.sh/mcp | HTTPS enforced | 308 | https://glim.sh/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
glim_amazon_get Amazon Product ~288
Fetch Amazon product detail from a full product URL (the marketplace - com|co.uk|de|fr|es|it - is read from the URL host; pass the url field from a glim_amazon_search result, or any /dp/<ASIN> page URL). Returns title, buybox price (gross + VAT-excluded net), stock, delivery estimate, rating, top reviews, and an 'other sellers' summary (count + floor price). Text mode (default) returns a compact view with offers_summary {buybox, lowest_new, lowest_used} - pass format='json' for full structured data incl. the offers[] listing and images.
| Name | Type | Req | Description |
|---|---|---|---|
| format | string | – | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': the same product as machine-readable JSON, plus the fields text omits: the full `offers[]` list (text summarizes it… |
| ref | string | yes | Full Amazon product URL - pass the `url` from a glim_amazon_search result, or any /dp/<ASIN> product page URL. The URL carries the marketplace (amazon.de, amazon.co.uk, ...), so no separate region is… |
No output schema declared.
No examples provided.
glim_amazon_search Amazon Search ~406
Pass exactly ONE of {query} or {category_slug}. Searches Amazon (com|co.uk|de|fr|es|it) and returns ranked hits with buybox price (gross + VAT-excluded net), ratings, review counts, and ASINs. Drill down with glim_amazon_get(ref). Set sort_by='most_reviewed' (with min_reviews to filter junk) for a trust-weighted re-rank within the current page. Compact text by default; pass format='json' for full structured data.
| Name | Type | Req | Description |
|---|---|---|---|
| category_slug | string | – | Amazon bestsellers category slug, e.g. 'electronics' (.com), 'elektronik' (.de), 'electronique' (.fr). Invalid slugs return 'not_found' - retry with a correct slug. |
| format | string | – | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': the same hits as machine-readable JSON. Text already carries every field except `image_url`, which only json return… |
| include_paid | boolean | – | Include sponsored ad results (default: dropped) |
| include_suggested | boolean | – | Include 'people also searched for' suggestions (default: dropped) |
| min_reviews | integer | – | Drop hits with fewer than N reviews. Pair with sort_by='most_reviewed' for a trust-weighted result. Applied client-side to organic/paid/suggested. |
| page | integer | – | Page number (1-20) |
| query | string | – | Free-text keyword query (mutually exclusive with category_slug) |
| sort_by | string | – | Server-side sort, except 'most_reviewed' which re-ranks the current page client-side by review count desc (rating tiebreaker). Pair 'most_reviewed' with min_reviews to skip thinly-reviewed items. |
| tld | string | – | Amazon marketplace: com | co.uk | de | fr | es | it |
No output schema declared.
No examples provided.
glim_detect_ai AI Detection ~230
Detect AI-generated text. Scores any text for AI-authorship likelihood and returns an overall verdict (AI / human / mixed) with confidence, the AI/human/AI-assisted fractions, and a segment-by-segment breakdown showing exactly which parts read as AI-written - including per-segment humanizer flags (AI output run through paraphrasing/'humanizer' tools). Use it to verify whether content (comments, articles, profiles) is AI-generated, or to check text before publishing to see which segments would trip AI detectors - revise the flagged segments and re-check. Cost scales with text length: $0.06 per 100 words, rounded up, minimum $0.06. Max input 20,000 characters.
| Name | Type | Req | Description |
|---|---|---|---|
| format | string | – | 'text' (default): compact human-readable report. 'json': structured data incl. per-segment text, scores, and humanizer flags. |
| text | string | yes | Text to analyze, plain text, 50+ characters, max 20,000. Detection reliability improves with length; very short texts return lower-confidence verdicts. |
No output schema declared.
No examples provided.
glim_github_get GitHub Get ~396
Fetch GitHub data from a single ref. GitHub URL or 'owner/repo' shorthand. A repo URL or owner/repo returns metadata + README; /pull/N -> PR (with comments + changed files), /issues/N -> issue, /discussions/N -> discussion (with threaded replies), /blob/<ref>/<path> -> file (raw.githubusercontent.com URLs work too), /tree/<ref>[/<path>] -> file tree (optionally scoped to a subdirectory), /commit/<sha> -> one commit with diff, /commits[/<ref>/<path>] -> history (optionally for one file), /branches, /releases (or /releases/tag/<tag> | /releases/latest -> one release), /topics/<name> -> top repos with that topic (by stars).
| Name | Type | Req | Description |
|---|---|---|---|
| format | string | – | Output encoding. 'text' (default): compact human-readable text, fewer tokens (file returns raw content). 'json': machine-readable JSON. |
| page | integer | – | Page number |
| per_page | integer | – | Results per page |
| ref | string | yes | GitHub URL or 'owner/repo' shorthand. A repo URL or owner/repo returns metadata + README; /pull/N -> PR (with comments + changed files), /issues/N -> issue, /discussions/N -> discussion (with threade… |
No output schema declared.
No examples provided.
glim_github_search GitHub Search ~1,011
Search GitHub repositories, conversations (issues+PRs), discussions, or code, with full GitHub search syntax in the query: qualifiers (repo:, org:/user:, language:, path:, symbol:, content:, is:, stars:, label:, sort:stars), boolean AND/OR/NOT with parentheses, "exact strings", and /regex/. kind='repos': MINIMAL distinctive keywords - the project/library name only ('rtk', 'react query'); every extra word must ALL match and buries the canonical repo - filter with qualifiers, not prose. kind='code': ONE literal code pattern as it appears in files ('useState('), an "exact string", a /regex/, or symbol:name to find definitions, across 2.8M+ public repos; narrow with repo:/language:/path:. Not supported in code search: license:, enterprise:, is:vendored, is:generated. kind='conversations': returns compact previews - use glim_github_get for full content; sort: REPLACES relevance ranking (words match anywhere incl. comments), omit it for best matches. kind='discussions': GitHub Discussions, a SEPARATE index from issues/PRs - a question answered there never appears under conversations, so reach for it when a repo does its Q&A in Discussions; supports repo:/org:/author:/is:answered plus category: (the repo's own category name, needs a repo: scope), up to 10 results per page, no sort:. Set repo='owner/name' to scope to one repository (works with any kind; with repos it routes to conversations). kind is optional - inferred from the query (is:answered/category: -> discussions, is:/label: -> conversations, path:/symbol://regex/ -> code, stars:/topic: -> repos, else repos); a conversations search with no matches is retried as discussions and says so. Returns compact text by default; pass format='json' for full structured data.
| Name | Type | Req | Description |
|---|---|---|---|
| format | string | – | Output format. 'text' (default): compact human-readable previews, fewer tokens. 'json': full structured data for machine parsing. |
| kind | string | – | What to search: 'repos', 'conversations' (issues+PRs), 'discussions' (GitHub Discussions - a separate index from issues/PRs), or 'code' (literal/regex/symbol search across 2.8M+ public GitHub repos).… |
| page | integer | – | Page number |
| per_page | integer | – | Results per page |
| query | string | yes | Search query in full GitHub search syntax: qualifiers (repo:owner/name, org:/user:, language:, path: with globs, symbol:, content:, is:, stars:>N, label:, sort:stars), boolean AND/OR/NOT with parenth… |
| repo | string | – | Scope to one repository. Accepts 'owner/name', a github.com URL, or a partial 'owner/' (code). Works with any kind; setting it with kind=repos routes the search to conversations, since repo-name sear… |
No output schema declared.
No examples provided.
glim_reddit_get Reddit Get ~255
Fetch a Reddit post, subreddit, or user by ref. Posts return comments; subreddits and users return profile metadata plus recent activity.
| Name | Type | Req | Description |
|---|---|---|---|
| comment_depth | integer | – | Max nesting depth (post refs only) |
| comment_limit | integer | – | Max comments (post refs only) |
| comment_sort | string | – | Comment sort. Post refs only: subreddit/user listings always hydrate a fixed 2 top-level comments sorted by top. |
| cursor | string | – | Pagination cursor from a prior subreddit response's next_cursor |
| format | string | – | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': full structured data for machine parsing. |
| include_comments | boolean | – | Include recent comments for user refs |
| include_posts | boolean | – | Include recent posts for user refs |
| limit | integer | – | Max subreddit posts (1-10), each with full content + top comments |
| ref | string | yes | Post ID or URL, subreddit ref (r/programming or reddit.com/r/programming), or user ref (u/spez or reddit.com/user/spez) |
| sort | string | – | Listing post sort |
| time | string | – | Listing time range |
No output schema declared.
No examples provided.
glim_reddit_search Reddit Search ~289
Search Reddit posts. Each result comes with full post content and its top comments, so a single search usually answers the question without follow-up. Compact human-readable text by default; pass format='json' for full structured data. Use glim_reddit_get(ref) for a single post's complete comment tree. Page with cursor (response gives next_cursor when more exist). See docs://reddit-search.
| Name | Type | Req | Description |
|---|---|---|---|
| cursor | string | – | Pagination cursor from a prior response's next_cursor |
| end_date | string | – | Only posts before this date (YYYY-MM-DD) |
| format | string | – | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': full structured data for machine parsing. |
| limit | integer | – | Max posts (1-10), each with full content + top comments |
| query | string | yes | Search query (e.g. 'subreddit:programming machine learning') |
| sort | string | – | Sort order. Keep 'relevance' (default) for question or topic queries - it ranks by how well posts match your query. 'top'/'hot' rank by score/recency and largely ignore the query text, so use them on… |
| start_date | string | – | Only posts on or after this date (YYYY-MM-DD) |
| time | string | – | Time range |
No output schema declared.
No examples provided.
glim_telegram_get Telegram Get ~325
Fetch a public Telegram channel or post - no account or API key involved. Channel refs (@handle, handle, t.me URL) return channel info + recent posts newest-first with views, reactions, media, polls, and link previews; pass query to search within the channel's full history, and page older posts with before=<next_cursor>. Post refs (t.me/<channel>/<id>) return that post plus its most recent discussion comments. Media URLs are Telegram CDN links that expire within hours - fetch promptly, never store. Only channels with a public web preview work (most public channels); private channels and groups are not accessible.
| Name | Type | Req | Description |
|---|---|---|---|
| after | string | – | Return posts newer than this message id |
| before | string | – | Return posts older than this message id (from next_cursor) |
| comment | string | – | Post refs: center the comment window on this comment id |
| format | string | – | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': full structured data for machine parsing. |
| include_comments | boolean | – | Post refs: include discussion comments (Telegram serves a small window of the most recent; walk older ones via comment=<oldest returned id>) |
| limit | integer | – | Max posts for channel refs (1-100) |
| query | string | – | Search within the channel's full history (channel refs only) |
| ref | string | yes | Public channel (@handle, handle, or t.me/<channel> URL) or post (t.me/<channel>/<id> or '<channel>/<id>') |
No output schema declared.
No examples provided.
glim_telegram_search Telegram Search ~171
Search Telegram: discovers public channels by name/topic (directory lookup) and finds indexed public post/channel pages (semantic web index scoped to t.me). Telegram has no global full-text search, so treat results as discovery: find the right channel here, then use glim_telegram_get(ref=<handle>) for its live posts or glim_telegram_get(ref, query=...) to search within that channel's full history.
| Name | Type | Req | Description |
|---|---|---|---|
| format | string | – | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': full structured data for machine parsing. |
| kind | string | – | 'channels': channel directory lookup. 'posts': indexed t.me post pages. 'all' (default): both. |
| query | string | yes | Search query (topic, channel name, keyword) |
No output schema declared.
No examples provided.
glim_twitter_get Fetch Tweet or User ~329
Fetch a tweet or a user from one reference. A tweet URL (incl. handle-less /i/status/<id>) returns the tweet with full thread context, parent, and optional replies/quotes; a profile URL (https://x.com/<handle>) returns the user with recent tweets. Prefer full URLs - if you only have a numeric id, pass it as a quoted string. Returns a compact human-readable view by default; pass format='json' for full structured data.
| Name | Type | Req | Description |
|---|---|---|---|
| cursor | string | – | Profile refs only: pagination cursor from next_cursor |
| expand_urls | boolean | – | When true, auto-crawl entity URLs and attach crawled_content to tweets. Off by default: responses can grow by up to 4KB per expanded URL. Use glim_web_fetch(url) for targeted crawls instead. |
| format | string | – | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': full structured data for machine parsing. |
| include | array | – | Tweet refs only: also fetch 'replies' and/or 'quotes' |
| include_mentions | boolean | – | Profile refs only: include the mentions timeline |
| include_replies | boolean | – | Profile refs only: include replies in the timeline |
| ref | string | yes | Tweet URL or profile URL. A tweet URL (incl. /i/status/<id>) returns the tweet + thread; a profile URL (https://x.com/<handle>) returns the user + recent tweets. Prefer full URLs - if you only have a… |
No output schema declared.
No examples provided.
glim_twitter_search Twitter Search ~367
Search Twitter/X. Returns a compact human-readable list by default; pass format='json' for full structured data. Use glim_twitter_get(ref) for full thread context. Use docs://search-operators for reference.
| Name | Type | Req | Description |
|---|---|---|---|
| cursor | string | – | Pagination cursor from previous search. Ranking is strongest on page 1 - paged results under sort:'top' trend toward recency (upstream behavior). |
| end_date | string | – | Only tweets before this time. YYYY-MM-DD (inclusive through end of day UTC) or ISO 8601 datetime with Z/offset (e.g. 2026-04-13T14:30:00Z) |
| expand_urls | boolean | – | When true, auto-crawl entity URLs and attach crawled_content to tweets. Off by default: responses can grow by up to 4KB per expanded URL. Use glim_web_fetch(url) for targeted crawls instead. |
| format | string | – | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': full structured data for machine parsing. |
| query | string | yes | Search query with operators (e.g. 'from:elonmusk AI min_faves:100 within_time:7d') |
| sort | string | – | Sort by relevance or recency: "top" (most engaged tweets matching the query - best for "what's the conversation about X") or "latest" (newest first - best for monitoring/recency). Default: "top". |
| start_date | string | – | Only tweets on or after this time. YYYY-MM-DD (UTC midnight) or ISO 8601 datetime with Z/offset (e.g. 2026-04-13T14:30:00Z) |
No output schema declared.
No examples provided.
glim_web_fetch Web Fetch ~289
Fetch a single web page and extract clean content. Auto-tier server-side: handles SSR (Next.js, Nuxt, TikTok, Pinterest, YouTube), SPA shells, PDFs, paywall detection, residential-proxy escalation, and stealth profiles for TikTok / Instagram / Pinterest / YouTube. Returns clean markdown (default) with a YAML frontmatter header (url, outcome, total_chars). Read 'outcome' to classify the result (success | teaser | thin_content | paywall | bot_challenge | consent_wall | login_wall | rate_limited | timeout | transient_upstream | unsupported_target | not_found | error). Large pages (>80k chars) are truncated inline with truncated_chars + a download_full_url to the complete extraction (expires ~1h). Permanently unsupported (outcome=unsupported_target, cost=0 upstream): Bluesky search, Instagram post/reel and tag/explore pages (profiles work), Pinterest search, g2.com, Truth Social, Xiaohongshu. Threads and Instagram profile pages ARE supported.
| Name | Type | Req | Description |
|---|---|---|---|
| format | string | – | Output format. 'markdown' (default) clean article text; 'html' raw cleaned HTML; 'json' the structured SSR blob (TikTok / Pinterest / YouTube) instead of article text. |
| selector | string | – | CSS selector to scope extraction |
| url | string | yes | URL to fetch |
No output schema declared.
No examples provided.
glim_web_search Web Search ~268
Semantic web search powered by Exa. Returns titles, URLs, and the top query-relevant excerpt per result. Compact text by default; pass format='json' for full structured data incl. all excerpts per result. Use glim_web_fetch(url) for full page content. Matching is semantic, so a query with no real match still returns ten nearest-neighbour results rather than zero - judge relevance from the excerpts, not from the result count.
| Name | Type | Req | Description |
|---|---|---|---|
| exclude_domains | array | – | Exclude results from these domains. Useful for filtering noisy aggregators or SEO farms when you've seen them dominate results (e.g. ['pinterest.com', 'quora.com']). |
| format | string | – | Output format. 'text' (default): compact human-readable list, fewer tokens. 'json': the same results as structured data (title, url, snippet, score, published_date, author). |
| include_domains | array | – | Restrict results to these domains (e.g. ['arxiv.org']) |
| published_within_days | integer | – | Restrict to results published within the last N days. Skip this for broad queries - it excludes pages without publish-date metadata. Common values: 1, 7, 30, 365. |
| query | string | yes | Search query |
No output schema declared.
No examples provided.
glim_youtube_get YouTube Transcript ~392
Fetch a YouTube video transcript from a video URL or 11-char id. The transcript is cleaned server-side: deduplicated, tags/HTML stripped, with coarse [m:ss] timestamps - roughly a tenth the size of the raw captions. Default format='text' returns it inline (when it fits ~40K chars / ~10K tokens) so a single call gives you the text directly; long-form videos fall back to a download_url note. Pass format='json' for the same transcript plus transcript metadata (video_id, canonical url, language, origin, size) and a presigned download_url - for batch/programmatic use. Default origin='uploader_provided' (human captions); falls back to 'auto_generated' automatically if missing (counts as 2 upstream calls). Cached 7 days server-side.
| Name | Type | Req | Description |
|---|---|---|---|
| format | string | – | Output format. 'text' (default): the cleaned transcript inline as plain text (omitted with a download_url note when it exceeds the ~40K-char inline cap). 'json': the same cleaned transcript plus tran… |
| language_code | string | – | ISO 639-1 language code (e.g. 'en', 'de', 'fr') |
| origin | string | – | 'uploader_provided' for human captions (default), 'auto_generated' for YouTube auto-captions. |
| ref | string | yes | YouTube video URL or 11-char video id (e.g. https://youtu.be/dQw4w9WgXcQ, https://www.youtube.com/watch?v=dQw4w9WgXcQ, or dQw4w9WgXcQ) |
No output schema declared.
No examples provided.
What is the glim.sh MCP server?
glim.sh is an MCP server listed in the public MCP registry as sh.glim/glim. Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack. This page covers its hosted endpoint (https://glim.sh/mcp).
Is the glim.sh MCP server safe to use?
glim.sh scores 88 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the glim.sh MCP server expose?
glim.sh exposes 14 tools: glim_twitter_search, glim_twitter_get, glim_reddit_search, glim_reddit_get, glim_web_search, and 9 more. Their descriptions and schemas cost roughly 5,016 tokens of context every time the server is loaded.
Does the glim.sh MCP server require authentication?
No. We connected to glim.sh without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the glim.sh MCP server still maintained?
glim.sh is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.