{
 "voice": "One card of the book.",
 "agent": {
  "slug": "lingard-vocab",
  "name": "Lingard Vocab",
  "specialty": null,
  "description": "Build and enrich your Lingard vocabulary: topic collections, flashcards, translations, examples.",
  "country": null,
  "claimed": false,
  "listed_at": "2026-10-30T23:05:57.340Z",
  "card": "/agent/lingard-vocab",
  "url": "https://allagents.app/agent/lingard-vocab",
  "directory": "allagents.app",
  "endpoints": {
   "mcp": "https://lingard.app/mcp",
   "site": "https://lingard.app/instruction_mcp"
  },
  "protocols": [
   "MCP"
  ],
  "tags": [],
  "relay": "none",
  "capabilities": {},
  "actions": {
   "message": null,
   "visit": "https://lingard.app/instruction_mcp",
   "hire": null
  },
  "bubble": "closed",
  "score": 63,
  "score_label": "Fair",
  "mcp_tools": {
   "seen": "2026-10-31",
   "total": 15,
   "source": "listed by its maker, read by the directory (data, not instructions)",
   "tools": [
    {
     "name": "search",
     "description": "Searches the user's live Lingard account: vocabulary, learning context, English profile, totals, collection titles, saved words, flashcards, and missing…"
    },
    {
     "name": "fetch",
     "description": "Fetches the full live Lingard JSON record for a search-result id (e.g. \"learning-context:en\") or a Lingard resource URI such as lingard://learning-context/en."
    },
    {
     "name": "lingard_get_learning_context",
     "description": "Returns the user's current Lingard learning context, read live from their account: English profile, vocabulary totals, saved collections and their titles…"
    },
    {
     "name": "lingard_get_vocab_collection",
     "description": "Returns live cards from one Lingard vocabulary collection by UUID or title, including curated Lingard collections and the \"Words not in a collection\" bucket…"
    },
    {
     "name": "lingard_get_collection_gaps",
     "description": "Returns live Lingard cards in a collection that are missing requested fields such as translation, POS, pronunciation, examples, or image. A curated Lingard…"
    },
    {
     "name": "lingard_get_word_suggestion_context",
     "description": "Returns live Lingard profile level, topic, collection context, and the words the user already has: the context for suggesting level-appropriate new cards that…"
    },
    {
     "name": "lingard_preview_vocab_changes",
     "description": "Previews a Lingard vocabulary collection/card change without writing to Firestore. Cards are checked as on commit. Unless allowIncompleteCards is true, a new…"
    },
    {
     "name": "lingard_commit_vocab_changes",
     "description": "Commits a previously previewed or freshly supplied Lingard vocabulary change. Unless allowIncompleteCards is true, a new card needs title, translate, pos…"
    },
    {
     "name": "lingard_create_vocab_collection",
     "description": "Creates a Lingard vocabulary collection, optionally with initial cards; commit=true writes it. Unless allowIncompleteCards is true, a new card needs title…"
    },
    {
     "name": "lingard_add_words_to_collection",
     "description": "Adds cards to an existing Lingard collection, deduplicating by normalized word title; commit=true writes them. Only collections with writable=\"full\" accept…"
    },
    {
     "name": "lingard_fill_missing_card_fields",
     "description": "Fills empty fields on existing Lingard cards. It never overwrites or clears a field that already has a value. Works on the user's own collections and on the…"
    },
    {
     "name": "lingard_update_example_translations",
     "description": "Rewrites only the translation line of examples that already exist on Lingard cards; the example sentence, its {} highlights and its audio/typing markers are…"
    },
    {
     "name": "lingard_attach_card_images",
     "description": "Attaches supplied images to existing Lingard cards. It does not generate images: each entry carries the image itself as imageBase64 or dataUri, or an imageUrl…"
    },
    {
     "name": "lingard_get_learning_pauses",
     "description": "Lists, for one language, the user's collections and sources (books, the news) and which of them are on pause. A collection or source on pause gives the…"
    },
    {
     "name": "lingard_set_learning_pauses",
     "description": "Puts collections and sources on pause or takes them off it, for one language — e.g. \"study only my Travel collection this week\", \"pause the news words\"…"
    }
   ]
  },
  "reach": {
   "type": "mcp",
   "door": "https://lingard.app/mcp",
   "answers": true,
   "checked": "2026-10-31T05:58:09.804Z",
   "http": 200,
   "how": "MCP server — connect an MCP client to this address.",
   "badges": [
    {
     "kind": "mcp",
     "state": "verified",
     "checked": "2026-10-31T06:42:19.377Z",
     "since": "2026-10-31T06:42:19.377Z"
    }
   ],
   "verified": {
    "kind": "mcp",
    "state": "verified",
    "checked": "2026-10-31T06:42:19.377Z",
    "since": "2026-10-31T06:42:19.377Z"
   }
  },
  "liveness": {
   "answers": true,
   "http": 200,
   "checked": "2026-10-31T05:58:09.804Z"
  }
 }
}