Skip to main content
Glama
Johnhyeon

TelegramLens

by Johnhyeon

telegram_link_content

Read-onlyIdempotent

Fetches a link's title, description, and excerpt from Telegram posts. Reads pending or new links on demand, returning up to 2,000 characters.

Instructions

텔레그램 글에 붙은 링크 하나의 내용(제목·설명·본문 발췌)을 돌려줍니다.

수집기가 이미 읽어 둔 것이 있으면 그것을, 아직 안 읽은(pending) 링크나 처음 보는 주소면 지금 열어 읽습니다(몇 초). 발췌는 최대 2,000자이고 기사 전문이 아닙니다. DART 공시 링크는 읽지 않고 dart_rcp_no 만 줍니다 → DartLens 로 읽으세요. 결과의 referenced_by 는 이 링크를 단 텔레그램 글(최근 5개)입니다.

Args: url: 링크 주소(글의 links / link_content.url 에 있는 그대로).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.7.0

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnly/idempotent/destructive annotations, the description discloses fetch latency, excerpt truncation to 2,000 characters, non-full-article behavior, DART special handling, and the referenced_by return semantics. This is rich behavioral context with no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact, well-structured, and front-loaded with the core purpose. Each sentence adds distinct value: caching behavior, excerpt limit, DART exception, referenced_by semantics, and parameter meaning. No redundant content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the read-only annotation, idempotence, and presence of an output schema, the description covers the operation fully. It explains return semantics, limits, latency, and exceptions without needing to restate schema fields. An agent has enough information to call the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides only a string type for url with zero description coverage. The description compensates by explaining that url should be the link address exactly as it appears in the post's links or link_content.url, which adds practical meaning. For a single parameter this is sufficient, though no validation or format guidance is included.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific operation and resource: returning the title, description, and body excerpt of one link attached to a Telegram post. It also distinguishes itself by explicitly stating what it does not do (DART links) and directing to DartLens, which helps separate it from siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear conditional context: cached links are returned immediately, pending or unseen links are fetched now. It also provides an explicit when-not and alternative: DART disclosure links are not read, and users should use DartLens instead.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.