Skip to main content
Glama
yk4464
by yk4464

BLACK SOULS MCP

简体中文 · English

CI Node.js 18+ License: MIT

一个 BLACK SOULS 的 MCP。最直白的说法:让 Claude Code / Codex 这类 agent 直接接入这款游戏。纯娱乐。

原理很简单:读游戏内部对象拿状态,再把动作送进游戏自带的按键输入循环。不截图、不模拟鼠标、也不需要图片模型,所以非图像模型也能用。寻路、对话、菜单、战斗都在真机上校准过,不是概念 demo。

IMPORTANT

本仓库只包含桥接程序与 MCP 源码,不包含、不下载、也不分发游戏本体、存档、素材、密钥或解包后的商业游戏数据。使用前请自行准备合法获得的游戏文件。

能干嘛?

接入后,MCP 客户端能拿到:

  • 场景、地图、坐标、朝向、通行信息

  • 附近事件、消息、选项菜单

  • 队伍等级、生命、魔力、异常状态、金钱

  • 战斗阶段、双方单位、当前可用指令

也能操控角色:移动、确认、取消、翻页、冲刺,或者一次提交一整套连续动作,比如"往前走三步,再打开菜单看装备"。

输入只经过游戏自身的移动 / 事件 / 菜单 / 战斗处理逻辑,接口不会直接改生命、物品、变量或剧情开关。命令带着进程 ID、启动代次、帧号和命令编号,旧状态和重复命令会被拒绝;快照损坏会自动跳过;游戏在后台被 RPG Maker 暂停时,桥接能恢复键盘循环,不抢前台窗口。

Related MCP server: GachaMCP

跟截图 OCR和鼠标模拟比,差在哪?

截图 / OCR 方案

鼠标模拟方案

BLACK SOULS MCP

状态来源

图像识别,容易看错、看漏

图像识别

直接读游戏内部对象,逐帧精确

需要窗口置顶 / 前台

通常需要

需要

不需要,后台也能恢复输入循环

是否联网

常需要视觉模型服务

视实现而定

纯本地 stdio,不开端口

输入路径

模拟点击 / 按键

模拟点击

走游戏原生输入循环,帧同步

会不会误改存档 / 剧情

视实现而定

视实现而定

不直接改生命、物品、变量、剧情开关

更准、更快、更不容易翻车,而且不需要多模态

MCP 工具

共 36 个工具,按用途分组:

分组

工具

用途

进程与诊断

black_souls_status · black_souls_launch · black_souls_kill · black_souls_list_saves · black_souls_health

检查游戏文件与桥接、启动或强制结束游戏、列出存档、一键自诊断并给出恢复建议

状态读取

black_souls_get_state · black_souls_get_map · black_souls_situation · black_souls_get_full_map · black_souls_get_event · black_souls_get_scene_detail

场景、角色、消息、菜单、战斗;附近或大范围地图;事件页与触发条件;场景深层状态

游戏数据

black_souls_get_variables · black_souls_get_switches · black_souls_get_inventory · black_souls_get_party_detail

变量、开关、背包物品与装备、队伍详细属性和技能

输入

black_souls_input · black_souls_input_sequence · black_souls_wait

白名单键盘动作、多步连续动作、等待某个游戏条件成立

高层动作

black_souls_navigate · black_souls_interact · black_souls_battle_options · black_souls_battle_action · black_souls_advance_dialogue · black_souls_save · black_souls_load

自动寻路、走到事件旁交互、列出本回合全部可选项(含特技/魔法二级菜单每一条的消耗与是否可用)、一次调用完成战斗回合(攻击/特技/魔法/防御/道具/逃跑)、推进对话并选择选项、存档落盘校验与读档;菜单导航全部闭环回读真实光标,已通过真实游戏校准

AI 记忆

black_souls_scratchpad_read/write · black_souls_memory_read/write/delete · black_souls_goals_read/write/set_active · black_souls_session_log_append/read

会话便签、长期游戏知识库、目标层级、持久会话日志,跨上下文重置保留

评测

black_souls_eval_status

evals/runner.mjs 检查评测场景的完成条件

工作原理

MCP 客户端
    │ stdio
    ▼
Node.js / TypeScript 服务
    │ 原子文件 + 启动令牌
    ▼
BridgeRuntime
    │ RGSS3 Input 与游戏对象
    ▼
使用者准备的 BLACK SOULS 独立副本

桥接脚本每秒约更新 10 次状态;地图仅在位置或地图变化时生成新快照。命令由游戏主线程逐帧处理,不依赖窗口焦点,也不依赖视觉识别。查询类命令(变量、开关、背包、全图等)走同一条通道即时应答,不占用帧步进。

项目状态

平台

Windows 10/11

传输方式

本地 stdio

支持引擎

RPG Maker VX Ace / RGSS3

发布方式

从源码安装;当前未发布 npm 包

游戏版本

内置一个开发时验证过的 Game.exe 指纹,其他版本可自行配置

开始之前

需要准备:

  1. Windows 10/11

  2. Node.js 18 或更新版本

  3. 自己的 BLACK SOULS 游戏副本

  4. Python 3.11+(仅用于桥接脚本写入工具)

  5. 已从自己的副本准备好 Data/Scripts.rvdata2;本项目不会自动下载或解包游戏资源

快速开始

1. 获取源码并检查

git clone https://github.com/yk4464/black-souls-mcp.git
Set-Location .\black-souls-mcp
npm.cmd ci
npm.cmd run check

2. 准备独立运行目录

默认目录结构:

runtime/
├─ game/
│  ├─ Game.exe
│  ├─ Game.ini
│  ├─ Game.rgss3a~
│  └─ Data/Scripts.rvdata2
└─ backup/

runtime/ 已被 Git 忽略。准备步骤概述:把自己的游戏副本复制到 runtime/game/,确保 Data/Scripts.rvdata2 已解出(可用 scripts/extract_rgss3a_file.py),然后用桥接写入工具把 rgss/BlackSoulsBridge.rb 注入脚本档:

python .\scripts\patch_rvdata2_binary.py .\runtime\game\Data\Scripts.rvdata2 .\rgss\BlackSoulsBridge.rb --backup .\runtime\backup\Scripts.rvdata2.bak

patch_rvdata2_binary.py 只用 Python 标准库,保持原字节布局,优先使用;备选的 patch_rvdata2.py 需要先 python -m pip install -r requirements-tools.txt

3. 安装到 Codex

Set-ExecutionPolicy -Scope Process Bypass
.\install.ps1

使用外部目录:

.\install.ps1 `
  -RuntimeRoot 'D:\BlackSoulsRuntime' `
  -GameDir 'D:\BlackSoulsRuntime\game'

安装脚本会先备份当前用户的 Codex config.toml,再写入 black_souls MCP 注册。完成后重启 Codex。

4. 验证

重启 Codex 后先调用:

