MCP App Store
Entertainment
SessionKeeper icon

SessionKeeper

by SessionKeeper LLC

Overview

SessionKeeper is a companion app for D&D and tabletop RPG groups. Connect your account to look up session transcripts, summaries, character details, wiki entries, and DM prep notes.. all from within ChatGPT. Ask what happened in your last game, search your campaign wiki, review character backstories, or pull up DM prep. If you record your sessions with SessionKeeper, all your game data is at your fingertips.

Tools

find_wiki_articles

ChatGPT
Use this when the user asks about a specific named entity, place, NPC, item, or lore reference in a campaign's wiki. Returns matching article previews. Each item has an articleId field — pass that string verbatim as articleId to get_wiki_entry to fetch the full article. Requires a campaignId obtained from list_campaigns. Do not use for session recaps or character profiles — use list_sessions or list_characters.

get_campaign

ChatGPT
Use this when you need a single campaign's details (game system, recent session date, session count) and its active character roster. Requires a campaignId from list_campaigns.

get_character

ChatGPT
Use this when you need a single character's full profile — background, personality traits, equipment, notable moments, and character development. Requires a campaignId (from list_campaigns) AND a characterId (from list_characters or the roster on get_campaign). Do not guess characterIds.

get_dm_prep

ChatGPT
Use this when the calling user is preparing to run their next session as the DM. Returns the latest DM-prep package: session summary, character analysis, prep guidance, DM tools, feedback, and notes/reminders. DM only — returns an error if the calling user is not the campaign's Dungeon Master. Do not use to look up another DM's prep. Requires a campaignId from list_campaigns.

get_player_assist

ChatGPT
Use this when the calling user wants their own post-session recap or feedback for their character in a campaign — quick recap, signature moves, intel, overheard fragments, milestones, next-episode choices. Always scoped to the calling user's own character. Do not use to view another player's assist content. Requires a campaignId from list_campaigns. Returns an error if the calling user has no character in that campaign.

get_session

ChatGPT
Use this when you need the complete narrative summary of a specific session (not just the preview). Prefer this over get_session_transcript unless verbatim spoken dialogue matters. Requires a campaignId (from list_campaigns) AND a sessionId (from list_sessions). Do not guess sessionIds — always call list_sessions first.

get_session_transcript

ChatGPT
Use this when you need the verbatim speaker-attributed dialogue from a session. Prefer get_session for narrative summaries — only call this when exact quotes or in-character wording matter. Requires a campaignId (from list_campaigns) AND a sessionId (from list_sessions). Do not guess sessionIds. Returns up to 200KB; longer transcripts are truncated with a marker.

get_wiki_entry

ChatGPT
Use this when you already know the articleId of a wiki article and want its full body. Requires a campaignId (from list_campaigns) AND an articleId (from find_wiki_articles). Always run find_wiki_articles first to obtain the articleId — do not guess or invent it.

list_campaigns

ChatGPT
Use this when you need any campaign data, or to determine which campaign the user is referring to. Lists all active campaigns the user is a member of, each with its campaignId. Required first step before any other tool. Takes no arguments.

list_characters

ChatGPT
Use this when you need the cast of a campaign — name, class, race, and role for each active player character and the DM. Get characterIds here before calling get_character for full profiles. Requires a campaignId from list_campaigns.

list_sessions

ChatGPT
Use this when you need recent session titles, dates, or sessionIds for a campaign. Returns processed (transcript-ready) sessions only, most recent first. Get sessionIds from here before calling get_session or get_session_transcript. Requires a campaignId from list_campaigns.

App Stats

11

Tools

ChatGPT

Platforms

Works with

ChatGPT

Data refreshed daily