Skip to main content
Glama

ラジ株ナビ (Radikabunavi) - Japanese stock data from EDINET/TDnet

監視リストのメモ・株数・分類を更新

update_watchlist_note
DestructiveIdempotent

監視リストに登録済みの銘柄の、メモ(note)・株数(shares)・取得単価(acquisitionPrice)・分類(category)を書き換えます。 監視リストの銘柄は、お気に入り(ポートフォリオ。category: favorite)と監視(category: watching)に分かれます。 お気に入り(ポートフォリオ)は、保有などを自分で管理する銘柄で、株数(shares)と取得単価(acquisitionPrice・円)を任意で持てます。株数を入れれば保有(holding: true)として扱います。メモは付けられません。 「ポートフォリオに入れて」「お気に入りに入れて」という依頼は category: favorite にあたります。 監視は、気になる銘柄です。メモを付けられます。分類を省略すると監視になります。 同じ銘柄をお気に入りと監視の両方に入れられます(その場合は分類ごとに別の項目です)。 指定した項目だけを変えます。登録日・前回確認日は変わりません(削除して登録し直すと、登録日がリセットされます)。

category(favorite / watching)で、どちらの分類の項目を書き換えるかを指定できます。省略したときは、その銘柄が片方の分類にしか無ければそちらを書き換え、両方にあればエラーで category の指定を求めます。 分類を移す: moveTo: favorite で監視からお気に入り(ポートフォリオ)へ、moveTo: watching でお気に入りから監視へ移します。 移す先に同じ銘柄が既にあるときは移しません。お気に入りから監視へ移すと、株数・取得単価は消えます。監視の件数が上限のときは監視へ移せません。 株数・取得単価: お気に入りにだけ付けられます。null を渡すと消えます。

メモ: 監視の銘柄にだけ付けられます。元のメモは上書きされます。追記するときは、get_watchlist で今のメモを読んでから全文を渡すと、元の内容を残せます。 空文字を渡すと、メモを消します。 メモの上限: 300文字(超えた分は切り詰め、truncated: true)。 登録されていない銘柄は notFound: true で返します(登録はしません。登録は add_to_watchlist)。

※ 本データは情報提供を目的とし、投資助言・推奨ではありません。

Input Schema

NameRequiredDescriptionDefault
codeYes証券コード(例: 7203、140A)
noteNo新しいメモの全文(任意。監視だけ)。空文字でメモを消す
moveToNo分類を移す先(任意)。favorite = お気に入り(ポートフォリオ)、watching = 監視
sharesNo株数(任意。お気に入りだけ。正の数。null で消す)
categoryNo書き換える項目の分類(任意)。favorite = お気に入り(ポートフォリオ)、watching = 監視
acquisitionPriceNo取得単価・円(任意。お気に入りだけ。正の数。null で消す)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • addedInput schema / properties / acquisitionPrice
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "anyOf": [
      +        {
      +          "exclusiveMinimum": 0,
      +          "maximum": 100000000,
      +          "type": "number"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    }
      +  ],
      +  "description": "取得単価・円(任意。お気に入りだけ。正の数。null で消す)"
      +}
    • addedInput schema / properties / category
      Added value: +{
      +  "description": "書き換える項目の分類(任意)。favorite = お気に入り(ポートフォリオ)、watching = 監視",
      +  "enum": [
      +    "favorite",
      +    "watching"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / moveTo
      Added value: +{
      +  "description": "分類を移す先(任意)。favorite = お気に入り(ポートフォリオ)、watching = 監視",
      +  "enum": [
      +    "favorite",
      +    "watching"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / note / description
      Previous value: -"新しいメモの全文。空文字でメモを消す"New value: +"新しいメモの全文(任意。監視だけ)。空文字でメモを消す"
    • addedInput schema / properties / shares
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "anyOf": [
      +        {
      +          "exclusiveMinimum": 0,
      +          "maximum": 1000000000,
      +          "type": "number"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    }
      +  ],
      +  "description": "株数(任意。お気に入りだけ。正の数。null で消す)"
      +}
    • changedInput schema / required
      Previous value: -[
      -  "code",
      -  "note"
      -]New value: +[
      +  "code"
      +]
  2. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Beyond the destructiveHint=true annotation, the description discloses concrete destructive behavior: notes are overwritten wholesale, an empty string erases the note, 300-char overflow is truncated and flagged with truncated: true, and moving favorite→watching silently deletes shares and acquisitionPrice. It also documents the watching-count upper limit blocking a move and the partial-update guarantee (registration/last-check dates unchanged).

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 operation is front-loaded in sentence one and the body is organized by concern (categories, moveTo, shares, note, limits, errors). It is long but nearly every sentence carries a distinct rule; minor tightening of the category explanations would be possible.

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?

With no output schema, the description still communicates the return signals an agent needs (notFound: true, truncated: true) and covers all six parameters plus the cross-category edge cases. Nothing essential for correct invocation is missing for a mutation tool of this complexity.

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

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Even with 100% schema coverage, the description adds meaning the schema cannot: shares/acquisitionPrice are only valid on favorite and null clears them, note is only valid on watching and empty string clears it, and category omission has conditional fallback/error semantics. These are genuine semantic rules, not restatements of the field descriptions.

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 first sentence names a specific verb (書き換えます) and the exact resources it touches (note, shares, acquisitionPrice, category) on an already-registered watchlist stock. It is immediately distinguishable from siblings add_to_watchlist (which registers), get_watchlist (which reads) and remove_from_watchlist.

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 explicitly routes the agent: unregistered codes return notFound and the description names add_to_watchlist instead; to append a note it tells the agent to read via get_watchlist first and pass the full text. It also states when to use moveTo versus category, and what happens when category is omitted (single match rewritten, ambiguous match errors out).

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