请调用 black_souls_status,检查游戏文件和桥接状态。

随后可以依次调用:

black_souls_launch
black_souls_get_state
black_souls_get_map

连续动作参数示例:

{
  "steps": [
    { "action": "move_up" },
    { "wait_frames": 12 },
    { "action": "confirm" }
  ]
}

游戏版本指纹

获取自己的 Game.exe SHA-256:

(Get-FileHash -Algorithm SHA256 -LiteralPath '.\runtime\game\Game.exe').Hash

然后在当前终端指定:

$env:BLACK_SOULS_GAME_EXE_SHA256 = '<YOUR_SHA256>'

设为空字符串会跳过指纹比较,但仍会检查必需文件是否存在。只有在确认游戏文件来源后才应这样做。

环境变量

变量

说明

BLACK_SOULS_ROOT

运行目录;默认 <仓库>/runtime

BLACK_SOULS_DIR

准备好的独立游戏目录

BLACK_SOULS_GAME_EXE_SHA256

可选的 Game.exe 校验值

BLACK_SOULS_TEST_TEMP

单元测试临时目录

BLACK_SOULS_EXPECTED_SAVE_COUNT

可选的集成测试最少存档数

测试

npm.cmd run check              # 构建、MCP 握手、工具发现与合成测试
npm.cmd run test:integration   # 需要已准备的运行目录
npm.cmd run test:live          # 启动游戏并执行真实键盘输入
.\check.ps1 -IncludeRuntime    # 检查源码、游戏副本和 Codex 注册
node evals\runner.mjs menu_navigation   # 运行一个评测场景(需要真实游戏)

真实测试会改变当前游戏会话中的位置或菜单,但不会主动保存。运行前仍建议保留自己的存档副本。

限制与故障提示

  • 游戏资源准备与解包方式取决于发行版本,因此未做成自动下载流程

  • RPG Maker 在后台可能暂停键盘循环;服务使用已核对进程和路径的 Windows 消息恢复循环,不模拟鼠标,也不把窗口切到前台

  • 命令超时后若提示"游戏可能已经接收",应先读取最新状态,再决定是否重试,避免重复动作

  • 本项目仅面向本机可信目录,不应把 BridgeRuntime 放到其他用户可写的位置

卸载与回滚

.\uninstall.ps1
.\rollback.ps1

两者只处理 Codex 注册及其配置备份,不删除游戏或存档。指定某个备份进行回滚:

.\rollback.ps1 -ConfigBackup 'D:\BlackSoulsRuntime\backup\config.toml.before-black-souls-....bak'

安全与隐私

  • 服务只使用本地 stdio,不会监听网络端口

  • 命令动作使用固定白名单,并限制队列、步骤和总帧数

  • 仓库忽略游戏、存档、运行快照、日志、依赖缓存和构建产物

  • 提交问题前请移除个人路径、存档内容和游戏文件

安全问题请通过 GitHub Security Advisory 私下报告;其他问题使用 Issues

参与贡献

请先阅读 CONTRIBUTING.mdpackage.json 中保留 private: true,用于防止误发布到 npm;这不影响 GitHub 上的 MIT 开源源码。

许可证与声明

本仓库源码采用 MIT License

BLACK SOULS、RPG Maker、相关名称和游戏资产归各自权利人所有;本项目是非官方社区工具,与游戏作者、发行商及引擎厂商无隶属关系。

Available Tools

36 tools
black_souls_advance_dialogueB

Advance active dialogue until it ends or a choice appears, optionally selecting a choice.

ParametersJSON Schema
NameRequiredDescriptionDefault
timeout_msNo
choice_indexNo
max_advancesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3.1/5.0
Behavior2/5

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

Annotations provide no hints (all false), so description should disclose side effects. It does not explain what happens if no dialogue is active, if timeout occurs, or the outcome of advancing beyond dialogue end. Only implies mutation and progression.

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?

Single sentence is maximally concise and front-loaded, containing core functionality without fluff. Every word serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an output schema exists but is not described, the description omits return values, error scenarios, and behavior on dialogue termination vs choice appearance. For a tool with many siblings, this leaves important gaps.

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

Parameters2/5

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

Schema has 0% description coverage. Description only correlates 'choice_index' to 'selecting a choice' implicitly, but does not explain 'timeout_ms' (e.g., max wait per advance) or 'max_advances' (e.g., number of line skips). Agents would need to infer their purpose.

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 the verb 'advance' and the resource 'active dialogue', specifying it continues until dialogue ends or a choice appears, with optional choice selection. This distinguishes it from sibling tools like black_souls_input.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like input sequences or when to avoid it. No prerequisites mentioned, e.g., ensuring dialogue is active.

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

black_souls_battle_actionA

Execute one battle turn in a single call: pick the command (attack / skill(特技) / magic(魔法) / guard / item / flee), the list index, and the enemy target; menu navigation is closed-loop against the real cursor. Indices come from black_souls_battle_options; a choice the battler cannot afford is refused before any input is spent. Returns resulting party (including MP/TP) and enemy state.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYes
item_indexNo
timeout_msNo
enemy_indexNo
skill_indexNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4/5.0
Behavior4/5

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

Annotations provide no hints, so the description adds value by disclosing closed-loop menu navigation and upfront cost validation, which are important behavioral traits beyond the schema.

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?

The description is concise, front-loaded with the core purpose, and every sentence provides essential information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

While output schema is present, the description lacks details on parameter roles and does not elaborate on the return format beyond stating returned state. Given the tool's complexity, more context would help.

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

Parameters2/5

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

With 0% schema description coverage, the description fails to explain parameters like item_index, timeout_ms, enemy_index, and skill_index. It only alludes to 'list index' and 'enemy target' generically, leaving ambiguity.

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 the tool executes one battle turn with a specific action, referencing sibling black_souls_battle_options for indices. It distinguishes itself as the action executor among battle-related siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It implies the prerequisite of black_souls_battle_options for indices and mentions refusal of unaffordable choices, but does not explicitly state when to use this over other tools like black_souls_interact or black_souls_input.

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

black_souls_battle_optionsA
Read-onlyIdempotent

List everything the acting battler can do this turn: top-level commands, the full contents of every skill and magic submenu (name, MP/TP cost, whether it is usable right now, description), usable battle items with counts, and living enemy targets. Every entry carries the exact index to pass to black_souls_battle_action, so call this before choosing a battle action instead of guessing.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false, which are consistent with the description. The description adds valuable behavioral detail: that every entry carries an exact index for use with black_souls_battle_action, going beyond what annotations provide.

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?

The description is two sentences, front-loaded with the tool's main purpose. Every part earns its place: the first sentence lists contents, the second explains the utility of indices. No wasted words.

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?

Despite having no parameters and an output schema, the description comprehensively explains the output: top-level commands, full skill/magic details (including costs and usability), battle items, and enemy targets. This makes the tool's behavior fully clear for an agent to use correctly.

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

