# YogaMag

> Read-only yoga library: articles, poses, breathing, routines, styles, meditation, books.

- name: in.co.yogamag/yogamag
- version: 1.9.0
- connection class: R0 (autonomous)
- trust: 82/100 flags: no-repository
- quality: 89/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/in.co.yogamag%2Fyogamag
- tools: https://api.protogrid.dev/v1/servers/in.co.yogamag%2Fyogamag/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "yogamag": {
      "type": "http",
      "url": "https://yogamag.co.in/api/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 99
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-97% +updated-1d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 89/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-06-18; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 100 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 8 of 8 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 1,828 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: n/a (weight 15)

- n/a `stability.changes`, `stability.rug_pull`: tool history recorded for 2 of the 7 days needed

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 8, about 1,828 tokens to load them all
- tool set hash: c2bd44c4f538d8cfa58ff8e5c9ba0eb0
- badge: [![protogrid quality](https://protogrid.dev/badge/in.co.yogamag/yogamag.svg)](https://protogrid.dev/servers/in.co.yogamag/yogamag)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Remotes

- https://yogamag.co.in/api/mcp (streamable-http, auth none, reachable true, uptime30d 0.9677419)
- https://yogamag.co.in/api/mcp/sse (sse, auth none, reachable true, uptime30d 0.93333334)

## Packages

_none_

## Tools (8)

- `adapt_routine`: Check every step of a YogaMag routine against what the person cannot or does not want to do (the floor, kneeling, weight on the wrists). Each step is kept, swapped for an easier version that the pose's reviewed data lists, marked as having no supported alternative, or marked not assessed. It never invents a substitute; the result is the YogaMag routine with listed swaps, not a new routine.
- `find_poses`: List poses from the reviewed YogaMag pose library that match a level, body area or type of pose, and that suit what the person avoids (the floor, kneeling, weight on the wrists), naming the easier version where the pose itself does not. Only poses with a reviewed profile are listed. Read a pose with get_glossary_term before describing it.
- `find_routine`: Find the YogaMag timed routine for a goal and the minutes the person has: the longest one that fits, or the shortest if none is that short. Returns the routine as published, with its steps, who should skip or modify it, and the follow-along link. If the person avoids the floor, kneeling or weight on the wrists, pass avoid and each step is checked. YogaMag has routines only for the goals listed; if none matches what was asked (for example sleep), say there is no such routine yet and use search_content instead of picking the nearest goal.
- `get_book_summary`: Get a book summary by slug
- `get_glossary_term`: Get a yoga glossary entry (pose, breathing technique or term) by slug, including who should skip or modify a pose and its easier versions
- `get_post`: Get the full text of a YogaMag article by slug
- `get_routine`: Get a timed yoga routine by slug: every pose with its seconds, sides and breath cue, plus the link to the follow-along timer and, where there is one, the audio class (one MP3 with a spoken cue for every pose) and its podcast episode
- `search_content`: Search YogaMag articles, glossary terms (poses, breathing, Sanskrit), pose comparisons, timed routines, yoga styles, meditation, guides, tools and book summaries. Returns titles, URLs, slugs and the tool to fetch each result (guides and hubs are read as resources by URL).
