Skip to main content
Glama

jp_lit_search_cache_index

Read-onlyIdempotent

Search saved search result caches from Japanese literature databases. Retrieve matching result references and cache keys with optional filters for source, date, and session.

Instructions

read-only。保存済みの三 candidate tool(jp_lit_search / jp_lit_search_fulltext / jp_lit_record_ndl_browser_search)の cache を横断検索し、再抽出や export に渡せる result_ref / result_refs と互換 cache_key 一覧を返す。新規に外部検索したい場合は jp_lit_search、保存済み cache の棚卸しは jp_lit_list_cache、検索結果の集合演算や重複確認は jp_lit_refine_results を使う。ローカル cache と session 紐づけを読むだけで、cache や session は変更しない

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo返す cache entry の最大件数。最大 200。
queryYes保存済み candidate result 内で探す語。元の検索語、タイトル、著者、件名、source_id を NFKC 正規化して部分一致検索する。
sourceNo保存済み検索結果の source を絞る。例: ndl_catalog, cinii_books, ndl_digital。未指定なら source を問わない。
saved_onNocache 保存日の簡易指定。YYYY-MM-DD, today, yesterday, last_7_days のいずれか。
saved_toNocache saved_at の上限 ISO datetime。saved_from と組み合わせて保存時刻を絞る。
issued_toNo結果 item の issued_at 上限。issued_from と組み合わせて刊行年範囲を絞る。
saved_fromNocache saved_at の下限 ISO datetime。saved_on より細かく保存時刻を絞る場合に使う。
session_idNoこのセッションに紐づく candidate result cache だけを検索する。未指定なら全セッションに紐づく cache を対象にする。
issued_fromNo結果 item の issued_at 下限。年だけの '1900' など、既存データと同じ文字列表現で比較する。

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
itemsYes
limitYes
queryYes
totalYes
sourceYes
saved_onYes
saved_toYes
issued_toYes
cache_keysYes
saved_fromYes
session_idYes
issued_fromYes
result_refsYes
saved_on_resolvedYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changedv0.14.0
    • changedInput schema / properties / query / description
      Previous value: -"保存済み jp_lit_search 結果内で探す語。元の検索語、タイトル、著者、件名、source_id を NFKC 正規化して部分一致検索する。"New value: +"保存済み candidate result 内で探す語。元の検索語、タイトル、著者、件名、source_id を NFKC 正規化して部分一致検索する。"
    • changedInput schema / properties / session_id / description
      Previous value: -"このセッションに紐づく jp_lit_search cache だけを検索する。未指定なら全セッションに紐づく cache を対象にする。"New value: +"このセッションに紐づく candidate result cache だけを検索する。未指定なら全セッションに紐づく cache を対象にする。"
    • changedInput schema / properties / source / description
      Previous value: -"保存済み検索結果の source を絞る。例: ndl_catalog, cinii_books。未指定なら source を問わない。"New value: +"保存済み検索結果の source を絞る。例: ndl_catalog, cinii_books, ndl_digital。未指定なら source を問わない。"
    • addedOutput schema / properties / items / items / properties / result_ref
      Added value: +{
      +  "$ref": "#/properties/result_refs/items"
      +}
    • addedOutput schema / properties / items / items / properties / tool
      Added value: +{
      +  "$ref": "#/properties/result_refs/items/properties/tool"
      +}
    • changedOutput schema / properties / items / items / required
      Previous value: -[
      -  "cache_key",
      -  "session_ids",
      -  "saved_at",
      -  "source",
      -  "query_preview",
      -  "total",
      -  "item_count",
      -  "matched_fields"
      -]New value: +[
      +  "tool",
      +  "result_ref",
      +  "cache_key",
      +  "session_ids",
      +  "saved_at",
      +  "source",
      +  "query_preview",
      +  "total",
      +  "item_count",
      +  "matched_fields"
      +]
    • addedOutput schema / properties / result_refs
      Added value: +{
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "cache_key": {
      +        "pattern": "^sha256-[0-9a-f]{64}$",
      +        "type": "string"
      +      },
      +      "tool": {
      +        "enum": [
      +          "jp_lit_search",
      +          "jp_lit_search_fulltext",
      +          "jp_lit_record_ndl_browser_search"
      +        ],
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "tool",
      +      "cache_key"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "query",
      -  "session_id",
      -  "source",
      -  "issued_from",
      -  "issued_to",
      -  "saved_on",
      -  "saved_on_resolved",
      -  "saved_from",
      -  "saved_to",
      -  "total",
      -  "limit",
      -  "cache_keys",
      -  "items"
      -]New value: +[
      +  "query",
      +  "session_id",
      +  "source",
      +  "issued_from",
      +  "issued_to",
      +  "saved_on",
      +  "saved_on_resolved",
      +  "saved_from",
      +  "saved_to",
      +  "total",
      +  "limit",
      +  "result_refs",
      +  "cache_keys",
      +  "items"
      +]
  2. Changed2 schema fields changedv0.13.0
    • changedInput schema / properties / source / enum
      Previous value: -[
      -  "ndl_search",
      -  "ndl_catalog",
      -  "ndl_digital",
      -  "ndl_articles",
      -  "ndl_articles_online",
      -  "irdb",
      -  "jdcat",
      -  "jstage_articles",
      -  "japan_search",
      -  "cinii_articles",
      -  "cinii_dissertations",
      -  "cinii_books",
      -  "kokkai_minutes",
      -  "teikoku_minutes",
      -  "nihu_bridge",
      -  "national_archives",
      -  "jacar",
      -  "nijl_articles",
      -  "kokusho",
      -  "ninjal_bibliography"
      -]New value: +[
      +  "ndl_search",
      +  "ndl_reference_books",
      +  "ndl_catalog",
      +  "ndl_digital",
      +  "ndl_articles",
      +  "ndl_articles_online",
      +  "irdb",
      +  "jdcat",
      +  "jstage_articles",
      +  "japan_search",
      +  "cinii_articles",
      +  "cinii_dissertations",
      +  "cinii_books",
      +  "kokkai_minutes",
      +  "teikoku_minutes",
      +  "nihu_bridge",
      +  "national_archives",
      +  "jacar",
      +  "nijl_articles",
      +  "kokusho",
      +  "ninjal_bibliography"
      +]
    • changedOutput schema / properties / source / anyOf
      Previous value: -[
      -  {
      -    "enum": [
      -      "ndl_search",
      -      "ndl_catalog",
      -      "ndl_digital",
      -      "ndl_articles",
      -      "ndl_articles_online",
      -      "irdb",
      -      "jdcat",
      -      "jstage_articles",
      -      "japan_search",
      -      "cinii_articles",
      -      "cinii_dissertations",
      -      "cinii_books",
      -      "kokkai_minutes",
      -      "teikoku_minutes",
      -      "nihu_bridge",
      -      "national_archives",
      -      "jacar",
      -      "nijl_articles",
      -      "kokusho",
      -      "ninjal_bibliography"
      -    ],
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "enum": [
      +      "ndl_search",
      +      "ndl_reference_books",
      +      "ndl_catalog",
      +      "ndl_digital",
      +      "ndl_articles",
      +      "ndl_articles_online",
      +      "irdb",
      +      "jdcat",
      +      "jstage_articles",
      +      "japan_search",
      +      "cinii_articles",
      +      "cinii_dissertations",
      +      "cinii_books",
      +      "kokkai_minutes",
      +      "teikoku_minutes",
      +      "nihu_bridge",
      +      "national_archives",
      +      "jacar",
      +      "nijl_articles",
      +      "kokusho",
      +      "ninjal_bibliography"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  3. Changed1 schema field changedv0.9.0
    • changedInput schema / properties / session_id / pattern
      Previous value: -"^\\d{4}-\\d{2}-\\d{2}-\\d{6}$"New value: +"^\\d{4}-\\d{2}-\\d{2}-\\d{6}(?:-[0-9a-f]{8})?$"
  4. Changed2 schema fields changedv0.7.7
    • changedInput schema / properties / source / enum
      Previous value: -[
      -  "ndl_search",
      -  "ndl_catalog",
      -  "ndl_digital",
      -  "ndl_articles",
      -  "ndl_articles_online",
      -  "irdb",
      -  "jdcat",
      -  "jstage_articles",
      -  "japan_search",
      -  "cinii_articles",
      -  "cinii_books",
      -  "kokkai_minutes",
      -  "teikoku_minutes",
      -  "nihu_bridge",
      -  "national_archives",
      -  "jacar",
      -  "nijl_articles",
      -  "kokusho",
      -  "ninjal_bibliography"
      -]New value: +[
      +  "ndl_search",
      +  "ndl_catalog",
      +  "ndl_digital",
      +  "ndl_articles",
      +  "ndl_articles_online",
      +  "irdb",
      +  "jdcat",
      +  "jstage_articles",
      +  "japan_search",
      +  "cinii_articles",
      +  "cinii_dissertations",
      +  "cinii_books",
      +  "kokkai_minutes",
      +  "teikoku_minutes",
      +  "nihu_bridge",
      +  "national_archives",
      +  "jacar",
      +  "nijl_articles",
      +  "kokusho",
      +  "ninjal_bibliography"
      +]
    • changedOutput schema / properties / source / anyOf
      Previous value: -[
      -  {
      -    "enum": [
      -      "ndl_search",
      -      "ndl_catalog",
      -      "ndl_digital",
      -      "ndl_articles",
      -      "ndl_articles_online",
      -      "irdb",
      -      "jdcat",
      -      "jstage_articles",
      -      "japan_search",
      -      "cinii_articles",
      -      "cinii_books",
      -      "kokkai_minutes",
      -      "teikoku_minutes",
      -      "nihu_bridge",
      -      "national_archives",
      -      "jacar",
      -      "nijl_articles",
      -      "kokusho",
      -      "ninjal_bibliography"
      -    ],
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "enum": [
      +      "ndl_search",
      +      "ndl_catalog",
      +      "ndl_digital",
      +      "ndl_articles",
      +      "ndl_articles_online",
      +      "irdb",
      +      "jdcat",
      +      "jstage_articles",
      +      "japan_search",
      +      "cinii_articles",
      +      "cinii_dissertations",
      +      "cinii_books",
      +      "kokkai_minutes",
      +      "teikoku_minutes",
      +      "nihu_bridge",
      +      "national_archives",
      +      "jacar",
      +      "nijl_articles",
      +      "kokusho",
      +      "ninjal_bibliography"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  5. Changed9 schema fields changedv0.7.1
    • addedInput schema / properties / issued_from / description
      Added value: +"結果 item の issued_at 下限。年だけの '1900' など、既存データと同じ文字列表現で比較する。"
    • addedInput schema / properties / issued_to / description
      Added value: +"結果 item の issued_at 上限。issued_from と組み合わせて刊行年範囲を絞る。"
    • addedInput schema / properties / limit / description
      Added value: +"返す cache entry の最大件数。最大 200。"
    • addedInput schema / properties / query / description
      Added value: +"保存済み jp_lit_search 結果内で探す語。元の検索語、タイトル、著者、件名、source_id を NFKC 正規化して部分一致検索する。"
    • addedInput schema / properties / saved_from / description
      Added value: +"cache saved_at の下限 ISO datetime。saved_on より細かく保存時刻を絞る場合に使う。"
    • addedInput schema / properties / saved_on / description
      Added value: +"cache 保存日の簡易指定。YYYY-MM-DD, today, yesterday, last_7_days のいずれか。"
    • addedInput schema / properties / saved_to / description
      Added value: +"cache saved_at の上限 ISO datetime。saved_from と組み合わせて保存時刻を絞る。"
    • addedInput schema / properties / session_id / description
      Added value: +"このセッションに紐づく jp_lit_search cache だけを検索する。未指定なら全セッションに紐づく cache を対象にする。"
    • addedInput schema / properties / source / description
      Added value: +"保存済み検索結果の source を絞る。例: ndl_catalog, cinii_books。未指定なら source を問わない。"
  6. Changed2 schema fields changedv0.6.0
    • changedInput schema / properties / source / enum
      Previous value: -[
      -  "ndl_search",
      -  "ndl_catalog",
      -  "ndl_digital",
      -  "ndl_articles",
      -  "ndl_articles_online",
      -  "irdb",
      -  "jdcat",
      -  "jstage_articles",
      -  "japan_search",
      -  "cinii_articles",
      -  "cinii_books",
      -  "kokkai_minutes",
      -  "teikoku_minutes",
      -  "nihu_bridge",
      -  "national_archives",
      -  "jacar"
      -]New value: +[
      +  "ndl_search",
      +  "ndl_catalog",
      +  "ndl_digital",
      +  "ndl_articles",
      +  "ndl_articles_online",
      +  "irdb",
      +  "jdcat",
      +  "jstage_articles",
      +  "japan_search",
      +  "cinii_articles",
      +  "cinii_books",
      +  "kokkai_minutes",
      +  "teikoku_minutes",
      +  "nihu_bridge",
      +  "national_archives",
      +  "jacar",
      +  "nijl_articles",
      +  "kokusho",
      +  "ninjal_bibliography"
      +]
    • changedOutput schema / properties / source / anyOf
      Previous value: -[
      -  {
      -    "enum": [
      -      "ndl_search",
      -      "ndl_catalog",
      -      "ndl_digital",
      -      "ndl_articles",
      -      "ndl_articles_online",
      -      "irdb",
      -      "jdcat",
      -      "jstage_articles",
      -      "japan_search",
      -      "cinii_articles",
      -      "cinii_books",
      -      "kokkai_minutes",
      -      "teikoku_minutes",
      -      "nihu_bridge",
      -      "national_archives",
      -      "jacar"
      -    ],
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "enum": [
      +      "ndl_search",
      +      "ndl_catalog",
      +      "ndl_digital",
      +      "ndl_articles",
      +      "ndl_articles_online",
      +      "irdb",
      +      "jdcat",
      +      "jstage_articles",
      +      "japan_search",
      +      "cinii_articles",
      +      "cinii_books",
      +      "kokkai_minutes",
      +      "teikoku_minutes",
      +      "nihu_bridge",
      +      "national_archives",
      +      "jacar",
      +      "nijl_articles",
      +      "kokusho",
      +      "ninjal_bibliography"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  7. Changed2 schema fields changedv0.3.0
    • changedInput schema / properties / source / enum
      Previous value: -[
      -  "ndl_search",
      -  "ndl_catalog",
      -  "ndl_digital",
      -  "ndl_articles",
      -  "ndl_articles_online",
      -  "irdb",
      -  "jdcat",
      -  "jstage_articles",
      -  "japan_search",
      -  "cinii_articles",
      -  "cinii_books",
      -  "kokkai_minutes",
      -  "teikoku_minutes",
      -  "nihu_bridge"
      -]New value: +[
      +  "ndl_search",
      +  "ndl_catalog",
      +  "ndl_digital",
      +  "ndl_articles",
      +  "ndl_articles_online",
      +  "irdb",
      +  "jdcat",
      +  "jstage_articles",
      +  "japan_search",
      +  "cinii_articles",
      +  "cinii_books",
      +  "kokkai_minutes",
      +  "teikoku_minutes",
      +  "nihu_bridge",
      +  "national_archives",
      +  "jacar"
      +]
    • changedOutput schema / properties / source / anyOf
      Previous value: -[
      -  {
      -    "enum": [
      -      "ndl_search",
      -      "ndl_catalog",
      -      "ndl_digital",
      -      "ndl_articles",
      -      "ndl_articles_online",
      -      "irdb",
      -      "jdcat",
      -      "jstage_articles",
      -      "japan_search",
      -      "cinii_articles",
      -      "cinii_books",
      -      "kokkai_minutes",
      -      "teikoku_minutes",
      -      "nihu_bridge"
      -    ],
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "enum": [
      +      "ndl_search",
      +      "ndl_catalog",
      +      "ndl_digital",
      +      "ndl_articles",
      +      "ndl_articles_online",
      +      "irdb",
      +      "jdcat",
      +      "jstage_articles",
      +      "japan_search",
      +      "cinii_articles",
      +      "cinii_books",
      +      "kokkai_minutes",
      +      "teikoku_minutes",
      +      "nihu_bridge",
      +      "national_archives",
      +      "jacar"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  8. First observedv0.1.9

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, covering safety. The description adds context: it searches only caches of three specific tools, returns keys compatible with result_ref/result_refs, and explicitly states it only reads local cache/session bindings without modification. This is consistent with annotations and adds scope detail beyond them.

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?

Two dense sentences that front-load the core purpose and safety, then provide routing guidance. No wasted words, and all information is relevant and ordered logically.

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 9-parameter tool with a complete output schema and safety annotations, the description covers purpose, usage boundaries, and routing. It does not need to repeat schema details; the output schema handles return format. Nothing critical is missing for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/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 does not elaborate on individual parameters beyond what the schema provides, but it does clarify the overall search context (within saved caches of the three tools). This adds minimal parameter-specific value; the schema already describes each field precisely.

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?

Description states a specific verb ('横断検索' - cross-search) over a defined resource (caches of three named candidate tools) and the output (result_ref/result_refs compatible cache_key list). It distinguishes itself from siblings by explicitly naming them and the actions they perform.

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?

Explicitly routes the agent: use jp_lit_search for new external searches, jp_lit_list_cache for cache inventory, and jp_lit_refine_results for set operations/dedup. Clear when to use this tool vs alternatives, with no ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.