Parameters4/5

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

With zero parameters and 100% schema coverage, the description correctly adds no parameter semantics. The baseline for 0 params is 4, and the description appropriately focuses on what the tool returns instead.

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 uses a specific verb 'List everything the acting battler can do this turn' and details the contents (top-level commands, skills, magic, items, enemies). It clearly distinguishes from sibling tools like black_souls_battle_action by stating its purpose as a prerequisite for that action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states 'call this before choosing a battle action instead of guessing,' providing clear when-to-use guidance. It does not explicitly mention when not to use it, but the context is sufficient.

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

black_souls_eval_statusA
Read-onlyIdempotent

Check scenario completion conditions against live game state. Used by the eval runner; returns pass/fail per condition.

ParametersJSON Schema
NameRequiredDescriptionDefault
check_conditionsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds that it returns pass/fail per condition, which is consistent and provides modest additional detail beyond the annotations.

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?

The description is two concise sentences with no redundant words. The first sentence states the action, the second provides context and outcome. Every word contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the tool's purpose and return type, and an output schema presumably details the return structure. However, it omits any explanation of the input parameter structure, which is complex with nested objects and conditional fields. Given the tool's specificity to eval scenarios and the presence of an output schema, the description is moderately complete but has a gap.

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

Parameters1/5

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

The description does not mention the 'check_conditions' parameter. With 0% schema coverage, it is critical for the description to explain the parameter structure, but it fails to do so. The agent must rely solely on the schema, which has enum types and conditional fields.

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 uses specific verb 'check' and resource 'scenario completion conditions', clearly distinguishing from sibling status tools like black_souls_status. The mention of 'used by the eval runner' provides context and differentiates it as an evaluation-specific tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states it is used by the eval runner and returns pass/fail, implying it is for automated scenario completion checks. However, it does not explicitly exclude other use cases or provide alternative tool names for general status queries.

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

black_souls_get_eventA
Read-onlyIdempotent

Inspect an event's pages, trigger conditions, active page, and self-switches.

ParametersJSON Schema
NameRequiredDescriptionDefault
event_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare the tool as read-only, idempotent, and non-destructive. The description adds specific behavioral context on what is inspected (pages, triggers, self-switches), enhancing transparency beyond annotations.

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?

The description is a single, focused sentence that conveys essential information without redundancy. Every word serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, the description does not need to detail return values. It lists key inspected components but omits context about what an 'event' is in the game world, leaving some ambiguity for the agent.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. However, it does not mention the required parameter 'event_id' or explain its meaning, leaving the agent without additional context beyond the schema's technical constraints.

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 the tool inspects an event's pages, trigger conditions, active page, and self-switches, using a specific verb and resource. It distinguishes itself from sibling tools by focusing on event inspection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or contexts. With 30+ sibling tools, this omission limits the agent's ability to choose correctly.

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

black_souls_get_full_mapA
Read-onlyIdempotent

Request map tiles, passability, regions, terrain tags, and events up to radius 20. The scan runs inside one game frame: radius 6 is cheap, radius 20 freezes the game for about a second, so prefer 12 or less.

ParametersJSON Schema
NameRequiredDescriptionDefault
radiusNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4/5.0
Behavior4/5

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

Annotations already indicate read-only and non-destructive behavior. The description adds important performance context (radius 6 is cheap, radius 20 freezes the game), which goes beyond annotations and helps the agent understand runtime impact.

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 sentences only: the first states the purpose, the second provides a critical performance warning. Every sentence adds value; no excess.

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 an output schema present (not shown), the description covers the returned data types and performance trade-offs. For a single-parameter tool with clear annotations, this is sufficiently complete.

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

Parameters4/5

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

Schema coverage is 0%, so the description must explain the parameter. It does so by linking radius to performance cost and limitations, adding semantic value that is not in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool retrieves map tiles, passability, regions, terrain tags, and events within a radius. It provides a specific verb ('request') and resource ('full map'), though it does not explicitly differentiate from siblings like black_souls_get_map.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (when map data is needed) and includes a performance recommendation ('prefer 12 or less'), but does not state when not to use or provide alternatives.

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

black_souls_get_inventoryA
Read-onlyIdempotent

Read the party's current inventory: consumable items, weapons, and armors with counts.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, non-destructive. Description adds that result includes counts per item category but does not detail return format or edge cases. No contradictions.

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?

Single sentence, 14 words, front-loaded with action. No redundancy or unnecessary detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool is simple with no parameters. Output schema exists. Description covers main categories of items. Minor omission: no mention of counts display or sorting, but overall complete for a read-only inventory tool.

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

Parameters4/5

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

Input schema has zero parameters; schema coverage is 100% trivially. Baseline score of 4 is appropriate per rules.

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 clearly states verb 'Read', resource 'party's current inventory', and specific item types (consumable, weapons, armors with counts). Distinguishes from sibling tools like black_souls_get_state and black_souls_get_party_detail.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance, nor mention of alternatives. However, the tool's purpose is self-evident for inventory retrieval, making implicit usage clear.

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

black_souls_get_mapB
Read-onlyIdempotent

Read the current nearby map tiles, passability, and events directly from RGSS3.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint and idempotentHint, so safety profile is clear. The description adds 'directly from RGSS3' but lacks further behavioral context (e.g., performance, refresh behavior).

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?

Single sentence, no wasted words. However, it could benefit from structuring the output items more clearly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a parameterless tool with an output schema, the description is mostly adequate. Lacks mention of the 'nearby' range, but the output schema likely covers that.

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

Parameters4/5

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

No parameters, so baseline is 4. No additional parameter meaning needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it reads nearby map tiles, passability, and events from RGSS3. However, it does not explicitly differentiate from sibling tools like get_full_map or get_event, which could cause confusion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. No comparison with get_full_map or other map-related tools, leaving the agent to infer usage context.

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

black_souls_get_party_detailA
Read-onlyIdempotent

Read detailed party stats, equipment, and learned skills.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so no side effects. The description adds useful context about the returned data (stats, equipment, skills), enhancing understanding beyond annotations.

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?

The description is a single, front-loaded sentence with eight words that directly state the tool's function, with no unnecessary information.

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 presence of an output schema and the tool's simplicity (no parameters), the description provides complete context about its purpose and return value, requiring no additional elaboration.

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?

With zero parameters and 100% schema coverage (vacuously), the description adds valuable meaning by explaining what the tool returns, going well beyond the empty input schema.

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 the tool reads party details (stats, equipment, skills) and distinguishes it from siblings like black_souls_get_inventory, black_souls_get_state, and black_souls_get_event, which focus on other aspects.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for party information but does not explicitly state when to use this tool over alternatives, nor does it provide any exclusions or context about prerequisites.

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

