Yank

Five sourced lines from a video, podcast, article or PDF, and a check that a quote is in its source

Should I use this

Quality & Safety

A
Description quality
94%
Schema completeness
92%
Naming quality
96%
Poisoning risk
100%
Permission match
90%
Protocol compliance
100%

Findings (2)

  • LOWTool 'recent_yanks' description lacks action verbin recent_yanks
  • LOWTool 'get_lines_for_url' suggests web access but openWorldHint=falsein get_lines_for_url

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,078Tokens (tool definitions)
~516 BTypical response size
Moderate attention impact (0.84% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "yank": {
      "url": "https://yank.info/api/mcp"
    }
  }
}

Remote endpoints

https://yank.info/api/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search_lines(query, limit)

Full-text search across every line yank.info has ever extracted. Returns quotable lines with a verbatim flag (true = literal substring of the source transcript; false = labeled paraphrase), the speaker/author, the source, a timestamp and a moment link where the source is a video, and the permanent card URL to cite. Supports quoted phrases and a leading minus to exclude a word.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Words, a name, a show, or a quoted phrase."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 40,
      "default": 20
    }
  },
  "required": [
    "query"
  ]
}
🟢check_quote(statement, source)

Yank Check: a statement and the source it is supposed to come from, in; a verdict and a receipt, out. FOUND (the words are in the representation Yank inspected), CLOSE MATCH (substantially the same wording, with the difference shown), DISTILLED MATCH (the claim is supported, not in the source's literal words), NOT FOUND (Yank inspected an adequate representation and could not find support), or CAN'T ESTABLISH (Yank could not obtain or inspect enough evidence; the reason says why). With where (a moment for media, the publisher's page opened on the exact words for an article), speaker with the class of that claim (file-stated, representation-stated, not-established), the passage around it, which representation was read (captions, transcript, article text, filing, document) and how much of it (inspected: words, duration), and when. A NOT FOUND is a bounded claim scoped to the representation read, never a claim that the words were not said; a CLOSE MATCH lists the words that differ (difference.tokens), never a similarity number; every verdict carries one plain sentence (finding). No model is consulted: the verdict resolves against the representation itself. Sources Yank already holds check immediately; an article, a public PDF (located by page) or a captioned video is read for the check; audio that would need transcribing is not spent on here and returns CAN'T ESTABLISH with acquisition_required, so yank it first. None of the verdicts is a judgement on whether the statement is true.

Input Schema

{
  "type": "object",
  "properties": {
    "statement": {
      "type": "string",
      "description": "The words to check, as claimed. One claim at a time, up to 600 characters."
    },
    "source": {
      "type": "string",
      "description": "The public http(s) link the statement is supposed to come from."
    }
  },
  "required": [
    "statement",
    "source"
  ]
}
🟢get_yank(slug)

Fetch a yank (five extracted lines from one source) by its slug, the last path segment of a yank.info/y/<slug> URL. Includes every line's verbatim flag, timestamp, moment link, surrounding context, permanent card URL, share image, plus the whole yank as Markdown.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "e.g. stanford-connect-the-dots-looking-1s52rgg"
    }
  },
  "required": [
    "slug"
  ]
}
🟢get_lines_for_url(url)

Ask before you extract: everything yank.info already holds from one source URL. Any form of the link works (a youtu.be short link with a timestamp, a watch URL with a playlist, an article with tracking parameters, an Apple Podcasts or Overcast episode link); equivalent URLs return the same answer. Returns real counts (yanks, lines, verbatim lines) and, for up to five yanks, every line with its verbatim flag, timestamp, moment link, context and permanent card URL. Zero yanks is an answer, not an error. Reads the library only; never fetches the source.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "The source URL in any of its forms."
    }
  },
  "required": [
    "url"
  ]
}
🟢recent_yanks(limit)

The newest yanks in the library, one card each (rank-1 line, author, source type, URL).

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 24,
      "default": 8
    }
  }
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools