The Family Almanac — parenting library, guide metadata, and magazine
Server Details
Read-only access to The Family Almanac's parenting-focused book library, grounded guide metadata...
- Status
- Healthy
- Uptime
- 100.0% over 21 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 5 tools
Each tool targets a distinct resource type: guides, library works, magazine pieces, feeds, and library search. There is no meaningful overlap between the getters, the search, and the feed listing.
The tools follow a consistent verb_noun pattern: get_ for singular resources, search_ and list_ for discovery surfaces. All names are snake_case and clearly indicate their action and target.
Five tools is well-scoped for a read-only content server covering guides, library records, magazine pieces, and feed metadata. Each tool has a clear purpose and none feel redundant.
The read surface is largely complete for a content-serving domain: guides, library works, and magazine pieces each have getters, and library works are discoverable via search. The main gap is the lack of list/discovery tools for guides and magazine pieces beyond known slugs.
Available Tools
5 toolsget_guideGet a grounded parenting guide's metadataARead-onlyInspect
Returns one live guide's title, subtitle, access, book count, and reading time — card-level metadata only. This surface never returns guide body/depth text (none is served here, free or gated); to read or purchase a guide, send the reader to the returned canonicalUrl — never summarize or excerpt content this tool did not return. Known slugs (19): pregnancy, newborn, toddler, preschool, school-age, adolescence, parenting-science, baby-naming, ….
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Guide slug (e.g. pregnancy, newborn, toddler, parenting-science). |
Output Schema
| Name | Required | Description |
|---|---|---|
| live | Yes | |
| slug | Yes | |
| books | Yes | |
| title | Yes | |
| access | Yes | |
| updated | Yes | |
| contract | Yes | |
| subtitle | Yes | |
| guideType | Yes | |
| canonicalUrl | Yes | |
| readingTimeMin | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, but the description adds crucial behavioral traits: it explicitly states the tool never returns guide body/depth text (free or gated) and instructs to never summarize/excerpt content not returned. It also lists known slugs, providing context about valid inputs. These go beyond annotations to clarify limitations.
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, front-loaded with the primary function, and each sentence adds value: what it returns, what it doesn't return, how to handle the output, and known slugs. No filler or redundancy.
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?
For a simple single-parameter metadata tool with an output schema, the description covers return fields, limitations (no body text), the recommended follow-up action (canonicalUrl), and valid slug examples. It is complete for an agent to correctly invoke and interpret the result.
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?
The schema describes the slug with examples, but the description adds a list of known slugs (19) and clarifies the slug must correspond to a live guide. This enriches the parameter meaning beyond the schema's basic description, even though schema coverage is 100%.
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 returns metadata for a single live guide (title, subtitle, access, book count, reading time) and explicitly differentiates it from siblings by focusing on guides and card-level metadata. It also distinguishes from other content types like library work or magazine pieces, 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?
The description implies usage (when you need guide metadata) and provides guidance on how to handle the result (send reader to canonicalUrl, never summarize). However, it does not explicitly compare with sibling tools or state when to prefer this over search_library or other retrieval tools. The usage guidance is present but not exhaustive on alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_library_workGet a parenting library workARead-onlyInspect
Returns one parenting library work's bibliographic record and (when profiled) its thesis.
| Name | Required | Description | Default |
|---|---|---|---|
| libraryId | Yes | Library catalog id (e.g. libb36dccb370592500). |
Output Schema
| Name | Required | Description |
|---|---|---|
| tags | Yes | |
| year | Yes | |
| pitch | Yes | |
| title | Yes | |
| author | Yes | |
| guides | Yes | |
| logline | Yes | |
| contract | Yes | |
| libraryId | Yes | |
| canonicalUrl | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already signal a safe read operation, and the description adds a meaningful behavioral caveat: the thesis is only returned 'when profiled.' This usefully sets agent expectations about conditional response content beyond what readOnlyHint and destructiveHint convey.
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, focused sentence that leads with the action and object, with no filler or repetition of schema fields.
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?
For a single-parameter read-only getter with full schema coverage, annotations, and an output schema, the description captures the essential behavior and conditional return content. Nothing critical 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% and the parameter already has a clear description with an example. The tool-level description adds no additional parameter semantics, so the baseline score of 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?
The description states a specific verb ('Returns') and a specific resource ('one parenting library work's bibliographic record'), and it implicitly distinguishes itself from siblings like get_guide and get_magazine_piece by targeting generic library works rather than those specific piece 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?
The use case is implied: call this when you have a libraryId and need a single library work's record. However, it does not explicitly say when to prefer it over alternatives or when not to use it, so guidance is implicit rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_magazine_pieceGet a multi-voice magazine pieceARead-onlyInspect
Returns one published magazine piece's question, per-writer sections, and editor's coda — the same content the human page renders, ungated. Known slugs (4): the-whole-room--i-got-a-prenatal-screening-result-that-came, the-whole-room--my-baby-won-t-nap-anywhere-except-on, the-whole-room--four-year-old-lying, the-whole-room--my-toddler-had-a-full-blown-meltdown-on.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Magazine piece slug. |
Output Schema
| Name | Required | Description |
|---|---|---|
| slug | Yes | |
| title | Yes | |
| editor | Yes | |
| format | Yes | |
| contract | Yes | |
| question | Yes | |
| sections | Yes | |
| generated | Yes | |
| editorCoda | Yes | |
| canonicalUrl | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond the readOnlyHint, openWorldHint, and destructiveHint annotations. It explicitly states the content is 'ungated' (no auth required) and describes the return structure (question, per-writer sections, editor's coda). It also lists known slugs, implying a closed set (aligning with openWorldHint=false). This enriches the agent's understanding of what to expect.
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, information-dense sentence followed by a list of known slugs. It front-loads the core purpose and key detail ('ungated') before the slug enumeration. There is no filler or repetition; every part serves a useful purpose.
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?
For a simple single-parameter read tool with an output schema, the description is fully self-contained. It conveys the resource type, the exact content returned, the access behavior ('ungated'), and provides the known valid inputs. Nothing essential is missing for an agent to invoke it correctly, especially given the supportive annotations and 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?
The input schema covers the parameter (slug) with a basic description and 100% coverage. The tool description goes a step further by listing the four known valid slugs, giving the agent concrete values it can use directly. This is meaningful extra guidance that the schema alone does not provide, justifying above-baseline scoring.
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 a specific verb ('Returns') and a precise resource: 'one published magazine piece's question, per-writer sections, and editor's coda.' This is not vague and distinguishes from sibling tools (e.g., get_guide, get_library_work) by naming the exact content returned. The 'ungated' detail further clarifies the nature of the resource.
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 clear context: this tool fetches a magazine piece by slug. It implicitly communicates when to use it (when you need a known magazine piece) and distinguishes from siblings via the content type. However, it does not explicitly state when not to use it or mention alternative tools, which would justify a 5. The context is unambiguous enough for correct selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_family_almanac_feedsList The Family Almanac feedsARead-onlyInspect
List The Family Almanac's free machine-readable feeds and their MCP/REST availability. OpenAPI is also published at https://thefamilyalmanac.com/openapi.json.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| feeds | Yes | |
| contract | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds useful context beyond annotations by noting the feeds are free, machine-readable, and that an OpenAPI document is published at a specific URL. This enriches the agent's understanding without repeating the 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?
Two short sentences carry the entire definition with no wasted words. The core listing purpose is front-loaded, and the supplementary OpenAPI reference is placed second. Every sentence earns 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?
For a zero-parameter, read-only listing tool with an output schema and annotations, the description covers what the tool lists and points to the OpenAPI spec for further detail. Nothing needed to invoke the 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?
The tool has zero parameters, so there is no parameter meaning for the description to add. Baseline for a zero-parameter tool is 4, and the description appropriately spends no effort on parameter semantics.
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 names a specific verb ('List'), a resource ('The Family Almanac's free machine-readable feeds'), and the distinguishing dimension ('their MCP/REST availability'). It clearly separates this tool from the sibling get/search tools, which are content-retrieval operations.
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 gives clear context: use this tool to discover available machine-readable feeds and their MCP/REST availability. It does not explicitly name exclusions or an alternative, but the purpose is distinct enough from the sibling retrieval tools that an agent can infer when it applies.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_librarySearch the parenting library catalogARead-onlyInspect
Search or list the parenting-focused book library by title/author substring and/or classifier tag. No filters returns the first page.
| Name | Required | Description | Default |
|---|---|---|---|
| tag | No | Case-insensitive classifier-tag substring. | |
| limit | No | Max rows to return (default 25, max 100). | |
| query | No | Case-insensitive title/author substring. |
Output Schema
| Name | Required | Description |
|---|---|---|
| tag | Yes | |
| count | Yes | |
| query | Yes | |
| total | Yes | |
| results | Yes | |
| contract | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark this as read-only and non-destructive. The description adds useful behavioral context beyond annotations, including the no-filter default behavior and the substring/combination search semantics. It does not describe every edge case, but with annotations present, the bar is lower and the added behavior is meaningful.
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 with no filler. The core purpose and key default behavior are front-loaded, and every sentence earns its place. It does not repeat schema details 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?
For a simple, read-only search tool with an output schema and fully documented optional parameters, the description covers what an agent needs: what it searches, how filters work, and what happens with no filters. No critical decision-making information 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 the schema already documents each parameter. The description adds value by clarifying the relationship between parameters: title/author substring maps to query, classifier tag maps to tag, and 'and/or' indicates combinability. This is useful semantic context beyond the individual parameter 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 states a specific action ('Search or list') and a specific resource ('the parenting-focused book library') with clear filter dimensions. It is immediately distinguishable from sibling tools like get_library_work or get_magazine_piece, which are retrieval-oriented.
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 clearly indicates this tool is for searching or listing the library by title/author and/or tag, and that omitting filters returns the first page. It does not explicitly name alternatives or exclusions, but the usage context is clear enough for an agent to choose it over the sibling get/list tools.
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.
1 tool update
- Removed
get_membership_offer
1 tool update
- Added
get_membership_offer
1 tool update
- Changed
list_family_almanac_feeds1 field changed- changed
Output schema / (root)Previous value: -nullNew value: +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "additionalProperties": false, + "properties": { + "contract": { + "type": "string" + }, + "count": { + "type": "number" + }, + "feeds": { + "items": { + "additionalProperties": false, + "properties": { + "auth": { + "type": "string" + }, + "id": { + "type": "string" + }, + "mcpTool": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "method": { + "type": "string" + }, + "path": { + "type": "string" + }, + "rest": { + "type": "string" + }, + "summary": { + "type": "string" + } + }, + "required": [ + "id", + "method", + "path", + "summary", + "mcpTool", + "rest", + "auth" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "contract", + "count", + "feeds" + ], + "type": "object" +}
5 tool updates
- First observed
get_guide - First observed
get_library_work - First observed
get_magazine_piece - First observed
list_family_almanac_feeds - First observed
search_library
Related MCP Connectors
Read-only access to Penwright's writing-craft book library, grounded guide metadata (card-level...
Read-only access to Compensation Professional's compensation-focused book library, query-shaped...
Read-only tools over an independently vetted catalog of non-toxic home and baby products.
Read-only access to Namesake's baby name catalog: meaning, origin, pronunciation, popularity trend.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables read-only search, browsing, and metadata retrieval from a local Calibre e-book library using natural language queries.MIT
- FlicenseAqualityCmaintenanceEnables bibliographic research on a private local Calibre library by providing read-only metadata search, book inspection, and optional RAG-based content retrieval through MCP.5-
- AlicenseNot gradedqualityBmaintenanceProvides read-only search and context-pack creation over a local source library, letting AI assistants retrieve relevant excerpts and audit cited quotations.MIT
- AlicenseNot gradedqualityCmaintenanceEnables read-only access to local Calibre libraries for searching metadata, inspecting book formats, and extracting content samples. Supports full-text search, batch operations, and detailed book analysis through natural language queries.3MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.