black_souls_get_scene_detailA
Read-onlyIdempotent

Read deeper state for the active map, battle, or menu scene.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already provide read-only and idempotent behavior. The description adds minimal additional behavioral context beyond stating it reads 'deeper state', which is consistent with annotations. No contradiction, but little extra value.

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 very short (one clause), no redundant information. It is front-loaded and efficient, though slightly vague. Could be improved by specifying what 'deeper state' entails.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters, rich annotations, and the presence of an output schema (not shown), the description adequately sets expectations for a read-only tool. It mentions the three relevant scene types (map, battle, menu). The term 'deeper' suggests detail not captured in simpler state tools.

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

Parameters4/5

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

The tool has zero parameters and schema coverage is 100%, so the description does not need to clarify parameters. However, it adds semantic value by specifying the scope (active scene), which is useful context for the agent.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Read' and the resource 'deeper state for the active map, battle, or menu scene'. It distinguishes from sibling tools like get_state or get_map by focusing on 'deeper state' and specific scene types, though the exact meaning of 'deeper' remains somewhat vague.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidelines on when to use this tool versus alternatives. The description implies it is for obtaining detailed state of the current scene, but it does not contrast with related tools like black_souls_get_state or black_souls_get_map, leaving the agent to infer the appropriate context.

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

black_souls_get_stateA
Read-onlyIdempotent

Read current scene, player, party, message, windows, and battle state directly from RGSS3.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the description adds marginal value by noting 'directly from RGSS3', implying raw memory access. No contradictions or additional behavioral notes.

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?

Single sentence of 14 words, front-loaded with verb and resource, no filler.

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 zero parameters, an output schema present, and annotations covering safety, the description adequately lists what components are read. No further information needed for a read-only state dump tool.

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

Parameters4/5

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

Input schema has no parameters, meaning 100% schema coverage. Description adds no further parameter info, but baseline for zero-parameter tools is 4.

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 uses specific verb 'Read' and lists exact resources (scene, player, party, etc.) directly from RGSS3. This clearly distinguishes from sibling tools like black_souls_status which might provide a summary, and black_souls_get_scene_detail which is more focused.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives like black_souls_status or black_souls_get_scene_detail. The description only states what it does, leaving the agent to infer context.

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

black_souls_get_switchesA
Read-onlyIdempotent

Read RPG Maker boolean switches by ID. Request up to 64 IDs per call.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds the batch limit (64 IDs) and confirms the tool reads boolean switches, providing useful behavioral context beyond the annotations.

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 sentences, no wasted words. Concise and front-loaded.

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?

The tool is simple, schema covers all constraints, annotations cover safety, and an output schema exists. The description is complete and informative for its purpose.

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

Parameters4/5

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

Schema has 0% description coverage, but the single parameter 'ids' is explained by the description stating 'by ID' and the batch limit, adding meaning to the array of integers.

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 explicitly states 'Read RPG Maker boolean switches by ID', which is a specific verb and resource. It clearly distinguishes from sibling tools like black_souls_get_variables.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions a batch limit of 64 IDs, which provides usage context, but does not explicitly state when to use this tool over alternatives or when not to use it.

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

black_souls_get_variablesA
Read-onlyIdempotent

Read RPG Maker game variable values by ID. Request up to 64 IDs per call.

ParametersJSON Schema
NameRequiredDescriptionDefault
idsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, covering the safety profile. The description adds the constraint on the number of IDs per call, but does not disclose return format or behavior for invalid IDs. Since annotations cover the core behavioral traits, the description adds marginal value.

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?

The description consists of two short sentences that immediately convey the purpose and a key constraint. Every word is necessary; no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, output schema exists, annotations rich), the description covers the essential purpose and constraint. It does not explain scenarios like missing IDs, but the output schema likely handles that. Overall complete enough for context.

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?

The description mentions 'by ID' and 'up to 64 IDs per call', providing some context for the single parameter 'ids'. However, with schema description coverage at 0%, the description could more explicitly explain that the parameter is an array of integers in the range 1-9999. It adds meaning but is not fully compensatory.

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 the verb 'Read', the resource 'RPG Maker game variable values', and a key constraint 'by ID' and 'Request up to 64 IDs per call'. It distinguishes from siblings like black_souls_get_switches (which reads boolean switches) and black_souls_memory_read (which reads arbitrary memory).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for reading variable values by ID, and gives a constraint on the number of IDs per call. It does not explicitly state when to use this tool versus alternatives, but the naming context and sibling names provide sufficient differentiation.

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

black_souls_goals_readA
Read-onlyIdempotent

Read the persistent objective hierarchy and active goal.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already provide readOnlyHint, idempotentHint, and destructiveHint, covering safety. The description adds 'persistent' and 'hierarchy' but does not elaborate on output format or behavior beyond that. Minimal additional value beyond annotations.

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?

Single sentence with verb first, no filler, perfectly concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and that an output schema exists, the description suffices. It does not explain return value structure, but that is covered by the output schema. Some context about what 'persistent' means could be added, but not essential.

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

Parameters4/5

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

No parameters exist, so the description cannot add meaning beyond the schema. Baseline for 0 parameters is 4 because no parameter documentation is needed.

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 the verb 'Read' and the specific resource 'persistent objective hierarchy and active goal'. It is distinct from siblings like black_souls_goals_write and black_souls_goals_set_active, which cover write and set operations respectively.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or when-not-to-use guidance, but the tool's read-only nature and zero parameters imply that it should be used to retrieve goal state. Since there are no alternative read tools among siblings, the usage is clear by exclusion.

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

black_souls_goals_set_activeA
Idempotent

Choose the gameplay goal currently being pursued, or clear it.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already indicate idempotentHint=true and destructiveHint=false, so no contradiction. The description adds that the tool sets or clears the active goal, which is consistent. However, it does not detail requirements (e.g., goal must exist) or potential side effects.

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?

The description is a single sentence of 12 words, concise and front-loaded with the essential action. No unnecessary information.

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 simple setter with one parameter, the description covers the core behavior completely. The existence of an output schema means return details are not needed. Annotations fill in idempotency and safety traits.

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

Parameters4/5

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

Schema coverage is 0%, so the description must compensate. It explains that the 'id' parameter identifies the goal to set, and that null clears it. This adds meaning beyond the schema's type definition.

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 the verb ('choose' or 'clear') and the resource ('gameplay goal'), and it distinguishes from sibling tools like black_souls_goals_read and black_souls_goals_write by specifying the action of setting the active goal.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (when you want to set or clear the current goal) but does not explicitly state when not to use or mention alternatives. It provides clear context but lacks exclusions.

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

black_souls_goals_writeB
Idempotent

Create or update a persistent gameplay goal.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
notesYes
titleYes
statusYes
priorityYes
parent_idYes
descriptionYes
completion_conditionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3/5.0
Behavior2/5

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

