Skip to main content
Glama

Discover what The Living Bread offers for a need, in the person's own words

discover_living_bread
Read-onlyIdempotent

The front door: turns a request in the person's own words and language into the need underneath and the real experiences that meet it. Use whenever you are unsure which tool fits ("I feel alone", "I just moved"). Example: {query:"I just moved and want friends who share my faith"}. Full guide: living-bread://tools/discover_living_bread. Access: no sign-in; shared limit of 300 requests a minute per IP.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "query": "<query>"
    },
    "name": "discover_living_bread"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoPage size.
placeNoPlace name.
queryYesWhat the person is looking for, in their own words and language.
detailNolean (default) or full evidence record.
languageNoBCP-47 language code.
preferred_response_languageNoLanguage to answer in.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed23 schema fields changed
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • changedInput schema / properties / detail / description
      Previous value: -"lean (default): the answer, its credit and one door. full: the complete evidence record (per-passage hashes, canon, layers)."New value: +"lean (default) or full evidence record."
    • changedInput schema / properties / language / description
      Previous value: -"The person's language as a BCP 47 tag (\"es\", \"pt-BR\", \"sw\"); detected from the words when omitted."New value: +"BCP-47 language code."
    • changedInput schema / properties / limit / description
      Previous value: -"How many intents at most, 1 to 5 (default 3)."New value: +"Page size."
    • changedInput schema / properties / place / description
      Previous value: -"A city or region the person chose to share; never a street address."New value: +"Place name."
    • changedInput schema / properties / preferred_response_language / description
      Previous value: -"The language to answer in (BCP 47). Doors not offered in it are marked; nothing is translated live."New value: +"Language to answer in."
    • removedOutput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • removedOutput schema / properties / answered_by
      Removed value: -{
      -  "description": "The implementation that answered (the same tool name the signed-in endpoint lists).",
      -  "type": "string"
      -}
    • removedOutput schema / properties / attribution
      Removed value: -{
      -  "description": "Credit: The Living Bread (living-bread.org).",
      -  "type": "string"
      -}
    • removedOutput schema / properties / content_flags
      Removed value: -{
      -  "description": "Set when retrieved text was withheld.",
      -  "items": {
      -    "type": "string"
      -  },
      -  "type": "array"
      -}
    • removedOutput schema / properties / content_layers
      Removed value: -{
      -  "additionalProperties": {},
      -  "description": "full detail: Scripture versus interpretation versus reflection.",
      -  "properties": {},
      -  "type": "object"
      -}
    • removedOutput schema / properties / evidence
      Removed value: -{
      -  "additionalProperties": {},
      -  "description": "When Scripture was read: translation, license, attribution, corpus version (full detail adds hashes and canon).",
      -  "properties": {},
      -  "type": "object"
      -}
    • removedOutput schema / properties / freshness
      Removed value: -{
      -  "additionalProperties": {},
      -  "description": "kind, retrieved_at, available_now (true only when verified live).",
      -  "properties": {},
      -  "type": "object"
      -}
    • removedOutput schema / properties / ids
      Removed value: -{
      -  "description": "Up to 25 ids in this answer.",
      -  "items": {
      -    "type": "string"
      -  },
      -  "type": "array"
      -}
    • removedOutput schema / properties / ignored_params
      Removed value: -{
      -  "description": "Parameters given that this mode does not use.",
      -  "items": {
      -    "type": "string"
      -  },
      -  "type": "array"
      -}
    • removedOutput schema / properties / license
      Removed value: -{
      -  "description": "License URL (CC BY 4.0 unless stated).",
      -  "type": "string"
      -}
    • removedOutput schema / properties / next_actions
      Removed value: -{
      -  "description": "Links to open next.",
      -  "items": {
      -    "additionalProperties": {},
      -    "properties": {
      -      "label": {
      -        "type": "string"
      -      },
      -      "url": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "label",
      -      "url"
      -    ],
      -    "type": "object"
      -  },
      -  "type": "array"
      -}
    • removedOutput schema / properties / ok
      Removed value: -{
      -  "description": "Always true on success.",
      -  "type": "boolean"
      -}
    • removedOutput schema / properties / result_state
      Removed value: -{
      -  "description": "\"empty\" when nothing matched.",
      -  "enum": [
      -    "useful",
      -    "empty"
      -  ],
      -  "type": "string"
      -}
    • removedOutput schema / properties / scripture_fields
      Removed value: -{
      -  "description": "Which fields are Scripture (all else is the house's own words).",
      -  "items": {
      -    "type": "string"
      -  },
      -  "type": "array"
      -}
    • removedOutput schema / properties / source_url
      Removed value: -{
      -  "description": "A public page of The Living Bread this answer came from.",
      -  "type": [
      -    "string",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / visibility
      Removed value: -{
      -  "description": "\"public\" or \"yours\".",
      -  "type": "string"
      -}
    • removedOutput schema / required
      Removed value: -[
      -  "answered_by"
      -]
  2. Changed14 schema fields changed
    • addedInput schema / properties / detail
      Added value: +{
      +  "description": "lean (default): the answer, its credit and one door. full: the complete evidence record (per-passage hashes, canon, layers).",
      +  "enum": [
      +    "lean",
      +    "full"
      +  ],
      +  "type": "string"
      +}
    • changedOutput schema / properties / attribution / description
      Previous value: -"Credit line for the data: The Living Bread (living-bread.org)."New value: +"Credit: The Living Bread (living-bread.org)."
    • changedOutput schema / properties / content_flags / description
      Previous value: -"[\"instruction_like_text_removed\"] when retrieved text was withheld."New value: +"Set when retrieved text was withheld."
    • changedOutput schema / properties / content_layers / description
      Previous value: -"Which fields are Scripture and which are human interpretation or reflection."New value: +"full detail: Scripture versus interpretation versus reflection."
    • changedOutput schema / properties / evidence / description
      Previous value: -"Present when Scripture was read: translation, canon, corpus version, attribution, and a SHA-256 per passage."New value: +"When Scripture was read: translation, license, attribution, corpus version (full detail adds hashes and canon)."
    • changedOutput schema / properties / freshness / description
      Previous value: -"How current the answer is: kind (scheduled | recently_observed | verified_live | record), retrieved_at, available_now (true only when activity was verified live)."New value: +"kind, retrieved_at, available_now (true only when verified live)."
    • changedOutput schema / properties / ids / description
      Previous value: -"Up to 25 ids found in this answer, for follow-up calls."New value: +"Up to 25 ids in this answer."
    • changedOutput schema / properties / license / description
      Previous value: -"License URL of the returned data (CC BY 4.0 unless stated)."New value: +"License URL (CC BY 4.0 unless stated)."
    • changedOutput schema / properties / next_actions / description
      Previous value: -"Up to 4 links the person can open next."New value: +"Links to open next."
    • changedOutput schema / properties / ok / description
      Previous value: -"Always true on a successful answer (errors come back as isError, never here)."New value: +"Always true on success."
    • changedOutput schema / properties / result_state / description
      Previous value: -"\"empty\" when nothing matched (count 0, no results); the text then says so plainly."New value: +"\"empty\" when nothing matched."
    • addedOutput schema / properties / scripture_fields
      Added value: +{
      +  "description": "Which fields are Scripture (all else is the house's own words).",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • changedOutput schema / properties / source_url / description
      Previous value: -"The first public web page this answer came from or points to."New value: +"A public page of The Living Bread this answer came from."
    • changedOutput schema / properties / visibility / description
      Previous value: -"\"public\" for shared data, \"yours\" for the signed-in believer's own data."New value: +"\"public\" or \"yours\"."
  3. Added

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint, idempotentHint, openWorldHint=false), and the description adds genuinely new operational context: no sign-in required and a shared 300-requests-per-minute-per-IP limit, which affects retry/backoff behavior. It does not mention failure modes or what happens with an ambiguous query, but with annotations doing the safety work this is solid.

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?

Front-loaded with the tool's role, then the usage rule, then an example, then access constraints — the highest-value information comes first. Every sentence is doing distinct work; no restatement of the name or title.

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?

For a 6-parameter discovery router with a full output schema, the description covers purpose, routing conditions, a usage example, access requirements, and rate limits, plus a link to the full guide. Nothing an agent needs to call it correctly is missing.

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%, so baseline is 3; the description earns an extra point by showing the example {query:"I just moved and want friends who share my faith"}, which demonstrates that the query is free-form natural language rather than keywords. It does not explain the role of place, limit, or the language vs. preferred_response_language distinction, but the schema documents those.

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?

States a specific transformation: 'turns a request in the person's own words and language into the need underneath and the real experiences that meet it', and frames itself as 'the front door'. That framing immediately distinguishes it from the entity-specific siblings (find_churches, find_gatherings, read_scripture, etc.), which are destinations rather than routers.

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?

Explicit routing rule: 'Use whenever you are unsure which tool fits', backed by two concrete trigger phrases ('I feel alone', 'I just moved') and a worked example query. It names the condition for selection rather than leaving the agent to infer it from sibling names.

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.

Resources