D&D 5e

liveGamesEntertainment

Browse spells, monsters, and classes from the D&D 5th Edition SRD API

4tools
0msauth
free tier50 calls/day

Tools

get_spellrequired: index

Get spell details including damage, range, duration, components, and effects. Provide spell index (e.g., "fireball", "magic-missile", "cure-wounds"). Returns damage dice, range, casting time, and effe

Parameters
NameTypeDescription
indexreqstringSpell index name in kebab-case (e.g. "fireball", "magic-missile").
▶Try it
get_monsterrequired: index

Get monster stats including AC, HP, abilities, skills, senses, and actions. Provide monster index (e.g., "aboleth", "dragon-red-adult", "goblin"). Returns ability scores, skill bonuses, and attack/act

Parameters
NameTypeDescription
indexreqstringMonster index name in kebab-case (e.g. "goblin", "dragon-red-adult").
▶Try it
get_classrequired: index

Get class features, hit dice, proficiencies, and advancement tables. Provide class index (e.g., "barbarian", "wizard", "rogue"). Returns feature progression, proficiency gains, and subclass options.

Parameters
NameTypeDescription
indexreqstringClass index name in lowercase (e.g. "wizard", "fighter", "cleric").
▶Try it
list_spells

Search D&D 5e spells by name or level. Returns spell indices, names, and levels for use with get_spell to fetch full details.

No parameters required.

▶Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/dnd5e/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/dnd5e/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_spell","arguments":{"index": "fireball"}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("get_spell", {"index":"example"});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("browse spells, monsters, and classes from the d&d 5th edition srd api");