Skip to main content
Glama

jp_lit_search_pages

Search pages across NDL Digital Collection materials by keyword to locate matching OCR text and identify relevant page results.

Instructions

external read / local bookkeeping write(非破壊)。NDL デジタルコレクション資料内のページをキーワードで全文検索する(インターネット公開資料のみ)。source_id を使う場合は事前に jp_lit_get_record で next_digital_library.available=true を確認すること。全資料から候補 pid を探す段階では jp_lit_search_fulltext、特定ページの OCR テキストと画像 URL 確認は jp_lit_get_text_coordinates を使う。jp_lit_search_fulltext の結果の pid はそのまま渡してよい 外部sourceは変更しない。cache hitでもlocal session履歴を更新し、cache missまたはforce_refreshではlocal cacheを作成・置換する。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pidNo次世代デジタルライブラリーの pid。jp_lit_search_fulltext の結果から直接渡せる。
fromNo検索結果の offset。0 始まり。
sizeNo返すページ一致の最大件数。最大 100。
sourceYes通常は ndl_digital。source_id を使う場合は jp_lit_get_record で OCR 利用可否を確認してから指定する。
keywordYes資料内 OCR テキストから探す語。
source_idNoNDL デジタルコレクションの source_id。pid が分かる場合は pid を優先できる。
session_idYes調査案件を識別する application state handle。jp_lit_start_session が返した値を渡す。形式は YYYY-MM-DD-HHMMSS-8桁hex(旧形式 YYYY-MM-DD-HHMMSS も可)。MCP transport の接続IDや cache_key とは別物。
force_refreshNotrue の場合はローカル cache を使わず upstream API から再取得する。false の場合は保存済み cache を優先する。

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
pidYes
rawYes
fromYes
cacheNo
itemsNo
totalYes
keywordYes
Install Server

TDQS

A4.6/5.0
Behavior5/5

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

The description discloses important behavior beyond the annotations: it is an external read but performs local bookkeeping writes, is non-destructive, never modifies external sources, updates local session history even on cache hits, and creates/replaces local cache on cache miss or force_refresh. This is consistent with the annotations—readOnlyHint=false matches the local write behavior, and destructiveHint=false matches '非破壊'—so there is no contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is one dense block but every clause carries operational value: scope, sibling routing, source_id precondition, pid pass-through, non-destructive guarantee, and cache behavior. It could be more scannable with a list or clearer sentence breaks, but it is not bloated.

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?

Given the tool's complexity—8 parameters, many siblings, and an output schema—the description covers the essential workflow context: external access pattern, internet-public-only constraint, source_id prerequisite, when to use alternatives, direct pid reuse, and cache/session side effects. The output schema already handles return-value details.

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 description coverage is 100%, so the baseline is 3. The description reinforces parameter relationships like passing jp_lit_search_fulltext pids directly and checking OCR availability before using source_id, but the schema already documents these details, so the description adds little new parameter-level meaning beyond what is already structured.

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?

The description clearly states a specific verb and resource: keyword full-text search of pages inside NDL Digital Collection materials, with the scope constraint of 'インターネット公開資料のみ'(internet-public materials only). It also explicitly distinguishes itself from sibling tools by saying candidate-pid discovery belongs to jp_lit_search_fulltext and specific-page OCR/image checks belong to jp_lit_get_text_coordinates.

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?

It provides explicit routing: use jp_lit_search_fulltext when searching candidate pids across all materials, use jp_lit_get_text_coordinates for page-level OCR text and image URLs, and check jp_lit_get_record first when using source_id. It also states that pids from jp_lit_search_fulltext can be passed directly, leaving no ambiguity about when to invoke this tool.

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

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/itarunnn/jp-lit-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server