Annotations already declare idempotentHint=true and destructiveHint=false. The description adds no behavioral context beyond what annotations provide. It does not disclose whether updates are full-replacement or merge, nor any side effects like overwriting existing data.

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 a single sentence, very concise with no filler. However, it could be slightly longer to include minimal additional context while remaining efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 8 required parameters and zero schema descriptions, the description is severely incomplete. It does not mention the output schema, which is present according to context. The tool's complexity demands significantly more detail for correct usage.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not explain any of the 8 required parameters. The agent has no guidance on what values to provide for id, title, description, status, priority, parent_id, completion_condition, or notes beyond the schema constraints.

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 the tool's purpose: 'Create or update a persistent gameplay goal.' It uses a specific verb and resource, distinguishing it from sibling tools like black_souls_goals_read (reading) and black_souls_goals_set_active (setting active goal).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. The description implies usage when creating or updating a goal, but does not provide context for when to choose this over other goal-related tools, nor does it mention prerequisites or exclusions.

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

black_souls_healthA
Read-onlyIdempotent

Comprehensive bridge health check with diagnosis and recommended recovery action.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, making the non-destructive nature clear. The description adds that the tool provides 'diagnosis and recommended recovery action,' implying a read-only analysis. However, it does not elaborate on side effects, prerequisites, or edge cases, so it adds only modest value beyond annotations.

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?

The description is a single sentence that succinctly captures the tool's purpose and output. It is front-loaded with no redundant or extraneous content, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters and an output schema exists, the description is largely complete. It explains the core function and expected return (diagnosis and action). However, it could briefly clarify the domain context (e.g., what 'bridge' refers to) to aid agent comprehension without burdening the schema.

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

Parameters4/5

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

The input schema has no parameters, so the description provides no parameter details—which is appropriate. With 0 parameters, a baseline of 4 is justified as no further semantic explanation is needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool performs a 'bridge health check with diagnosis and recommended recovery action.' This differentiates it from siblings like black_souls_status (general status) and action-oriented tools. However, it does not explicitly contrast with similar read tools, and the term 'bridge' is left unexplained.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as black_souls_status or black_souls_get_state. The description lacks contextual cues for appropriate invocation, leaving the agent to infer usage without explicit boundaries.

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

black_souls_inputB

Inject one allowlisted virtual RPG Maker input into the normal game input loop.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYes
repeatNo
timeout_msNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already indicate mutation (readOnlyHint=false) and non-destructive (destructiveHint=false). The description adds that inputs are 'allowlisted' and injected into the 'normal game input loop,' but lacks details on side effects, execution timing, or error conditions. Minimal additional behavioral context.

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?

Single sentence that delivers the core purpose without extraneous words. Highly efficient and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having an output schema (which partly alleviates return value explanation), the description leaves parameter semantics and behavioral details largely unexplained. Given 3 parameters and no schema descriptions, the tool description is too sparse for complete understanding.

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

Parameters1/5

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

The input schema has 3 parameters with no descriptions (0% coverage). The description does not explain any parameter meaning beyond 'one allowlisted input.' No value added over the enum list and integer ranges.

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 the action ('inject') and resource ('normal game input loop'), specifying it's a single allowlisted input. This distinguishes it from sibling tool 'black_souls_input_sequence' which handles multiple inputs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for single inputs but does not explicitly state when to use this over alternatives like 'black_souls_input_sequence' or when not to use it. The context of sibling tools provides some inference, but no direct guidance.

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

black_souls_input_sequenceA

Inject up to 200 allowlisted inputs and frame waits as one ordered sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
stepsYes
timeout_msNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4/5.0
Behavior3/5

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

Annotations already indicate non-read-only and non-destructive. The description adds that it injects inputs, which is consistent. However, it does not disclose additional behavioral traits such as execution order guarantees, whether actions are atomic, or any side effects beyond injection.

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?

The description is a single sentence that is front-loaded with the core purpose. It contains no fluff and earns its place by immediately informing the agent of the tool's key capability and constraints.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (array of mixed objects, 2 parameters, sibling tools) and the presence of an output schema, the description is sufficiently complete. It explains the core function. Minor omission: does not explicitly state that steps are executed sequentially, but this is implied by 'ordered sequence'.

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 0%, so the description must compensate. It adds high-level meaning ('allowlisted inputs and frame waits') but does not detail the specific actions (already in schema enums) or explain parameters like 'repeat' or 'timeout_ms'. The description provides context but not full clarity for all parameters.

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 it injects up to 200 allowlisted inputs and frame waits as an ordered sequence. It uses specific verbs ('inject') and resources ('allowlisted inputs', 'frame waits'), and the name 'input_sequence' distinguishes it from single-input tools like black_souls_input.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when multiple sequential inputs are needed, up to 200. It does not explicitly state when not to use it or mention alternatives, but the sibling tool names (black_souls_input, black_souls_wait) provide clear context for differentiation.

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

black_souls_interactB

Walk up to and interact with a nearby event, optionally selected by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
event_idNo
timeout_msNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3.2/5.0
Behavior2/5

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

With all annotations false, description carries full burden but only says 'walk up to and interact', not disclosing side effects, whether it changes game state, or what constitutes an event. No mention of movement blocking or confirmation dialogs.

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?

Single sentence, no fluff. Every word adds value. However, it may be under-specified given the tool's complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the game's many sibling tools and the presence of an output schema, the description is too minimal. It does not specify what happens when no ID is given (nearest event?), what the output represents, or how timeout interacts with the action. Incomplete for an agent to use effectively.

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 0% so description must compensate. Adds meaning for 'event_id' ('optionally selected by ID') but provides no explanation for 'timeout_ms', leaving its purpose unclear despite schema constraints (2000–60000).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Describes a specific verb ('interact') and resource ('event'), and adds 'walk up to' indicating movement. It is clear but does not differentiate from sibling tools like 'black_souls_advance_dialogue' or 'black_souls_battle_action' which are also interactions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Mentions optional selection by ID, implying use when you want to interact with a specific event. No explicit guidance on when to use this versus alternatives like dialogue or battle actions, leaving context implied.

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

black_souls_killA
DestructiveIdempotent

Forcefully terminate the running BLACK SOULS process. Safe to call when game is not running.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already indicate destructiveHint=true and idempotentHint=true. The description adds value by specifying 'forcefully terminate' (indicating abruptness) and explicitly stating safety when game is not running, which clarifies idempotency beyond the annotation.

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?

The description is two sentences long with no extraneous information. Every word serves a purpose: defining the action and clarifying safety.

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 simplicity (no parameters, clear destructive and idempotent behavior), the description fully covers what the agent needs to know: what it does and that it is safe to call when the game is not running.

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

Parameters4/5

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

