Skip to content

Guide

How to add AI to Foundry VTT.

You have run the game for everyone else long enough. Three steps put an AI on your side of the screen: install Familiar, activate your licence key, connect an AI. The short way in is a provider key pasted into Familiar's own chat. Or connect a Claude, ChatGPT, or SuperGrok plan over MCP, a Muse Code subscription, or a Google account for Gemini. It runs the adventure you imported, never one it invents.

What you need

  • Foundry VTT v13 or later, and a world you run as GM. Your players install nothing to sit at your table; a Familiar of their own is optional, on a key or an AI app they bring.
  • The Familiar module, installed and enabled. The click path is next.
  • A Familiar licence: a subscription with the first two weeks free, or the one-time lifetime purchase. The key is in your customer portal, not the receipt: the Access purchase link in that email opens it, and so does familiarvtt.com/account. It starts with FAMILIAR- and switches the module on.
  • A published adventure to import, so the AI has maps, NPCs and statblocks to run from. D&D 5e (2024) also gets the rules engine; on other Foundry systems everything else still runs, and your own system keeps the rules.
  • An AI: a provider key, or an AI account you already hold. Both ways in are compared below.

Install and activate Familiar

Familiar installs like any other module, and nothing here needs a terminal. This is the licence-key step; the provider key comes later.

Two Foundry modules share the name Familiar. Ours is the one by Ryan Jansen, the familiar-vtt package on npm. The other is an unrelated module last updated in 2024, and its documentation does not describe this one.

Foundry's Install Module dialog: the package search box at the top, the Manifest URL field at the bottom.
Both routes end at the same Install button.
  1. Install the module

    In Foundry, open Add-on Modules, click Install Module, search Familiar and click Install. Or paste the manifest URL below into the same dialog.

  2. Enable Familiar in your world

    Tick it in the world you run, and save. The world reloads, and with no key stored the chat opens by itself on the activation card.

  3. Paste your licence key and click Activate

    The key goes on that card, never in Foundry's own settings sheet. The page reloads and the chat closes with it. The owl button brings it back, and so does Ctrl+Shift+Space.

Manifest URL
https://github.com/Ryanjansen92/familiar-releases/releases/latest/download/module.json

Hosted on The Forge: same steps, two differences

Familiar runs wherever Foundry does. The built-in chat calls your provider straight from the browser, and the MCP server runs on your own computer, so your host is never in the path. What changes is where you click Install, and what the MCP route asks of your browser.

  1. Install from the Bazaar, not the Foundry dialog

    The Forge installs modules from its own Bazaar, under Modules. Search Familiar there and click Install. The manifest URL above belongs to Foundry's dialog, which a hosted game never shows.

  2. Enable and activate as above

    Nothing differs here, and the built-in chat needs nothing more: a provider key pasted into the Chat tab works on a hosted game as it does on your own machine.

  3. For MCP, run the wizard from the hosted game

    It notices the host and writes your game's URL into FAMILIAR_WS_ALLOWED_ORIGINS beside the rest, so keep that line if you ever copy values by hand. The first time the page reaches your local server, Chrome or Edge asks once whether it may: allow it. Safari refuses outright, so use Chrome, Edge or Firefox.

One hosted quirk over MCP: an image tool answers your AI app with the new picture's address rather than the picture itself. The image is in Foundry either way.

Connect your AI: two doors

Familiar brings no model of its own: you point it at an AI you control, through one of two doors. The built-in chat takes a provider key. The MCP door is the one for a chat subscription you already hold.

The two doors compared: how you connect, who bills you, and what you install.
What differsBuilt-in chat (API key)MCP (your plan)
How you connectPaste a key on the Chat tabPick your client's card in the MCP / Subs wizard
Who bills the AIYour provider, per tokenThe subscription you hold. Nothing extra on the AI bill, though it spends that plan's quota
What you installNothing beyond FoundryNode.js 22 or newer, plus the client app

Both doors reach the same tools.

What each thing at the table needs

The plan or the key you just chose drives the AI, and that is all it drives. A Claude plan on its own runs the game and says nothing out loud. Everything the table hears or sees bills a key of its own, on either door, at that provider and nowhere else.

