Skip to main content
Glama

Get an Anahana article as markdown

get_article
Read-only

Fetch a specific Anahana article as markdown, given its full URL, site-relative path (e.g. "/en/angel-numbers/111-angel-number/"), or a bare slug from search_content results (e.g. "111-angel-number"). Tries two fetch modes against the live site in order: (1) content negotiation — GET the article URL with Accept: text/markdown; (2) the path-based markdown mirror at <article-url>index.md. Both are live. Page chrome (skip link, table of contents with dead anchors, back-to-top anchor, analytics pixel) is stripped, so what you get back is the article body. If both modes fail, returns a clear error naming the canonical HTML URL instead of silently failing. Works in all 24 languages: a full URL or a site-relative path already names its language, and a bare slug is resolved in the language given by language (English by default). Article slugs are identical across languages — only the title and body are translated — so the same slug plus a different language gives you the same article in that language.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
languageNoLanguage for a BARE SLUG, e.g. "ja". Ignored when url_or_slug is a full URL or a site-relative path, since those already carry their language prefix. Defaults to "en".
url_or_slugYesFull URL, site-relative path, or bare slug, e.g. "111-angel-number".

TDQS

A4.7/5.0
Behavior5/5

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

The description discloses more than the readOnlyHint/openWorldHint annotations: it explains the two fetch modes tried in order, that page chrome is stripped, that failure returns a clear error naming the canonical HTML URL, and that slugs are language-agnostic. This gives the agent a solid model of the tool's actual runtime behavior.

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 long but every sentence earns its place. It is logically ordered: accepted inputs, fetch strategy, output cleaning, error behavior, then language handling. There is no filler, and the most important usage constraint (input forms) comes first.

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?

With no output schema, the description still explains what the caller receives ('the article body') and what is removed. It also covers failure behavior, language behavior, and the multi-language edge case. The tool is complex, but the description leaves no major operational gap for an agent to call it 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?

Schema coverage is 100% for both parameters, but the description adds meaning beyond the schema: it defines acceptable input forms, clarifies when 'language' is ignored, confirms the default, and gives concrete examples. This is valuable supplementary guidance rather than mere schema repetition.

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 clearly states a specific verb ('Fetch'), a specific resource ('a specific Anahana article'), and the output format ('as markdown'). It also distinguishes itself from siblings by focusing on article retrieval versus search_content or lookup_angel_number, and by accepting full URLs, paths, or slugs from search results.

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

Usage Guidelines4/5

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

The description gives concrete, actionable conditions for when to call this tool: when you have a full URL, site-relative path, or bare slug from search_content. It explains how language resolution works and mentions fallback behavior, but it does not explicitly state when to prefer lookup_angel_number or search_content over this tool.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.7/5.0
Disambiguation5/5

Each tool has a clearly distinct action: search_content queries the index, lookup_angel_number resolves a number to a URL, and get_article fetches the article body. There is no overlap in purpose, and the descriptions explicitly tie them together into a search-then-retrieve pipeline.

Naming Consistency5/5

All three tools follow a consistent verb_noun pattern in snake_case: get_article, lookup_angel_number, search_content. The naming style is uniform and predictable throughout the set.

Tool Count5/5

Three tools is a small but well-scoped set for a content-access server. Each tool earns its place: search, direct number lookup, and article retrieval cover the core workflows without redundancy or bloat.

Completeness5/5

The server covers the full content lifecycle: find content via search, resolve specific angel numbers, and fetch the full article body. Language handling is integrated into each tool, and there are no obvious dead ends or missing operations for the stated purpose.

Resources