The tool has no parameters, and schema description coverage is 100% (trivially). The description does not need to add parameter information; the baseline of 3 is appropriately increased to 4 because there are no parameters to explain.

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 the action: 'forcefully terminate the running BLACK SOULS process.' The verb 'terminate' and resource 'running BLACK SOULS process' are specific and distinct from sibling tools like launch or status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes a safety note 'Safe to call when game is not running,' implying idempotency. However, it does not provide explicit guidance on when to use vs. alternatives (e.g., graceful shutdown) or context for typical use.

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

black_souls_launchB

Launch the independent BLACK SOULS MCP edition and wait for its in-game bridge. The window is minimized after launch by default so real keyboard input cannot leak into the game; inputs keep working through the background wake path.

ParametersJSON Schema
NameRequiredDescriptionDefault
wait_msNo
minimize_windowNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3.3/5.0
Behavior3/5

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

Adds context about minimized window preventing keyboard leakage and input working via background wake path. However, lacks disclosure of idempotency, error handling, or state if already launched.

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?

Two sentences, front-loaded with purpose, then behavioral detail. No redundancy, but could be more structured for clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers key launch behavior and input path, but missing parameter explanations and usage context. Output schema exists but description doesn't reference it or expected return.

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

Parameters1/5

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

Schema has 0% description coverage; description does not mention wait_ms or minimize_window parameters, leaving their purpose and format unexplained.

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?

Clearly states the tool launches the BLACK SOULS MCP edition and waits for its in-game bridge. Distinguishes from sibling tools like black_souls_kill by targeting a distinct action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies usage via description of default minimization behavior, but does not explicitly state when to use versus alternatives or prerequisites. No exclusions or context for calling multiple times.

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

black_souls_list_savesA
Read-onlyIdempotent

List independent MCP-edition save slots and metadata without modifying them.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.8/5.0
Behavior2/5

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

Annotations already provide readOnlyHint=true and idempotentHint=true. The description adds 'without modifying them' but does not disclose additional behavioral traits such as ordering, number of saves returned, or authorization requirements beyond what annotations imply.

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?

A single sentence that is concise and front-loaded with the key action. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters, rich annotations, and an output schema (not shown), the description covers the essential purpose and non-modifying behavior. It could mention what metadata is returned but is otherwise complete.

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

Parameters4/5

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

The tool has zero parameters, so the description does not need to explain parameter meanings. The baseline for 0 params is high, and the description is clear.

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 the verb 'List' and the resource 'independent MCP-edition save slots and metadata'. It distinguishes from siblings like black_souls_save (write) and black_souls_load (load) by emphasizing it does not modify data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit when-to-use or alternatives are provided, but the name and context of siblings imply it is for inspecting saves before loading or deleting. Lacks guidance on when not to use it.

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

black_souls_loadA

Load a save slot from the title screen or the in-game menu and return the resulting state.

ParametersJSON Schema
NameRequiredDescriptionDefault
slotYes
timeout_msNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.6/5.0
Behavior3/5

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

Annotations indicate readOnlyHint=false and destructiveHint=false, which are not contradicted. The description adds the fact that the tool returns the resulting state, but does not elaborate on side effects (e.g., overwriting current progress) or prerequisites. With limited annotation detail, the description provides moderate transparency.

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?

The description is a single clear sentence with no redundancy. It is front-loaded and efficiently communicates the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description adequately conveys the tool's function but lacks parameter details, which could lead to misuse. Given the existence of an output schema, the return value explanation is not required, but the absence of parameter guidance makes it only moderately complete.

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

Parameters1/5

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

Schema description coverage is 0%, so the description must explain parameters. It does not mention 'slot' or 'timeout_ms' at all, offering no additional meaning beyond the raw schema types and ranges.

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 clearly states the action (load), the resource (save slot), and the context (from title screen or in-game menu), and mentions the output (return resulting state). This distinguishes it from siblings like black_souls_save or black_souls_list_saves.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool (to load a save slot) but does not explicitly state when not to use it or list alternatives. However, the context of sibling tools provides implicit guidance.

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

black_souls_memory_deleteB
Idempotent

Delete one long-term memory entry.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYes
categoryYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare idempotentHint true and destructiveHint false, setting expectations for safety. The description adds no additional behavioral context beyond the verb 'delete', but is consistent and minimally adequate given annotations.

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?

A single short sentence that is front-loaded and contains no redundant information; every word is necessary.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having an output schema, the description lacks usage context, parameter semantics, and error scenarios, making it incomplete for a tool that is part of a large set of memory-related siblings.

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

Parameters1/5

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

Schema description coverage is 0% and the description does not explain the parameters 'key' or 'category' at all, leaving the agent without guidance on valid values or formats beyond the enum for category.

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 the tool deletes a long-term memory entry using a specific verb ('delete') and resource ('long-term memory entry'), distinguishing it from siblings like memory_read and memory_write.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives like memory_read or memory_write. No prerequisites, consequences, or error handling mentioned.

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

black_souls_memory_readA
Read-onlyIdempotent

Read long-term game knowledge, optionally filtered by category.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the tool is safe. The description adds that it reads 'long-term game knowledge', which implies persistence, but it does not detail behavioral traits like return format or performance characteristics. Given annotations carry the safety burden, the description adds moderate value.

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?

A single sentence that is front-loaded with the core action ('Read long-term game knowledge') and includes the key optionality. No wasted words; every element contributes.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an output schema exists (not shown) and annotations cover safety, the description is mostly complete for a read operation. However, it could explicitly mention the output format or the scope of 'long-term' (e.g., persists across sessions). The missing category descriptions reduce completeness slightly.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. The description mentions 'optionally filtered by category' but does not list the enum values or explain what each category (map, npc, etc.) signifies. The schema provides the enum, but the description lacks explanatory value beyond the existence of a filter.

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 states 'Read long-term game knowledge, optionally filtered by category.' This is a specific verb-resource pair that clearly distinguishes from sibling tools like black_souls_memory_write (write) and black_souls_scratchpad_read (short-term memory).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus other read-focused siblings (e.g., black_souls_get_variables, black_souls_get_inventory). The description does not mention when not to use or provide context for selecting this over alternatives.

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

black_souls_memory_writeC
Idempotent

Store or update one long-term game knowledge entry.

ParametersJSON Schema
NameRequiredDescriptionDefault
keyYes
valueYes
sourceYes
categoryYes
confidenceYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

C2.4/5.0
Behavior2/5

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

Annotations already provide idempotentHint=true and destructiveHint=false. The description adds no additional behavioral context, such as how updates work, conflict resolution, or any side effects. It does not contradict annotations, but adds minimal value 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.

Conciseness3/5

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

The description is a single sentence, which is concise but too brief to be informative. It lacks structure and detail, yet does not contain unnecessary verbiage. It earns a passing score for brevity but loses points for inadequate completeness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given five required parameters, no schema descriptions, and an existing output schema, the description is severely incomplete. It does not explain the function of each parameter or the tool's behavior in different scenarios. The agent cannot properly invoke the tool based solely on this description.

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

