
You, mid-session
The party is heading to the docks tonight. Give me a smuggler NPC with a grudge and add her to my campaign.
Done. Meet Vess Kariel. She runs contraband out of the Saltway docks and has not forgotten what the harbourmaster took from her. She is in your World Codex, portrait included.

Vess Kariel
Smuggler · Saltway Docks
You ask
No protocol talk, just what it means for your table.
In plain terms
MCP is an open standard that lets an AI assistant plug into your CharGen account, the same way a new player joins your table with the campaign binder open in front of them. You keep talking to your assistant as normal, it just knows your world now.
Not a chatbot on our site
There is no new chat window to learn. You carry on in Claude, ChatGPT or another MCP-capable assistant, and it gains your campaigns, sessions, NPCs, quest log and generators as things it can read and use while you talk.
You stay in control
The assistant only sees your account once you connect it, and only for the scopes you grant. Revoke access at any time from the assistant's own settings, no message to us required.
You ask
Copy any of these into your assistant once it is connected, or use them as a starting point for your own.
Recap my last session and list every unresolved thread.
Reads your session recap and story tracker.
Create a level 6 smuggler NPC who fits the dockside faction in my campaign, with a portrait.
Uses the free NPC generator, then spends gold on the portrait.
Search my gallery for the tavern art and render a night-time version of it.
Finds the image in your gallery, then renders a new version with your gold.
Who has my party met in Blackreach Harbour, and who might betray them?
Reads your relationship graph and campaign notes.
Generate a one-shot dungeon for four level 3 players and add it to my campaign.
Uses the free dungeon generator, then writes it into your campaign.
You ask
NPCs, quests, dungeons and every other entity type cost nothing to generate through your AI, on any CharGen account, the same as generating them on the site.
Rendering artwork uses the same gold balance and the same prices as chargen.com. Nothing is marked up or discounted for going through an assistant.
Your assistant can list models and prices first. Nothing charges without gold already in the account, there is no credit or overspend.
You ask
Three steps, and none of them is an API key. Claude discovers the server and registers itself over OAuth 2.1, so connecting is a paste, a login and a consent screen.
In claude.ai, open Settings, Connectors, Add custom connector and paste the address below.
https://api.char-gen.com/mcpLog in with your CharGen account. The consent screen asks for each scope separately, and your choice is enforced on the server.
Claude now has your campaigns. Tokens refresh themselves for 90 days, and you can disconnect at any time from claude.ai settings.
no api keys · no config files · nothing to host
Custom connectors need a paid claude.ai plan (Pro, Max, Team or Enterprise). That part is Anthropic's. On the CharGen side, reading works on any account, free tier included.
Or follow along literally. Exact taps, in order, for whichever assistant you use.
Verified end to end. Full read, write and generate access on any paid claude.ai plan.
In Claude, open Settings, Connectors, Add custom connector.
Paste the server URL below.
https://api.char-gen.com/mcpSign in with your CharGen account and approve the scopes you want to grant.
Newer, and gated by OpenAI's plan tiers rather than CharGen's.
Tap your profile icon, bottom left, then Settings.
In Settings, open Apps. If you see a Developer mode toggle here, turn it on first.
Scroll down to Advanced settings and choose Create App.
Name it CharGen, set Connection to Server URL and paste the address below, set Authentication to OAuth, tick the risk disclaimer and click Create.
https://api.char-gen.com/mcpSign in with your CharGen account when ChatGPT redirects you. Then in any chat, type @CharGen to bring it into your message.
Using the Claude desktop app? Sign in at claude.ai in your default browser first, the desktop app finishes the connection there. See the FAQ below for why.
ChatGPT's connectors are still rolling out on OpenAI's side. Free ChatGPT accounts do not get custom connectors, Plus and Pro accounts can read your campaigns, and writing or generating needs a Business, Enterprise or Edu ChatGPT plan.
Works with Claude and ChatGPT today, and any other assistant that speaks MCP, like Cursor or Windsurf. See the full list.
Needs a CharGen account. Reading and generating entities work on any tier, writing needs a paid CharGen plan and images spend gold.
You ask
Quite a lot, it turns out. These are the real tool names your assistant sees across your D&D campaigns, grouped by the scope that unlocks them.
48 tools25 read21 write2 generate
read · Free on any account
Everything you have built, readable in conversation. Campaigns, the World Codex and its folders, quest logs, timelines, transcripts, recaps, parties and your whole gallery.
List your campaigns
chargen_list_campaignsOpen a campaign
chargen_get_campaignBrowse the World Codex
chargen_list_entitiesRead any entity
chargen_get_entityCheck the quest log
chargen_get_questRead the campaign tracker
chargen_get_trackerWalk the living timeline
chargen_get_timelineMap who knows whom
chargen_get_relationship_graphSearch a whole campaign
chargen_search_campaignList recorded sessions
chargen_list_sessionsPull a transcript
chargen_get_transcriptRead a session recap
chargen_get_session_recapList your parties
chargen_list_partiesOpen a party roster
chargen_get_partyBrowse generation history
chargen_list_generationsInspect a generation
chargen_get_generationCheck a running job
chargen_get_jobSearch the gallery
chargen_search_galleryMap your folders
chargen_list_collectionsOpen a folder
chargen_get_collectionList the generator types
chargen_list_entity_typesList image models and costs
chargen_list_image_modelsLoad the usage guide
chargen_usage_guideCheck the account
chargen_whoamiQuote gold prices
chargen_get_pricingwrite · Any paid tier (World Codex folders free)
Change things, not just read them. Edit entities, keep the quest log honest, move story threads, merge duplicates, log sessions, clean up transcripts, and organise your codex and workspace folders.
chargen_track_entitychargen_update_entitychargen_update_questchargen_update_threadchargen_create_hookchargen_link_generationchargen_update_recapchargen_update_recap_entrychargen_log_sessionchargen_merge_entitieschargen_dedupe_candidateschargen_relate_generationschargen_update_generationchargen_find_replacechargen_rename_speakerchargen_create_collectionchargen_update_collectionchargen_delete_collectionchargen_add_collection_itemchargen_remove_collection_itemchargen_reference_codex_collectiongenerate · Entities free, images in gold
The generators themselves, callable mid-conversation. Nineteen entity types with the same auto portrait the web app gives, and every image model at normal gold rates.
chargen_generate_entityAll nineteen generator types from a sentence, with the same auto portrait the web app gives. Entity generation is free.



