8000 fix(math): document registered check tool by Mnehmos · Pull Request #106 · Mnehmos/mnehmos.rpg.mcp · GitHub
[go: up one dir, main page]

Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions src/server/consolidated/math-manage.ts
Original file line number Diff line number Diff line change
Expand Up @@ -300,11 +300,10 @@ export const MathManageTool = {
⚠️ REDIRECT - DO NOT USE FOR:
- Attack rolls → Use combat_action { action: "attack" }
- Spell damage → Use combat_action { action: "cast_spell" }
- Skill checks → Use roll_skill_check (auto-applies proficiency)
- Ability checks → Use roll_ability_check (auto-applies modifier)
- Saving throws → Use roll_saving_throw (auto-applies save proficiency)
- Ability or skill checks → Use improvisation_manage { action: "stunt", actorId, skill, dc, effectType: "none" }
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep raw ability checks out of the skill-only stunt route

When the DM needs a raw Constitution ability check, this redirect cannot represent it: StuntSchema requires one of the 18 skills, and SKILL_TO_ABILITY maps none of them to Constitution, so passing constitution is rejected and choosing an allowed skill uses a different ability. The blanket ability-check guidance should point to a route that accepts an ability or be narrowed until stunt supports raw ability checks.

Useful? React with 👍 / 👎.

- Saving throws → Use the combat/effect tool that requires the save; there is no standalone roll_saving_throw tool on this MCP surface

These specialized tools look up character stats and apply bonuses automatically!
The DM chooses the appropriate skill and DC, and the stunt action rolls the d20 and applies the character's skill modifier automatically. Do not invent or call roll_skill_check, roll_ability_check, or roll_saving_throw; those tools are not registered here.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Do not claim stunt applies full skill modifiers

When a character is proficient or has expertise in the selected skill, this guidance produces an incorrect check total: getSkillModifier in improvisation-manage.ts derives only the associated ability modifier a 8000 nd handleStunt never reads the persisted skillProficiencies or expertise fields. Redirecting general skill checks here while claiming the character's skill modifier is applied will therefore silently omit proficiency and expertise bonuses; either add those bonuses to stunt resolution or avoid presenting it as the general skill-check replacement.

Useful? React with 👍 / 👎.


🎲 DICE ROLLING (roll) - Use ONLY for:
- Stat generation (4d6dl1)
Expand Down
7 changes: 7 additions & 0 deletions tests/server/consolidated/math-manage.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,13 @@ describe('math_manage consolidated tool', () => {
expect(MathManageTool.description).toContain('simplify');
expect(MathManageTool.description).toContain('projectile');
});

it('points RPG checks at the registered stunt tool instead of nonexistent tools', () => {
expect(MathManageTool.description).toContain('improvisation_manage { action: "stunt"');
expect(MathManageTool.description).toContain('there is no standalone roll_saving_throw tool');
expect(MathManageTool.description).not.toContain('Use roll_skill_check');
expect(MathManageTool.description).not.toContain('Use roll_ability_check');
});
});

describe('roll action', () => {
Expand Down
Loading
0