Parameters1/5

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

The description provides no information about the five required parameters (key, value, source, category, confidence). Since schema description coverage is 0%, the description fails to compensate, leaving the agent with no guidance on what each parameter means or how to use them.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool stores or updates a long-term game knowledge entry, which is a specific verb and resource. It distinguishes from sibling tools like black_souls_memory_read and black_souls_memory_delete by implying write operations, but does not explicitly differentiate or name alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., scratchpad_write or session_log_append). The description only states what it does, not when it is appropriate.

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

black_souls_navigateA

Move to a target tile using automatic pathfinding over current passability data.

ParametersJSON Schema
NameRequiredDescriptionDefault
xYes
yYes
timeout_msNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.5/5.0
Behavior3/5

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

Annotations are minimal (readOnlyHint=false, etc.). The description mentions 'automatic pathfinding over current passability data,' hinting at behavior like obstacle avoidance and map constraints, but does not explain failure cases, timeout behavior, or state changes beyond movement.

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 a single efficient sentence that conveys core purpose and behavior. However, it could be slightly more informative about parameters without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema (not shown), the description may not need to detail return values. However, it lacks information on preconditions (e.g., must be on a valid tile) and postconditions, which limits completeness for a navigation tool.

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

Parameters2/5

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

Schema coverage is 0%, yet the description does not explain any parameters (x, y, timeout_ms). The agent must infer that x and y are coordinates and timeout_ms is optional. The description adds no value beyond the schema.

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 the verb ('Move'), resource ('target tile'), and method ('automatic pathfinding'). It distinguishes from sibling tools like black_souls_kill or black_souls_input by focusing on navigation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for movement but does not specify when to use it versus alternatives (e.g., battle actions, interactions). No explicit when-not-to-use context or sibling comparisons.

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

black_souls_saveA

Trigger an in-game save to a specific slot (0-indexed) by injecting menu navigation inputs. Only works from Scene_Map.

ParametersJSON Schema
NameRequiredDescriptionDefault
slotYes
timeout_msNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4/5.0
Behavior4/5

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

The description adds value beyond annotations by revealing that the tool injects menu navigation inputs, which is a key behavioral trait. Annotations do not contradict, but the description could further clarify whether the save overwrites the slot.

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 sentences, each essential. Front-loaded with the core action and constraint. No redundant or filler content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

While the description provides a critical constraint (Scene_Map) and basic purpose, it lacks explanation of the 'timeout_ms' parameter, error handling if not on Scene_Map, and return value details (though output schema may cover that). Adequate but with clear gaps.

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

Parameters2/5

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

Schema description coverage is 0%, yet the description only clarifies that the 'slot' parameter is 0-indexed. It does not explain the 'timeout_ms' parameter, leaving it ambiguous. This partial compensation is insufficient for a tool with 2 parameters.

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 the tool triggers an in-game save to a specific slot by injecting menu navigation inputs. It distinguishes itself from siblings like load and list_saves by specifying the action and the constraint 'Only works from Scene_Map.'

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description indicates the tool only works from Scene_Map, providing a clear usage context. However, it does not explicitly mention when not to use it or provide alternatives (e.g., load for loading saves).

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

black_souls_scratchpad_readA
Read-onlyIdempotent

Read the AI agent's current session scratchpad.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, fully covering safety and side effects. The description adds no behavioral details beyond stating it reads the scratchpad, which is consistent with annotations. No contradictions.

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?

The description is a single, front-loaded sentence of 9 words. Every word contributes meaning without any filler, making it maximally concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no parameters and an existing output schema, the description is largely sufficient for a simple read tool. It could potentially specify what exactly is returned (e.g., 'entire scratchpad content'), but the output schema likely covers this, so the description is adequate.

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

Parameters4/5

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

The tool has no parameters, so schema description coverage is 100% trivially. The description does not need to add parameter semantics. Baseline 4 applies as per guidelines.

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 the action ('Read') and the resource ('the AI agent's current session scratchpad'). This distinguishes it from sibling tools like black_souls_scratchpad_write and other read tools (memory, goals).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide explicit guidance on when to use this tool vs. alternatives, such as black_souls_memory_read or black_souls_goals_read. However, the sibling names and context imply its purpose. No usage restrictions or prerequisites are mentioned.

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

black_souls_scratchpad_writeB

Update notes, flags, or recent actions in the session scratchpad.

ParametersJSON Schema
NameRequiredDescriptionDefault
flagsNo
notesNo
append_actionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3.1/5.0
Behavior2/5

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

Annotations provide minimal info (all false). The description says 'Update' but does not clarify whether writes overwrite or merge, nor the behavior of optional parameters. No mention of persistence or side effects.

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?

A single sentence of 10 words conveys the core purpose without extraneous text. It is front-loaded and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 3 optional parameters (one nested) and many sibling tools, the description lacks context on interaction with scratchpad_read, session scope, and overwrite behavior. An output schema exists but is not available to compensate.

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

Parameters2/5

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

Schema description coverage is 0%. While the description maps 'notes' and 'flags' to the respective parameters, it does not explain their semantics (e.g., flags are boolean keys). The 'append_action' parameter is only partially described as 'recent actions' with no details on frame, action, result.

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 the tool updates the session scratchpad, listing specific fields (notes, flags, recent actions). It distinguishes from siblings like scratchpad_read (read) and memory_write (different resource).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., scratchpad_read for reading, memory_write for memory). The description does not mention exclusions or context.

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

black_souls_session_log_appendC

Append a significant gameplay event to the persistent session log.

ParametersJSON Schema
NameRequiredDescriptionDefault
frameNo
sceneNo
summaryYes
event_typeYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

C2.5/5.0
Behavior2/5

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

Annotations indicate it is read-only false and not idempotent, but the description does not disclose potential side effects like log size limits, ordering guarantees, or whether the append overwrites existing entries. It merely restates the operation.

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

Conciseness2/5

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

While the single sentence is concise, it omits essential details. The description is under-specified for a tool with 4 parameters and no schema descriptions, making it inefficient for correct agent usage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of the game context and the lack of annotation support, the description fails to provide sufficient context. It does not explain the purpose of the session log, how it differs from other storage tools, or when an event is considered 'significant'.

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

Parameters1/5

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

With 0% schema description coverage, the description must explain the parameters. It does not mention 'event_type' enum values, the meaning of 'frame' and 'scene', or constraints on 'summary'. No examples or clarifications are provided.

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 the action ('Append') and the target resource ('persistent session log'). It distinguishes the tool from its sibling 'black_souls_session_log_read', which performs the opposite operation. The qualifier 'significant gameplay event' adds specificity to the intended use.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives such as scratchpad or memory writes. There is no mention of prerequisites, when not to use it, or how it fits into a typical workflow.

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

