unified_searchLABSCO SUMMARY
Rules lookup plus the arithmetic nobody enjoys.
The tool list looks long until you notice unified_search covers most of the finding, leaving the detail tools for when you know what you want. The two that are more than lookups are the ones worth the install: encounter difficulty and build comparison are the calculations that otherwise send a DM to a spreadsheet mid-session.
What it is
A reference layer over the Open5e REST API covering the whole 5th Edition content surface. Search tools find things by name or filter; detail tools return the full entry. On top of the lookups sit two composed capabilities — encounter building with difficulty maths, and character build generation with comparison.
What you get
- One search across every content type at once, ranked, with fuzzy matching and an optional type filter
- Spells searched, detailed in full, listed by level, or listed by the class that can cast them
- Classes and races searched and then detailed — hit dice, saves, subclasses, ability increases, traits
- Monsters searched or pulled by exact challenge rating or a CR range
- Weapons, armour, magic items, feats, backgrounds, conditions and rules sections searched and detailed
- An encounter built, and its difficulty calculated
- A character build generated, compared against another, and recommendations returned
Requirements
Network access to the Open5e API. No account, no key — the content it serves is Open5e's.
Setup effort
Build from source — git clone https://github.com/heffrey78/dnd-mcp.git
USE CASES
Answering a rules question at the table
One search across every content type — the answer might be a spell, a condition or a rules section, and you should not have to know which before asking.
Building an encounter that will not wipe the party
Pull monsters at the challenge rating range that fits the party, assemble the encounter, and get the difficulty calculated rather than estimated.
Preparing a spellcaster's list
List what the class can cast, narrow to the level you have slots for, and read the full text of the ones you are actually taking.
Rolling a new character
Compare classes and races on their real numbers — hit dice, saves, ability increases, traits — then generate a build and see what the alternative would have looked like.
Kitting out a party
Search weapons and armour by property, then look up the magic items that would make a fitting reward at this tier.
Settling what a condition actually does
Grappled, restrained, frightened — read the exact text mid-combat rather than three players remembering it three ways.
32 tools
Listed in project docs. Your client may show a different list.
search_spellsget_spell_detailsget_spell_by_levelget_spells_by_classsearch_classesget_class_detailssearch_racesget_race_detailssearch_monstersget_monsters_by_crget_monsters_by_cr_rangesearch_weaponssearch_armorsearch_magic_itemsget_magic_item_detailssearch_featsget_feat_detailssearch_backgroundsget_background_detailsgenerate_character_buildcompare_character_buildsget_build_recommendationsbuild_encountercalculate_encounter_difficultysearch_conditionsget_condition_detailsget_all_conditionssearch_sectionsget_section_detailssearch_spell_listsget_spell_list_detailsBEFORE YOU INSTALL
What to know first
Tools you get
32 tools named in the project's documentation.
Requires
node on PATH
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/heffrey78/dnd-mcp.git
cd dnd-mcp
npm install
npm run buildMCP Clients
Any MCP client
{
"mcpServers": {
"dnd-5e": {
"command": "node",
"args": [
"<YOUR_PATH_TO_DND_MCP>/dist/index.js"
]
}
}
}