Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
DDB_NO_SANDBOXNoSet to 1 to disable Chromium sandboxing. Required in some container/CI environments.
DDB_CHARACTER_CACHE_TTLNoCharacter sheet cache lifetime in seconds. Lower values give fresher HP/spell slot data during live play at the cost of more API calls.60

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
ddb_loginA

Launch a browser and log into D&D Beyond. A Chrome window will open for you to complete login — it closes automatically once your session is saved. After that, character tools work without any browser.

ddb_close_browserA

Close the background browser window if one is open. Useful after running ddb_navigate, ddb_interact, or ddb_get_page.

ddb_clear_cacheA

Wipe in-process caches so the next call re-fetches from D&D Beyond. Use this when search results look like the SRD/Open5e fallback (e.g. 2024 cantrips missing from spell results) after you've logged in — the partial compendium build is cached for up to 5 minutes and this forces an immediate retry. cache='spells' (default) clears just the spell/reference compendium; 'all' wipes every cache.

ddb_list_charactersA

List all characters in your D&D Beyond account, including their ID, level, race, and class. Requires login — run ddb_login first if you haven't already.

ddb_get_character_rawA

Returns raw 300–500 KB character JSON. Requires confirm_large_response: true. Use ddb_get_character instead for all normal use. Requires login — run ddb_login first if you haven't already.

ddb_download_characterA

Download a character's full JSON data to a local file. Requires login — run ddb_login first if you haven't already.

ddb_get_characterA

Parse and display a character sheet. Use sections to reduce output: summary (vitals+stats), combat (adds actions/weapons), spells (spellcasting only), inventory, features, concentration, notes (backstory, traits, bonds), or full (default). Requires login — run ddb_login first if you haven't already.

ddb_character_lookupA

Look up the full description of a spell, feat, class feature, subclass feature, racial trait, background feature, or equipped item by name. Supports partial and fuzzy name matching (e.g. 'cutting' finds Cutting Words, 'sheild' finds Shield). Accepts either a numeric character_id or a character_name. Requires login — run ddb_login first if you haven't already.

ddb_search_monstersA

Search the D&D Beyond monster compendium by name, CR, type, or size. Returns a summary list. Use ddb_get_monster for the full stat block. Requires login.

ddb_get_monsterA

Get the full stat block for a specific monster from the D&D Beyond compendium. Searches by name (partial match). Requires login.

ddb_get_campaignA

Fetch campaign information including player characters from a D&D Beyond campaign. Requires login — run ddb_login first if you haven't already.

ddb_list_campaignsA

List all D&D Beyond campaigns you are part of (as DM or player). Requires login — run ddb_login first if you haven't already.

ddb_get_partyA

Fetch a compact summary of every character in a campaign. Returns HP, AC, initiative, passive scores, ability scores, and skills for the whole party in one call. Requires login — run ddb_login first if you haven't already.

ddb_navigateA

Navigate to any D&D Beyond URL and return the page's text content. Only dndbeyond.com URLs are allowed. The browser stays open after this call for follow-up ddb_interact or ddb_get_page calls. Call ddb_close_browser when finished.

ddb_interactA

Interact with the currently loaded D&D Beyond page by clicking, filling a form field, or taking a screenshot. The 'click' and 'fill' actions require confirm_click / confirm_fill: true — safety gates to prevent prompt injection on rendered DDB pages from triggering unintended state changes (deleting a character, leaving a campaign, posting to a forum). Screenshots are unguarded — they are read-only.

ddb_get_pageA

Return the text content of the currently loaded page in the browser. The browser stays open — call ddb_close_browser when finished.

ddb_search_siteB

Search D&D Beyond for spells, monsters, magic items, races, classes, or feats.

ddb_list_libraryA

List all books and sourcebooks you own in your D&D Beyond library. Requires login — run ddb_login first if you haven't already.

ddb_read_bookA