chargen_generate_imageAny of the image models, priced in gold exactly like the app. Claude can quote the cost first with chargen_get_pricing.
You ask
Recap what happened in our last session.
chargen_get_session_recap
Session 14, from your recording: the heist went sideways at the second bell. Kestrel took the fall for the party at the lighthouse, and the cursed lantern is now in Bram's pack, which nobody has told the cleric about.
What do we know about House Veyra so far?
chargen_search_campaign
Twelve mentions across your Codex. They bankroll the harbourmaster, they lost an heir at Dreadmarsh, and your notes flag their steward as “too helpful”. Want the relationship graph around them?
Update the quest log: they finished the lighthouse job and took the cursed lantern.
chargen_update_quest
Done. The Lighthouse Job is marked complete and the cursed lantern is recorded under party loot, flagged as cursed.
Rename Speaker 3 to Kestrel in the whole transcript.
chargen_rename_speaker
Renamed in 214 lines. The transcript finally reads like your table.
Look at my timeline and open threads, and suggest three scenes for next session.
chargen_get_timelinechargen_get_tracker
Grounded in what actually happened: the steward calls in the party's debt at the worst moment, the lantern whispers to Bram on watch, and House Veyra posts a reward for a “stolen heirloom” that sounds a lot like it.
Generate a portrait of the tavern keeper in the Dark Fantasy style.
chargen_get_pricingchargen_generate_image
Quoted the gold first, then rendered it with the same models the app uses. Meet Barnaby, keeper of the Hearthlight:

