ScrapeMole Social
Server Details
Pay-per-call x402 Telegram channels, Mastodon tags, Bluesky, Hacker News, Lobsters data.
- Status
- Healthy
- Uptime
- 100.0% over 24 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 8 tools
Each tool targets a distinct platform plus resource/action (Bluesky feed/profile/search, HN search/thread, Lobsters hot, Mastodon tag, Telegram channel), so selection is nearly unambiguous. The only adjacent pair, bluesky_feed vs bluesky_search, is explicitly separated by description (a specific account's recent posts vs query/mention search), so an agent can tell them apart.
The set follows a steady platform_resource pattern (bluesky_feed, hn_thread, mastodon_tag, telegram_channel). Minor deviation: 'hn' abbreviates Hacker News while other platforms are spelled out, and 'hot' is a page label rather than an action, but the pattern remains readable and predictable.
Eight tools is well-scoped for a multi-platform social/news scraping service: roughly one to three tools per supported platform. No tool is redundant and none feels like filler.
Core social-listening operations are covered across five platforms (feed/profile/search, thread reading, tag monitoring, channel monitoring). Gaps are uneven coverage rather than dead ends: Lobsters has only a hot/newest listing with no search or comment reading, and Mastodon has only hashtag search with no account timeline; agents can partially work around these but not fully.
Available Tools
8 toolsbluesky_feedScrapeMole Social: Telegram, Bluesky, Mastodon, Hacker News and Lobsters data for AI agents: Bluesky author feedARead-onlyIdempotentInspect
Use to monitor what a specific Bluesky account has posted recently: returns up to 50 posts (original posts by default, optionally including replies/reposts) with text, time, likes/reposts/replies, outbound links and URLs. Cursor pagination supported. Paid tool: x402 USDC on Base, $0.002 per successful call; call without payment to receive the PaymentRequired object.
| Name | Required | Description | Default |
|---|---|---|---|
| actor | Yes | Handle or DID. | |
| limit | No | Max posts (1-50). | 20 |
| cursor | No | Pagination cursor. | |
| filter | No | "posts" (no replies), "replies" (posts and replies) or "all" (incl. reposts). | posts |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With annotations already covering read/idempotent/open-world safety, the description still adds substantial non-obvious behavior: cost model (x402 USDC on Base, $0.002 per successful call), the payment-required failure path, the 50-item ceiling, and cursor pagination. These are exactly the traits an agent cannot infer from the schema or 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?
Purpose is front-loaded and the payment caveat is isolated in its own sentence; every clause carries information. The middle clause enumerating returned fields is dense, but it is informative rather than padded.
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?
No output schema exists, yet the description lists the fields returned, the maximum record count, and how pagination and payment errors behave, so an agent can plan both the call and the response handling. Nothing material is missing for a read-only feed 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%, so the 3-baseline applies, but the description does add interpretive value: it explains that the result set contains original posts by default and that replies/reposts are opt-in via the filter, framing filter choice in terms of returned content. The limit ceiling and cursor behavior largely restate schema text.
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?
States a specific verb and resource: 'monitor what a specific Bluesky account has posted recently', plus the returned payload shape (up to 50 posts with text, time, engagement counts, links). This clearly separates it from bluesky_search (keyword search) and bluesky_profile (account metadata) even though those siblings are never named.
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?
Gives a clear use case ('monitor what a specific account has posted recently') and practical invocation guidance for the paid flow ('call without payment to receive the PaymentRequired object'). It stops short of naming alternatives such as bluesky_search for keyword-based discovery, so there is context but no explicit exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bluesky_profileScrapeMole Social: Telegram, Bluesky, Mastodon, Hacker News and Lobsters data for AI agents: Bluesky profileARead-onlyIdempotentInspect
Use to look up or verify a Bluesky account: returns DID, handle, display name, description (bio), follower/following/post counts, account creation time, avatar and banner URLs, and labels. Public profile data only. Paid tool: x402 USDC on Base, $0.001 per successful call; call without payment to receive the PaymentRequired object.
| Name | Required | Description | Default |
|---|---|---|---|
| actor | Yes | Handle (e.g. bsky.app) or DID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety profile (readOnly, idempotent, openWorld), but the description goes well beyond: it scopes data to 'Public profile data only', discloses the paid x402/USDC-on-Base model at $0.001 per successful call, and — critically — tells the agent that an unpaid call returns a PaymentRequired object rather than an error. That is exactly the kind of non-obvious runtime behavior an agent needs.
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 purpose and returned fields are front-loaded, followed by the access constraint and the payment mechanics. Every sentence carries distinct information with no repetition of schema or annotations.
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 no output schema, the description responsibly enumerates the return fields; with one simple parameter it explains the input; and it discloses access limits and payment flow. An agent has everything needed to call it correctly and interpret the response.
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% and the single 'actor' parameter is already documented as 'Handle (e.g. bsky.app) or DID'. The description adds no format or resolution detail beyond that, so the baseline 3 applies.
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?
States a specific verb+resource ('look up or verify a Bluesky account') and enumerates the exact payload (DID, handle, display name, bio, counts, creation time, avatar/banner, labels). This clearly separates it from siblings like bluesky_feed and bluesky_search, which return different resource types.
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?
'Use to look up or verify a Bluesky account' gives a clear triggering context, and the single-handle/DID input makes its niche obvious relative to feed and search tools. It stops short of naming which sibling to use for the alternative cases (e.g. searching posts), so no explicit exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
bluesky_searchScrapeMole Social: Telegram, Bluesky, Mastodon, Hacker News and Lobsters data for AI agents: Bluesky post searchARead-onlyIdempotentInspect
Use for real-time social listening, brand/topic mentions and sentiment research on Bluesky: returns up to 50 public posts matching a query (supports from:handle, #tags, since:/until: dates via Bluesky search syntax) with text, author handle/display name, createdAt, engagement counts, outbound links and a bsky.app URL. Optional cursor for pagination. Paid tool: x402 USDC on Base, $0.002 per successful call; call without payment to receive the PaymentRequired object.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query (Bluesky search syntax). | |
| sort | No | "latest" or "top". | latest |
| limit | No | Max posts (1-50). | 25 |
| cursor | No | Pagination cursor from a previous response. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/openWorld, and the description adds substantial non-obvious behavior: it is a paid tool billed $0.002 USDC on Base per successful call and that an unpaid call returns a PaymentRequired object. It also enumerates the returned fields, so the agent knows both the cost model and the payload shape.
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?
A single dense paragraph, but front-loaded with the purpose and use case before the mechanical details. Every clause carries information (query syntax, return fields, pagination, payment), though the sentence runs long and could be split for scanability.
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 no output schema, the description carries the return-value burden and does so by listing text, author handle/display name, createdAt, engagement counts, links and a bsky.app URL. Payment mechanics and pagination are also covered, leaving no practical gap for correct invocation.
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 baseline is 3, but the description meaningfully enriches semantics by spelling out the supported query syntax (from:handle, #tags, since:/until:) that the schema only gestures at as 'Bluesky search syntax'. It also clarifies that cursor is for pagination.
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?
States a specific verb and resource ('returns up to 50 public posts matching a query') scoped to Bluesky, immediately distinguishing it from bluesky_feed and bluesky_profile. The query-capability summary makes the tool's niche 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?
Opens with explicit use cases ('real-time social listening, brand/topic mentions and sentiment research'), which tells the agent when this tool fits. It does not name a sibling as the alternative or state when not to use it (e.g., vs. bluesky_feed for timeline browsing), so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hn_searchScrapeMole Social: Telegram, Bluesky, Mastodon, Hacker News and Lobsters data for AI agents: Hacker News searchARead-onlyIdempotentInspect
Use to find what Hacker News says about a product, company, library or topic: searches stories (default) or comments across HN history, sorted by relevance or newest, optionally limited to the last N days or a minimum points threshold. Returns title, URL, author, points, comment count, time, text excerpt and the HN link. For the live HN front page, new, best, Ask HN, Show HN and job lists use ScrapeMole Pulse: https://pulse.scrapemole.workers.dev/v1/news/hn. Paid tool: x402 USDC on Base, $0.001 per successful call; call without payment to receive the PaymentRequired object.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search text. | |
| days | No | Only items from the last N days (1-3650). | |
| sort | No | "relevance" or "date". | relevance |
| type | No | "story" or "comment". | story |
| limit | No | Max hits (1-50). | 20 |
| minPoints | No | Minimum points (stories). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent and open-world behavior, and the description adds substantial context beyond them: the exact return fields delivered, the default type/sort behavior, and the paid x402 USDC-on-Base model with $0.001 per successful call and the PaymentRequired object on unpaid calls. That payment and output-shape detail is real value not available in the structured fields.
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?
Front-loaded with the core purpose and scope, then returns, then the alternative service, then payment. Dense but every sentence carries useful information; only slight trimming would be possible without losing content.
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 no output schema, the description explicitly lists the returned fields, covers default behavior and the payment requirement, and its annotations cover the safety profile. Nothing an agent needs to call this search tool correctly is missing.
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 all six parameters and their defaults are already documented in the schema; the description's mentions of 'stories or comments', 'last N days', 'minimum points' and 'relevance or newest' merely restate those schema semantics. It adds no format, range or interaction detail beyond what the schema provides, so the baseline 3 applies.
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?
States a specific verb (searches) and resource (HN stories/comments across history), plus default behavior (story, relevance sort) that disambiguates it from a live-feed fetch. It does not explicitly name the sibling hn_thread, so the differentiation from that sibling is inferable but not stated.
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?
Gives a clear use case (find what HN says about a product, company, library or topic) and an explicit exclusion with an alternative (use ScrapeMole Pulse for live front page/new/best/Ask HN/Show HN/jobs). However, it does not address when to prefer hn_thread over this search within the same server.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
hn_threadScrapeMole Social: Telegram, Bluesky, Mastodon, Hacker News and Lobsters data for AI agents: Hacker News thread with commentsARead-onlyIdempotentInspect
Use to read the discussion on a Hacker News post: returns the story (title, URL, points, author, time) and up to N comments in thread order with depth, author, time and plain text (HTML stripped). Good for summarising community reaction to a launch. For the live HN front page, new, best, Ask HN, Show HN and job lists use ScrapeMole Pulse: https://pulse.scrapemole.workers.dev/v1/news/hn. Paid tool: x402 USDC on Base, $0.002 per successful call; call without payment to receive the PaymentRequired object.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | HN item id (story). | |
| limit | No | Max comments (1-300). | 100 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare the safe-read profile (readOnly/openWorld/idempotent); the description goes well beyond them by disclosing that this is a paid tool, the payment rail (x402 USDC on Base), the exact price ($0.002 per successful call), and the failure mode of calling unpaid (a PaymentRequired object is returned). It also notes comments are capped and HTML-stripped to plain text, which shapes what the agent will actually receive.
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?
Front-loaded with purpose followed by return contents, then usage and alternative routing, then the payment caveat in a final sentence. Every sentence carries information, though the payment/URL detail makes it denser than strictly needed for selection alone.
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 no output schema, the description takes responsibility for describing the return shape (story fields plus threaded comments with depth/author/time/plain text), and it covers the commercial prerequisite an agent must know before calling. Nothing material for correct invocation is missing.
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 both 'id' and 'limit' are already documented, and the schema is the authority on the 1-300 range. The description adds only light framing — that limit caps comments returned in thread order — which does not exceed the schema. Baseline 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?
States a specific verb and resource ('read the discussion on a Hacker News post') and enumerates exactly what comes back: story fields (title, URL, points, author, time) plus comments with depth, author, time and stripped plain text. This separates it cleanly from hn_search (searching) and from the Pulse endpoint that serves HN list feeds.
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?
Gives an explicit use case ('summarising community reaction to a launch') and routes a competing need — the live front page, new, best, Ask HN, Show HN and job lists — to a named alternative with a URL. It does not, however, differentiate itself from the hn_search sibling, so the routing is clear for list feeds but incomplete against the closest HN-adjacent tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lobsters_hotScrapeMole Social: Telegram, Bluesky, Mastodon, Hacker News and Lobsters data for AI agents: Lobsters hottest / newestARead-onlyIdempotentInspect
Use to see what programmers on Lobsters are discussing right now: returns up to 25 stories from the hottest or newest page, optionally filtered to one tag, with title, URL, score, comment count, tags, submitter and time. Paid tool: x402 USDC on Base, $0.002 per successful call; call without payment to receive the PaymentRequired object.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Optional tag, e.g. rust, ai, security. | |
| list | No | "hottest" or "newest". | hottest |
| limit | No | Max stories (1-25). | 25 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/openWorld/idempotent, and the description adds genuinely new behavioral facts they cannot convey: the hard 25-story ceiling, the live 'right now' freshness, the exact per-call price ($0.002 USDC on Base), the x402 payment mechanism, and the failure mode of calling unpaid (returns a PaymentRequired object). This is exactly the kind of cost/auth disclosure an agent needs before invoking.
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 sentences, front-loaded with the purpose, then output shape, then cost/payment. No filler; the long payment clause is dense with required operational information rather than padding.
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 no output schema, the description usefully enumerates the returned fields (title, URL, score, comment count, tags, submitter, time). All three parameters are covered by the schema, and the payment/auth model — the biggest risk of misfire for an agent — is fully explained.
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 tag, list, and limit are already documented in the schema with defaults and range. The description only echoes them ('optionally filtered to one tag', 'up to 25 stories'), adding no syntax, validation, or semantic detail beyond the schema — the baseline 3 for full coverage.
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?
States a specific verb and resource ('returns up to 25 stories from the hottest or newest page') plus the exact scope (Lobsters, optional single-tag filter) and the fields returned. Since no sibling covers Lobsters, the platform name alone cleanly separates it from the bluesky_*/hn_*/mastodon_*/telegram_* tools.
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?
'Use to see what programmers on Lobsters are discussing right now' gives a clear use context, and the description distinguishes the hottest vs newest pages that the `list` parameter selects. It never states when NOT to use it or names an alternative (e.g., the other platform feeds) for different data sources.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
mastodon_tagScrapeMole Social: Telegram, Bluesky, Mastodon, Hacker News and Lobsters data for AI agents: Mastodon hashtag timelineARead-onlyIdempotentInspect
Use for fediverse social listening on a topic or brand hashtag: returns up to 40 recent public posts tagged #tag as seen by a Mastodon instance (mastodon.social by default, or any public instance via instance=), with plain text, author handle, createdAt, language, reblog/favourite/reply counts, tags and URLs. Public posts only, official public API, no login. Paid tool: x402 USDC on Base, $0.001 per successful call; call without payment to receive the PaymentRequired object.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | Yes | Hashtag without #. | |
| limit | No | Max posts (1-40). | 20 |
| max_id | No | Pagination: posts older than this id. | |
| instance | No | Mastodon instance host. | mastodon.social |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the readOnly/openWorld/idempotent annotations by disclosing public-posts-only scope, the official public API with no login, and — critically — the payment model (x402 USDC on Base at $0.001 per successful call, and that an unpaid call returns a PaymentRequired object). That pricing/error behavior is exactly the kind of operational context an agent cannot infer elsewhere.
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 sentences, front-loaded with the use-case and result shape, then operational caveats. The field enumeration is dense but earns its place given there is no output schema; no filler sentences.
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 no output schema, the description compensates by enumerating returned fields (plain text, author handle, createdAt, language, reblog/favourite/reply counts, tags, URLs) and covers auth-free access plus the payment/handshake flow. An agent has everything needed to call this correctly and interpret the response.
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 the baseline is 3. The description restates the instance default (mastodon.social, or any public instance via instance=) and the 40-post cap, but adds little beyond what the schema already documents; it does not clarify max_id pagination semantics in prose.
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?
States a specific resource (Mastodon hashtag timeline) and scope (up to 40 recent public posts tagged #tag), with the platform named explicitly. The fediverse/Mastodon framing cleanly separates it from the bluesky_*, hn_*, lobsters_* and telegram_* siblings without needing to name them.
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?
"Use for fediverse social listening on a topic or brand hashtag" gives a clear positive use context. There are no explicit exclusions or named alternatives (e.g. when to prefer bluesky_search), so it stops short of a full when/when-not rubric.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
telegram_channelScrapeMole Social: Telegram, Bluesky, Mastodon, Hacker News and Lobsters data for AI agents: Telegram public channel postsARead-onlyIdempotentInspect
Use to monitor or research public Telegram channels (crypto, news, project announcements, signals): pass a channel username (e.g. durov, telegram, or a t.me link) and get up to 20 recent posts with text, ISO date, view count, outbound links, forwarded-from, photo/video flags and t.me post URLs, plus the channel title, bio and subscriber count. Add q= to search posts within that channel, before= to page back. Only public channels with the web preview enabled; no login, no private chats or groups. Paid tool: x402 USDC on Base, $0.002 per successful call; call without payment to receive the PaymentRequired object.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Optional keyword search within the channel. | |
| limit | No | Max posts (1-20). | 20 |
| before | No | Return posts older than this post id (pagination). | |
| channel | Yes | Public channel username or t.me link. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the read-only/open-world/idempotent profile, and the description layers on substantial extra behavior: the 20-post cap, the exact public-only/web-preview eligibility constraint, no authentication requirement, and the x402 USDC on Base paid model with the PaymentRequired response returned on unpaid calls. That pricing and failure-mode disclosure is exactly the kind of context annotations cannot carry.
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?
Front-loaded with the primary use case, then return shape, then modifiers, then constraints, then pricing. Dense but nearly every clause earns its place; the run-on sentence structure and duplicated mention of the 20-post cap cost it the top mark.
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?
No output schema exists, so the description carries the return-value burden and does so explicitly (field list, channel metadata). Combined with eligibility rules and payment semantics, an agent has everything needed to decide and call 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?
With 100% schema coverage the baseline is 3, but the description adds value beyond the schema: concrete channel-value examples ('durov', 'telegram', or a t.me link), clarification that q= searches within the given channel, and that before= is for paging backward. The limit parameter is only echoed from the schema, so it is not a full 5.
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?
States a specific verb+resource (monitor/research public Telegram channels) and enumerates the concrete payload: up to 20 recent posts with text, ISO date, view count, links, forward source, media flags, post URLs, plus channel title/bio/subscriber count. The platform scoping makes it trivially distinguishable from siblings like bluesky_feed, hn_search, or lobsters_hot.
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?
Gives clear context ('monitor or research'), the qualifying condition (public channels with web preview enabled), and exclusions ('no login, no private chats or groups'). It also explains the q= and before= usage modes. It does not explicitly name a sibling tool as the alternative for non-Telegram platforms, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- Added
mastodon_tag - Added
telegram_channel
6 tool updates
- First observed
bluesky_feed - First observed
bluesky_profile - First observed
bluesky_search - First observed
hn_search - First observed
hn_thread - First observed
lobsters_hot
Related MCP Connectors
Pay-per-call x402 tools: package advisories, EU tenders, Wikidata facts, promo board, web, crypto
30-day x402 history, calendar, DNS, RDAP, LEI, URLs, scraping, text, VAT, QR. Pay-per-call USDC.
156 paid-per-call JSON APIs for AI agents over x402: calculators, live data, crypto, security, dev.
112 x402 pay-per-call tools: web data, security/OSINT, SEC and public data, Solana/EVM lookups
Related MCP Servers
- FlicenseNot gradedqualityBmaintenancePay-per-call structured data for autonomous AI agents. x402-metered, MCP-native.-
- AlicenseCqualityDmaintenancex402 Micropaid MCP Server — 120+ paid API endpoints for AI Agents. Pay per call with USDC on Base network. No signup, no API key needed.551MIT
- AlicenseAqualityCmaintenancePay-per-use clean web reader for AI agents. URL in, markdown plus metadata out, in milliseconds. Settled per-call in USDC over x402 — no signup, no API keys.1115 npm3MIT

AfaAgent x402 API Suiteofficial
FlicenseNot gradedqualityFmaintenance43 x402-enabled API tools — DeFi, wallet security, AI/ML, developer tools, SEO. Pay-per-call USDC on Base via x402 protocol.-
Glama MCP Gateway
Add one secure layer between your agents and this server.