Read a D&D Beyond book. Accepts either a slug (e.g. dnd/phb-2024) or a plain title (e.g. "Player's Handbook" or "monster manual") — the server resolves titles against your library automatically. Specify chapter_slug for a chapter, query to jump to a heading, and max_chars to control response size. Requires login — run ddb_login first if you haven't already.

ddb_get_conditionA

Look up the rules text for a D&D condition (Blinded, Charmed, Frightened, Grappled, etc.). No login required.

ddb_search_spellsA

Search the full D&D Beyond spell compendium by name, level, school, concentration, or ritual. First call builds the compendium (slow); subsequent calls are instant. Requires login.

ddb_get_spellA

Get the full description of any spell in the D&D Beyond compendium by name. Not limited to a character's known spells. Requires login.

ddb_search_equipmentA

Search the D&D Beyond item/equipment compendium by name, rarity, or type. Covers mundane weapons (Longsword, Shortbow), armour (Plate, Chain Mail), adventuring gear, and magic items. Filter by rarity='common' to see only mundane equipment. Requires login.

ddb_get_equipmentA

Get the full stats and description of any item or equipment in the D&D Beyond compendium by name. Works for mundane weapons (e.g. 'Longbow'), armour (e.g. 'Plate'), adventuring gear, and magic items. Requires login.

ddb_search_racesA

Search all D&D Beyond races and subraces (including homebrew). Not character-specific. Requires login — run ddb_login first if you haven't already.

ddb_search_classesA

Search all D&D Beyond classes with hit die, spellcasting, and subclasses. Requires login — run ddb_login first if you haven't already.

ddb_search_backgroundsA

Search all D&D Beyond backgrounds (including homebrew). Requires login — run ddb_login first if you haven't already.

ddb_search_featsA

Search feats by name or prerequisite text. Requires login — run ddb_login first if you haven't already.

ddb_search_class_featuresA

Search class features by name, class, or level gained. Requires login — run ddb_login first if you haven't already.

ddb_search_racial_traitsA

Search racial traits by name or race. Requires login — run ddb_login first if you haven't already.

ddb_search_rulesA

Search the SRD rules sections by keyword. Searches across section names and full content — e.g. 'grapple' finds the Attacking section (which covers grapple rules) and the Conditions section (which has the Grappled condition). Returns a list of matching sections with their slugs. Use ddb_get_rules to read the full text of a section. No login required.

ddb_get_rulesA

Get the full SRD rules text for a topic by section name or slug. Covers all core 5e rules: Spellcasting, Abilities, Attacking, Combat Sequence, Actions in Combat, Damage and Healing, Conditions, Movement, Multiclassing, Rest, Saving Throws, Environment, Traps, Diseases, Madness, Poisons, Weapons, Armor, and more. Use query to jump to a specific topic within a long section. For non-SRD rules or more detail, use ddb_read_book. No login required.

ddb_rate_encounterA

Rate the difficulty of a D&D encounter. Defaults to 2024 XDMG rules (Low/Moderate/High, no multiplier). Set rules_edition to '2014' for the classic DMG XP threshold method (Easy/Medium/Hard/Deadly with encounter multiplier). Monsters are looked up in the compendium automatically — supply 'cr' directly for homebrew.

ddb_encounter_crA

Given a party and a target difficulty, returns the CR to aim for — broken down by encounter shape (solo boss, duo, squad, horde). Defaults to 2024 XDMG rules; set rules_edition to '2014' for classic DMG. No monster lookup required. Use with ddb_rate_encounter to verify a specific monster list.

ddb_roll_treasureA

Generate a treasure reward using the 2024 XDMG treasure tables (default). Provide either a CR directly or a list of monster names — CR is resolved automatically via fuzzy name matching. treasure_type 'hoard' makes one roll using the highest CR and includes magic items (requires character_level); 'individual' rolls once per monster and sums the results.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/iamjameslennon/ddb-mcp'

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