Per feature: the key or plan it needs, and whether it works from the built-in chat, an MCP client, or both.
At the tableWhat it needsWorks from
The chat itself, the rules, the dice, the journalsDoor one or door two. Nothing else.Either door
NPC voices and narrationA text-to-speech key: ElevenLabs or OpenAI, for exampleEither door. The audio plays in Foundry, whichever app asked for it
Live transcription of the sessionA transcription key: Gladia, Deepgram or AssemblyAIBuilt-in chat only, on https or a localhost tab
Dictation: hold a key and talk to the chatA microphoneBuilt-in chat only, on https or a localhost tab
Portraits, tokens, item art and battlemapsAn image key: OpenAI or fal.ai, for exampleEither door. The picture lands in Foundry; the Edit button is chat-only
Composed music and sound effectsMusic: ElevenLabs, fal.ai, NanoGPT or OpenRouter. A sound effect rides your voice key, or your image key aloneEither door
A still animated into a looping clipfal.ai as the image providerEither door
Auto-pilot for NPC turnsD&D 5e (2024), and the door-one connectionBuilt-in chat only

Music from your own playlists needs no key at all: Familiar cues what Foundry already holds.

Door one: paste an API key

With the module activated, paste a provider key and the first reply lands in about a minute. The campaign comes later, with the adventure you import.

Familiar's built-in chat settings in Foundry, on the Chat tab: the AI provider set to OpenRouter (one key, 300+ models), an empty API key field with an eye toggle and a Test connection button, noting the key stays in your browser and is never sent to a Familiar server, then the Model row on Provider default and Thinking at High.

Demo clip coming

The Chat tab: provider at the top, key underneath.
  1. Open Familiar's settings

    The owl button sits at the bottom left until you drag it elsewhere. It opens the chat, whose Configure AI Provider button lands on the Chat tab. Or Module Settings, Familiar, Configure AI.

  2. Pick a provider and paste the key

    OpenRouter is already selected, and one key there reaches most models. The Model row starts on Provider default, so a first reply needs no pick. There is no Save button: the key is saved once you leave the field, press Enter or close the window, and a small Saved flashes. Keys stay in your browser and go straight to the provider.

  3. Close the settings and say something

    The chat opens on a row of suggestion chips: How it works, Rules, Monster, Encounter, NPC. Clicking one sends it, or type your own line.

Door two: the plan you already pay for

Module Settings, Familiar, Configure AI, then the MCP / Subs tab. Pick your client's card: it carries this world's secret already filled in.

The first start downloads Familiar's server, so give it a minute.

The Claude Code card open in Familiar's MCP / Subs wizard at its last step, Verify Connection: the question to paste with its Copy button, two green Connected rows for the MCP server and Claude Code, and the Copy help prompt and Copy setup prompt buttons below.

Demo clip coming

Both prompt buttons sit under the steps.

Check it answers from your world

How you know it worked depends on the door. In the built-in chat, the reply names your world back to you. Over MCP the wizard closes on its own verify line, and the status rows on that tab turn to Connected.

Each ask below leans on something your world already holds.

  • Combat & Initiative
  • Journals & Notes
  • Audio & Playlists
  • Scenes & Tokens
  • The first ask
    Which world is this, and which scene is active?
  • Over MCP, the wizard's line
    Use Familiar's get-world-info tool
  • Start a fight
    Start combat with every token on this scene.
  • Read your own notes
    Search my journals for <NPC or place> and read me the entry.
  • Set the mood
    Play <playlist name> and darken the scene for night.

What it runs, and what stays yours

Familiar (familiar-vtt) is an AI co-pilot for Foundry VTT, licensed through familiarvtt.com. You talk to it in plain language and it does the work a GM would otherwise do by hand: it rolls initiative, runs the monsters, looks up a rule, voices an NPC, keeps a record of the campaign.

Ask an AI to invent a campaign from nothing and it drifts. Give it a full published adventure and it runs the table on that, from a single scene to an entire campaign. The fewer humans at the table, the more it runs.

Someone hand-painted the map in that adventure and placed every wall and light on it; Familiar runs on that work rather than redrawing it. It keeps no secrets either: hidden information is Foundry's own fog of war, not an AI choosing what to withhold.

Familiar and Foundry's AI policy

Familiar is listed in the official Foundry package directory, declared as shipping zero AI-generated content. What it does make at your table, a portrait or a spoken line, stays there. Nothing it generates is packaged and sold.

NextConnect Claude, ChatGPT, or Gemini

More in Get started

New to Familiar? I'm Ryan, the person who built it. The Discord is small and brand new, so if you join now I'll help you get set up myself.