black_souls_session_log_readB
Read-onlyIdempotent

Read the most recent persistent session log entries.

ParametersJSON Schema
NameRequiredDescriptionDefault
last_nNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds that it reads the 'most recent' entries and that the log is 'persistent', providing some additional context beyond annotations.

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?

The description is a single sentence that is front-loaded and contains no extraneous words. It efficiently conveys the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having an output schema and annotations, the description is too minimal. It omits parameter semantics and does not specify behavior like ordering or limits, making it insufficient for correct invocation.

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

Parameters1/5

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

The description does not explain the sole parameter 'last_n' or its effect (e.g., number of entries to read). With 0% schema description coverage, the tool description should compensate but fails to do so.

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 it reads the most recent persistent session log entries. The verb 'read' and resource 'persistent session log entries' are specific and distinct from sibling tools that append to the log or read other logs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like scratchpad_read or memory_read. There is no mention of appropriate contexts or exclusions.

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

black_souls_situationA
Read-onlyIdempotent

Get a concise snapshot of the current game situation, contextual action suggestions, and warnings.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. Description adds context about content (snapshot, suggestions, warnings) but does not contradict annotations. No additional behavioral traits are disclosed beyond what annotations provide.

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?

Single sentence of 12 words, front-loaded with 'Get a concise snapshot'. Every word is meaningful and there is no waste.

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 has no parameters and an output schema exists, the description adequately explains the three components (snapshot, suggestions, warnings). No additional context is necessary for this simple read operation.

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

Parameters4/5

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

The tool has no parameters, so the schema coverage is 100%. No parameter information is needed in the description; baseline 4 is appropriate.

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 clearly states the tool retrieves a concise snapshot of the current game situation, along with contextual action suggestions and warnings. It uses specific verb 'Get' and resource 'game situation', distinguishing it from siblings like status or get_state.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description implies use for obtaining an overview with suggestions and warnings, but does not explicitly state when to use this tool versus alternatives like black_souls_status or black_souls_get_state. No when-not guidance is provided.

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

black_souls_statusA
Read-onlyIdempotent

Inspect the BLACK SOULS MCP edition and live RGSS3 bridge status.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, which fully cover the tool's behavioral safety. The description adds no behavioral information beyond what is already in annotations, so it meets the baseline without adding extra value.

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?

The description is a single, front-loaded sentence that immediately communicates the tool's purpose with no extraneous words. It is optimally concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters, an output schema exists, and annotations cover safety, the description is sufficiently complete for a simple status inspection. However, mentioning that it is safe to call at any time would slightly improve context.

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

Parameters4/5

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

The tool has zero parameters, so the baseline is 4. The description does not need to add parameter meaning, and it correctly focuses on the tool's purpose.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'inspect' and identifies the resources ('BLACK SOULS MCP edition and live RGSS3 bridge status'), which clearly conveys what the tool does. It distinguishes from sibling tools that perform actions like launch, kill, or state retrieval, but could be more specific about what 'status' entails.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for checking system status but does not explicitly state when to use this tool versus alternatives like black_souls_get_state or black_souls_health. No when-not-to-use guidance is provided.

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

black_souls_waitC
Read-only

Wait until a game condition becomes true before proceeding.

ParametersJSON Schema
NameRequiredDescriptionDefault
conditionYes
timeout_msNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo

TDQS

C2.7/5.0
Behavior3/5

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

Annotations declare readOnlyHint=true, so the tool is safe and non-destructive. The description adds the context of blocking ('before proceeding'), but does not explain polling behavior, potential delays, or failure cases (e.g., timeout). The timeout parameter is not mentioned in the description.

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

Conciseness3/5

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

The description is very concise at one sentence, but it omits essential parameter and behavioral details that would improve usability. While front-loaded with purpose, it sacrifices completeness for brevity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (multiple condition types, a timeout parameter, blocking behavior) and that an output schema exists, the description is insufficient. It does not list condition types or explain how to use timeout, leaving the agent uninformed.

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

Parameters1/5

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

Schema coverage is 0%, so the description must compensate by explaining parameter meanings. It does not mention 'condition' or 'timeout_ms', nor the various condition types (scene, not_scene, battle_end, etc.). The description adds no semantic value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states the verb 'wait' and the resource 'game condition', making the core purpose clear. It distinguishes itself from sibling tools like black_souls_get_state by signaling that it blocks until a condition is met, though it could specify the condition types available.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives (e.g., polling with get_state or using other triggers). The description does not mention prerequisites, exclusions, or recommended scenarios.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 36 tool updatesv1.10.0
    • First observedblack_souls_advance_dialogue
    • First observedblack_souls_battle_action
    • First observedblack_souls_battle_options
    • First observedblack_souls_eval_status
    • First observedblack_souls_get_event
    • First observedblack_souls_get_full_map
    • First observedblack_souls_get_inventory
    • First observedblack_souls_get_map
    • First observedblack_souls_get_party_detail
    • First observedblack_souls_get_scene_detail
    • First observedblack_souls_get_state
    • First observedblack_souls_get_switches
    • First observedblack_souls_get_variables
    • First observedblack_souls_goals_read
    • First observedblack_souls_goals_set_active
    • First observedblack_souls_goals_write
    • First observedblack_souls_health
    • First observedblack_souls_input
    • First observedblack_souls_input_sequence
    • First observedblack_souls_interact
    • First observedblack_souls_kill
    • First observedblack_souls_launch
    • First observedblack_souls_list_saves
    • First observedblack_souls_load
    • First observedblack_souls_memory_delete
    • First observedblack_souls_memory_read
    • First observedblack_souls_memory_write
    • First observedblack_souls_navigate
    • First observedblack_souls_save
    • First observedblack_souls_scratchpad_read
    • First observedblack_souls_scratchpad_write
    • First observedblack_souls_session_log_append
    • First observedblack_souls_session_log_read
    • First observedblack_souls_situation
    • First observedblack_souls_status
    • First observedblack_souls_wait

TDQS

A3.6/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose, covering process management, state inspection, input, memory, goals, navigation, battle, and dialogue. Even tools like black_souls_get_state and black_souls_situation differ in detail and focus.

Naming Consistency5/5

All tools consistently follow the verb_noun pattern with the 'black_souls_' prefix, e.g., black_souls_kill, black_souls_get_state, black_souls_input_sequence. The naming is uniform and predictable.

Tool Count4/5

With 36 tools, the set is comprehensive and each tool serves a specific purpose for game interaction. While it is on the higher end, the complexity of the game justifies the number. A slight reduction could still maintain completeness.

Completeness5/5

The tool set covers all major game operations: launch/stop, state reading, input, save/load, navigation, battle, dialogue, memory/goals, and evaluation. There are no obvious gaps for the intended use case.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

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/yk4464/black-souls-mcp'

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