glim.sh
Server Details
Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.5/5 across 11 of 11 tools scored. Lowest: 3.9/5.
Each tool has a distinct domain prefix (amazon, github, reddit, twitter, web, youtube) and action (get, search, fetch), making their purposes immediately clear. No two tools overlap in functionality.
All tools follow a consistent pattern: glim_<source>_<action> (e.g., glim_amazon_get, glim_web_search). Snake_case is used uniformly, and the naming is predictable and clear.
11 tools cover 6 distinct data sources, each with retrieval (get) and discovery (search) operations. The count is well-scoped for the server's purpose without being excessive or insufficient.
The tool surface provides complete CRUD-like coverage for information retrieval across all supported platforms. Each source has both fetch and search capabilities, with no obvious gaps for the stated purpose of data access.
Available Tools
11 toolsglim_amazon_getAmazon ProductARead-onlyIdempotentInspect
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/ 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 | Required | Description | Default |
|---|---|---|---|
| ref | 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 needed; tracking junk in the URL is ignored. A bare ASIN is rejected: it is ambiguous across marketplaces. | |
| format | No | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': full structured data (offers[], images, variants). | text |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and no destructiveness. Description adds context about marketplace detection from URL host, return fields, and format options. However, it doesn't mention potential rate limits or the fact that fetching may also respect request headers like user-agent, which is a minor gap. Overall, it provides moderate additional transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is a single paragraph but well-organized: first sentence states core purpose, second details return info, third explains format options. No fluff, every sentence adds value. Appropriate length for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given two parameters, full annotations, and no output schema, the description covers everything an agent needs: input constraints, output summary, format options, and marketplace handling. It is self-contained and leaves no obvious gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions. The description adds crucial detail: 'ref' must be a full URL (not ASIN) and carries marketplace info; 'format' defaults to 'text' and 'json' gives full structured data. This enriches the schema without redundancy.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it fetches Amazon product details from a full product URL, distinguishing it from sibling tools like glim_amazon_search which is for searching. It specifies the verb 'Fetch' and resource 'Amazon product detail', making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: pass a full URL from 'glim_amazon_search' or any '/dp/<ASIN>' page. It also provides exclusions: bare ASIN is rejected because it's ambiguous across marketplaces. This gives clear guidance on proper usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
glim_amazon_searchAmazon SearchARead-onlyIdempotentInspect
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 | Required | Description | Default |
|---|---|---|---|
| tld | No | Amazon marketplace: com | co.uk | de | fr | es | it | com |
| page | No | Page number (1-20) | |
| query | No | Free-text keyword query (mutually exclusive with category_slug) | |
| format | No | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': full structured data (offers[], images, variants). | text |
| sort_by | No | 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. | |
| min_reviews | No | 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. | |
| include_paid | No | Include sponsored ad results (default: dropped) | |
| category_slug | No | Amazon bestsellers category slug, e.g. 'electronics' (.com), 'elektronik' (.de), 'electronique' (.fr). Invalid slugs return 'not_found' - retry with a correct slug. | |
| include_suggested | No | Include 'people also searched for' suggestions (default: dropped) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, openWorldHint=true, idempotentHint=true, destructiveHint=false. Description adds that sort_by 'most_reviewed' re-ranks client-side, explains default dropping of sponsored/suggested, and mentions error handling for invalid slugs. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is moderately long but front-loaded with the critical rule of mutual exclusivity. Every sentence adds value; no tautology. Minor redundancy in listing TLDs which are already in tld enum, but acceptable for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers all important aspects: search scope, output fields, pricing details, sort options, filtering via min_reviews, format choices, drill-down direction, error handling. Despite 9 parameters and no output schema, the description is comprehensive enough for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, baseline 3. Description adds significant meaning: mutual exclusivity of query and category_slug, client-side re-ranking behavior for most_reviewed, pairing min_reviews with sort_by, and error handling for invalid slugs. Goes well beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it searches Amazon across multiple TLDs, returns ranked hits with specific fields (price, ratings, ASINs). Differentiates from sibling glim_amazon_get by noting drill-down capability. Verb+resource is specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states 'Pass exactly ONE of {query} or {category_slug}.' Guides on using sort_by='most_reviewed' with min_reviews for trust-weighted re-rank. References glim_amazon_get for drill-down. Clear when-to-use and alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
glim_github_getGitHub GetARead-onlyIdempotentInspect
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, /blob// -> file (raw.githubusercontent.com URLs work too), /tree/[/] -> file tree (optionally scoped to a subdirectory), /commit/ -> one commit with diff, /commits -> history, /branches, /releases.
| Name | Required | Description | Default |
|---|---|---|---|
| ref | 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, /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 -> history, /branches, /releases. | |
| page | No | Page number | |
| format | No | Output encoding. 'text' (default): compact human-readable text, fewer tokens (file returns raw content). 'json': machine-readable JSON. | text |
| per_page | No | Results per page |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds detailed behavioral context: how different URL patterns map to different data (metadata+README, PR, issue, file tree, commit, etc.), format options, and pagination support. It does not mention rate limits or authentication, but for a read-only tool with annotations, it is sufficiently transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that efficiently packs tool purpose and many URL pattern behaviors. It front-loads the main verb 'Fetch GitHub data' and list patterns. Could be slightly more structured (e.g., bullet points), but the information density warrants a high score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 100% schema coverage, good annotations, and no output schema, the description fully covers the tool's capabilities: it enumerates all major GitHub ref patterns (pull, issue, blob, tree, commit, commits, branches, releases), explains pagination, and format options. The agent can correctly invoke this tool for various GitHub endpoints.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (all 4 parameters described in schema), so baseline is 3. The description adds meaning beyond schema: 'ref' parameter behavior is elaborated (which paths return what, support for raw.githubusercontent.com). 'format' parameter gets clear explanation of output encoding differences. The description compensates for schema's brief descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Fetch GitHub data from a single ref', specifying the verb 'Fetch' and the resource 'GitHub data'. It distinguishes from sibling tools by platform (GitHub vs Amazon, Reddit, etc.) and from glim_github_search by focusing on a single ref rather than search queries.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for fetching data from a GitHub ref, but it does not explicitly state when to use this tool over its sibling glim_github_search or alternatives. It lacks guidance on prerequisites or context where this tool is preferred, relying on the tool name and context of sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
glim_github_searchGitHub SearchARead-onlyIdempotentInspect
Search GitHub repositories, conversations (issues+PRs), 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. 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:/label: -> conversations, path:/symbol://regex/ -> code, stars:/topic: -> repos, else repos). Returns compact text by default; pass format='json' for full structured data.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | What to search: 'repos', 'conversations' (issues+PRs), or 'code' (literal/regex/symbol search across 2.8M+ public GitHub repos). Optional - inferred from the query: is:/label:/author: implies conversations, path:/symbol:/content://regex/ implies code, stars:/topic:/in:readme implies repos, otherwise repos. type:code / type:repos in the query also works. | |
| page | No | Page number | |
| repo | No | 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 search can't scope to one repo. Equivalent to a repo: qualifier in the query (if both are given they must match). | |
| query | 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 parentheses, "exact strings", and /regex/. kind=repos: minimal distinctive keywords - the project/library name (GOOD: 'rtk', 'react query'; BAD: 'rtk rust token killer' - every extra word must ALL match and buries the real 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 for definitions; narrow with repo:/language:/path:, not extra words. kind=conversations: keywords plus filters (is:issue, label:bug). Caution: sort: REPLACES relevance ranking (sort:reactions = most-popular thread mentioning the words anywhere, incl. comments) - omit sort: for best-match. Not supported in code search: license:, enterprise:, is:vendored, is:generated. | |
| format | No | Output format. 'text' (default): compact human-readable previews, fewer tokens. 'json': full structured data for machine parsing. | text |
| per_page | No | Results per page |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, openWorldHint, idempotentHint, destructiveHint false. The description adds substantial behavioral context: kind inference, the effect of setting repo with kind=repos (routes to conversations), the impact of sort on relevance ranking, and unsupported qualifiers in code search. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively long but every sentence adds necessary detail. Key points are front-loaded (the main purpose and search kinds). Minor redundancy (some qualifier lists repeated) could be trimmed slightly, but overall it is efficient for the complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters (1 required), no output schema, and complex search syntax, the description fully covers query construction per kind, kind inference, repo scoping, pagination limits, output format, and crucial caveats (sort ranking behavior, unsupported code search features). No gaps remain for an agent to safely and effectively invoke this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds significant value beyond the schema. For query, it details GitHub search syntax per kind. For kind, it explains inference rules. For repo, it describes accepted formats (owner/name, URL, partial owner/) and its interaction with the search kind. For format, it clarifies 'text' vs 'json' output differences. These enrich the parameter understanding substantially.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches GitHub repositories, conversations (issues+PRs), or code, using full GitHub search syntax. It distinguishes from sibling tools (e.g., glim_web_search) by specifically targeting GitHub, and the three search kinds are explicitly enumerated and differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides extensive when-to-use guidance: for each kind (repos, code, conversations) it explains query formation, filters, and limitations. It explicitly warns against using sort for best relevance, and suggests glim_github_get for full content when kind='conversations'. It also explains kind inference rules when the parameter is omitted, and the repo parameter behavior with different kinds.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
glim_reddit_getReddit GetARead-onlyIdempotentInspect
Fetch a Reddit post, subreddit, or user by ref. Posts return comments; subreddits and users return profile metadata plus recent activity.
| Name | Required | Description | Default |
|---|---|---|---|
| ref | 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 | No | Listing post sort | hot |
| time | No | Listing time range | day |
| limit | No | Max subreddit posts (1-10), each with full content + top comments | |
| cursor | No | Pagination cursor from a prior subreddit response's next_cursor | |
| format | No | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': full structured data for machine parsing. | text |
| comment_sort | No | Comment sort | confidence |
| comment_depth | No | Max nesting depth | |
| comment_limit | No | Max comments | |
| include_posts | No | Include recent posts for user refs | |
| include_comments | No | Include recent comments for user refs |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark read-only, non-destructive. Description adds context: posts return comments, subreddits/users return metadata and recent activity, and mentions output format impact on tokens. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with purpose. Efficient but could incorporate a bit more guidance (e.g., pagination mention) without bloating. Still very concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 11 parameters and no output schema, the description covers core returns per entity type. Lacks mention of pagination cursor behavior, but schema covers it. Adequate for a get tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, with each parameter described. The description does not add meaning beyond the schema; it summarizes high-level behavior. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the verb 'Fetch' and the resources: Reddit post, subreddit, or user by ref. Distinguishes from sibling 'glim_reddit_search' by focusing on direct ref retrieval rather than searching.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage for fetching specific refs, but no explicit guidance on when to use this versus alternatives like 'glim_reddit_search' or 'glim_web_fetch'. Lacks when-not-to-use or alternative recommendations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
glim_reddit_searchReddit SearchARead-onlyIdempotentInspect
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 | Required | Description | Default |
|---|---|---|---|
| sort | No | 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 only to browse what's popular in a subreddit. | relevance |
| time | No | Time range | all |
| limit | No | Max posts (1-10), each with full content + top comments | |
| query | Yes | Search query (e.g. 'subreddit:programming machine learning') | |
| cursor | No | Pagination cursor from a prior response's next_cursor | |
| format | No | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': full structured data for machine parsing. | text |
| end_date | No | Only posts before this date (YYYY-MM-DD) | |
| start_date | No | Only posts on or after this date (YYYY-MM-DD) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that responses are compact human-readable text by default with json option, that each result includes top comments, and that pagination uses next_cursor. No contradiction with annotations (readOnly, openWorld, idempotent, non-destructive).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences front-loaded with purpose, then key features, sibling reference, pagination, and docs link. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 parameters, pagination, multiple formats, and sibling tool, the description covers purpose, usage, output format, pagination mechanism, and date range. No output schema but return values are adequately described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all 8 parameters with descriptions (100% coverage). The description adds value by explaining the rich result structure (full content + top comments) and that format='text' saves tokens, going beyond schema details.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Search Reddit posts' and explains that results include full content and top comments, distinguishing it from sibling glim_reddit_get for a single post's comment tree.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly suggests when to use glim_reddit_get instead, advises on sort orders (keep 'relevance' for queries, use 'top'/'hot' for browsing), and explains pagination with cursor.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
glim_twitter_getFetch Tweet or UserARead-onlyIdempotentInspect
Fetch a tweet or a user from one reference. A tweet URL (incl. handle-less /i/status/) returns the tweet with full thread context, parent, and optional replies/quotes; a profile URL (https://x.com/) 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 | Required | Description | Default |
|---|---|---|---|
| ref | 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 numeric id, pass it as a quoted string. | |
| cursor | No | Profile refs only: pagination cursor from next_cursor | |
| format | No | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': full structured data for machine parsing. | text |
| include | No | Tweet refs only: also fetch 'replies' and/or 'quotes' | |
| expand_urls | No | 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. | |
| include_replies | No | Profile refs only: include replies in the timeline | |
| include_mentions | No | Profile refs only: include the mentions timeline |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, idempotent, and non-destructive behavior. The description adds rich behavioral context: default output is compact human-readable, format='json' for structured data, expand_urls warning about size, pagination via cursor, and inclusion filters for replies/quotes. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with core purpose, followed by specific usage instructions and format options. No wasted words; every sentence contributes essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers main functionality, input types, output formats, and a key caveat (expand_urls size impact). However, it does not describe the structure of the compact view or the shape of returned data, which would be helpful given the lack of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds value by explaining the two types of 'ref' and what they return, and why expand_urls is off by default. However, most parameter details are already adequately covered in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it fetches a tweet or user from a reference, distinguishing between tweet URLs (returning tweet with thread context) and profile URLs (returning user with recent tweets). This specificity and differentiation from sibling tools like glim_twitter_search makes purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear guidance on using full URLs over numeric ids and how to handle ids as quoted strings. However, it does not explicitly exclude usage patterns like searching or compare directly with siblings, leaving some implicit context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
glim_twitter_searchTwitter SearchARead-onlyIdempotentInspect
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 | Required | Description | Default |
|---|---|---|---|
| sort | No | 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". | |
| query | Yes | Search query with operators (e.g. 'from:elonmusk AI min_faves:100 within_time:7d') | |
| cursor | No | Pagination cursor from previous search | |
| format | No | Output format. 'text' (default): compact human-readable view, fewer tokens. 'json': full structured data for machine parsing. | text |
| end_date | No | 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) | |
| start_date | No | 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) | |
| expand_urls | No | 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. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only, idempotent behavior. The description adds that the default output is a compact human-readable list and that JSON format is available. It also links to related tools and docs, providing useful behavioral context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, each serving a distinct purpose: state function, explain output format and alternatives, and point to documentation. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 7 parameters all documented in schema, no output schema, and strong annotations, the description covers key usage aspects: output format choice, related tool linkage, and documentation reference. It could mention pagination slightly, but the cursor parameter is in schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description doesn't need to add much. It adds context about default format and the ability to use operators, but doesn't explain parameter syntax beyond what the schema already provides. Baseline 3 with minor increment for the format hint.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it searches Twitter/X and differentiates from sibling glim_twitter_get by noting that tool is for full thread context. The verb 'Search' and resource 'Twitter/X' are specific, and it also mentions using documented operators.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly suggests using glim_twitter_get for full thread context and references docs for operators, providing clear alternatives. It doesn't explicitly state when not to use this tool, but the context is implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
glim_web_fetchWeb FetchARead-onlyIdempotentInspect
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 tags / Pinterest / Threads-search / 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 searchPosts, IG profile/post pages, Threads profile/post pages, Truth Social, Xiaohongshu.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | URL to fetch | |
| format | No | Output format. 'markdown' (default) clean article text; 'html' raw cleaned HTML; 'json' the structured SSR blob (TikTok / Pinterest / YouTube) instead of article text. | markdown |
| selector | No | CSS selector to scope extraction |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide readOnlyHint, openWorldHint, idempotentHint, and non-destructive. The description greatly expands on behavioral traits: server-side auto-tiering, handling of various site types, paywall detection, outcome values, truncation, download URL, and list of unsupported targets. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively long but well-organized, front-loading the core purpose and then detailing features. Every sentence contributes useful information; the length is justified by the complexity of the tool's behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without an output schema, the description fully explains return values: markdown with YAML frontmatter (url, outcome, total_chars), outcome classification, truncation behavior with download_full_url, and unsupported cases. This provides complete context for AI consumption.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All 3 parameters have schema descriptions (100% coverage). The description adds value by contextualizing the 'format' parameter (e.g., 'markdown' for clean article text, 'json' for SSR blob). This goes beyond the schema but schema already covers the basics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Fetch a single web page and extract clean content', providing a specific verb and resource. It differentiates from sibling tools (platform-specific gets and search) by focusing on general web fetching with advanced capabilities like SSR handling and paywall detection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides extensive details on behavior (outcome classification, truncation, unsupported targets) but lacks explicit guidance on when to use this tool versus alternatives like glim_web_search. The context is clear enough for an AI to infer usage, but direct comparison is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
glim_web_searchWeb SearchARead-onlyIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query | |
| format | No | Output format. 'text' (default): compact human-readable list, fewer tokens. 'json': full structured data incl. the highlights array per result. | text |
| exclude_domains | No | 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']). | |
| include_domains | No | Restrict results to these domains (e.g. ['arxiv.org']) | |
| published_within_days | No | 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. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, openWorld, idempotent, and non-destructive behavior. The description adds useful context on default compact text output and the option for full JSON data, and clarifies that return includes only top excerpt per result by default.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two terse sentences plus a cross-reference to sibling tool. Every word adds value, no redundancy. Front-loaded with the core action and return type.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description adequately explains what results contain (titles, URLs, excerpts) and format options. Missing details like result count or pagination, but acceptable for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions. The description adds value by explaining the practical difference between text and JSON formats beyond the schema's enum definition, and gives usage context for exclude_domains (noisy aggregators).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: semantic web search returning titles, URLs, and excerpts. It distinguishes from sibling tools like glim_web_fetch for full page content and mentions format options for structured data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly suggests using glim_web_fetch for full page content, which guides when not to use this tool. Does not elaborate on when to prefer this over other domain-specific search siblings, but the sibling names imply that this is for general web searches.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
glim_youtube_getYouTube SubtitlesARead-onlyIdempotentInspect
Fetch a YouTube video transcript/subtitles from a video URL or 11-char id. Default format='text' returns the transcript inline (when it fits ~80K chars / ~20K tokens) so a single call gives you the text directly; long-form videos fall back to a download_url note. Pass format='json' for structured metadata + a presigned download_url (no inline transcript) - 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 | Required | Description | Default |
|---|---|---|---|
| ref | Yes | YouTube video URL or 11-char video id (e.g. https://youtu.be/dQw4w9WgXcQ, https://www.youtube.com/watch?v=dQw4w9WgXcQ, or dQw4w9WgXcQ) | |
| format | Yes | Output format. 'text' (default): the transcript inline as plain text (omitted with a download_url note when it exceeds the ~80K-char inline cap). 'json': structured metadata + a presigned download_url for the WebVTT file, with no inline transcript - for batch/programmatic use. | text |
| origin | No | 'uploader_provided' for human captions (default), 'auto_generated' for YouTube auto-captions. | uploader_provided |
| language_code | No | ISO 639-1 language code (e.g. 'en', 'de', 'fr') | en |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint, idempotentHint, etc.), the description adds valuable behavioral details: fallback from uploader_provided to auto_generated (costs 2 upstream calls), 7-day server-side caching, and inline transcript size limits. There is no contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and informative, front-loading the main action and then adding key details. It is slightly dense but not overly long, earning its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description explains return behavior (inline transcript, download_url note, structured metadata), caching, and upstream call implications. It provides sufficient context for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed descriptions. The tool description adds extra context on format behavior (inline vs download_url) and origin fallback, which enhances understanding beyond the schema alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches YouTube video transcript/subtitles from a URL or ID. It uses a specific verb 'Fetch' and resource 'transcript/subtitles', and distinguishes itself from siblings by focusing on YouTube content.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides guidance on when to use format='text' vs 'json', explains the inline transcript limit and fallback behavior for origin. While it doesn't explicitly say when not to use it, the context with sibling tools (different platforms) makes usage clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!