Barnaby
Tavern keeper · The Hearthlight
You ask
Model Context ProtocolStreamable HTTPOAuth 2.1Open standard
MCP, the Model Context Protocol, is an open standard: one connector URL, any client that supports it. CharGen implements remote MCP over Streamable HTTP with OAuth 2.1 discovery and dynamic client registration, so clients find the server and register themselves.
Desktop and web clients, with the one-click OAuth connector flow above. Verified end to end.
Add the server URL to .cursor/mcp.json and sign in when prompted.
Connect through the MCP settings using the hosted server URL.
Add it as a custom connector with OAuth sign-in. Plus and Pro accounts can read your campaigns; writing and generating needs a Business, Enterprise or Edu plan.
You ask
CharGen · consent
Claude wants to access your account
mcp:read
Campaigns, Codex, sessions, gallery
mcp:write
Edit entities, quests and recaps
mcp:generate
New entities and images
Each scope is a separate grant. Untick generate and nothing can ever spend gold.
01
The current industry standard and the protocol family the MCP spec mandates. Claude discovers the server and registers itself; there are no shared secrets to leak.
02
A read-only connection cannot change or spend anything. That guarantee lives on the server, not in the interface.
03
Access tokens expire after an hour. Refresh tokens rotate and last 90 days. Disconnect at any time from claude.ai settings.
04
Paid-tier gating and gold charges are enforced exactly as in the web app. The MCP surface cannot bypass pricing, and Claude sees only what your account sees.
You ask
Then skip the connector screen. The same endpoint takes three kinds of credentials.
claude.ai / Claude Desktop
The flow above: paste the URL as a custom connector, log in, choose scopes. No keys ever touch your clipboard.
Back to the three stepsClaude Code / scripts
Mint a pat_ token in CharGen settings and send it as a Bearer token.
claude mcp add chargen \ --transport http \ https://api.char-gen.com/mcp \ --header \ "Authorization: Bearer pat_..."
Partners / B2B
Existing live_ and test_ keys work on the MCP surface with wallet billing, no changes needed.
You ask
No. Reads are free on every CharGen account, including the free tier.
Most writes (editing entities, quests, threads and recaps) need any paid tier: Plus, Elite or Ultimate. World Codex folder tools are the exception, they work on free accounts. Campaign workspaces need a paid tier. Entity generation is free. Image generation costs gold at the same rates as the app.
Only through chargen_generate_image, only if you granted the generate scope, and it can quote the price first with chargen_get_pricing. A read-only connection cannot spend anything, and the server enforces that.
Only what the assistant actually requests while you are talking to it, over the encrypted connection you approved. Anthropic or OpenAI do not get standing access to your account, each tool call is a single request the assistant makes on your behalf, in the moment, for the scopes you granted.
Folders, and only folders. The delete tools only manage folder structure and filing, never content: they can delete a folder, or take an item out of one, and the item itself always stays. There is no tool that deletes entities, generations, sessions, transcripts or images. Curation tools can merge duplicate entities you point them at, and merges come with an undo. Revoke access from your assistant's settings whenever you want.
For Claude, custom connectors need a paid claude.ai plan (Pro, Max, Team or Enterprise). For ChatGPT, Plus and Pro accounts can add a connector and read your campaigns, and writing or generating needs a Business, Enterprise or Edu ChatGPT plan. Free ChatGPT accounts do not get custom connectors at all. Those requirements are on Anthropic's and OpenAI's side. On the CharGen side, reading works on any account.
The desktop app finishes the connection through your default browser, on claude.ai. If that browser is not signed in to claude.ai, the handoff never completes and the app asks you to start over. Sign in at claude.ai in your browser first, then add the connector. The same applies on mobile.
MCP is an open standard, and the server implements it the standard way. Claude (web, desktop and Claude Code) is verified end to end with full read, write and generate access. ChatGPT connects as a custom connector with OAuth sign-in, though OpenAI currently limits Plus and Pro accounts to reading. Cursor and Windsurf connect with the same server URL through their MCP settings, and any other client that supports remote MCP servers with OAuth can use the same URL.
No. The connector sees exactly what your account sees. Your D&D campaigns stay private.
Remove the connector in your claude.ai settings. Tokens also expire on their own: access tokens after an hour, refresh tokens after 90 days.
Yes. Mint a Personal Access Token in your CharGen settings and use it as a Bearer token against https://api.char-gen.com/mcp.
Add the connector, choose what Claude may touch, and start asking your world questions.
https://api.char-gen.com/mcpReads are free on any CharGen account. Custom connectors need a paid claude.ai plan.