How to use FaithGPT with ChatGPT and Codex
TL;DR: FaithGPT exposes an MCP server at api.faithgpt.io/mcp and an OpenAI-compatible API at api.faithgpt.io/v1, and there are three ways to reach them from OpenAI's tools. A custom GPT with Actions is the most reliable path today: import the OpenAPI schema from faithgpt.io/api/openapi.json, set Authentication to API Key with Bearer, and paste an fgpt_live key. A ChatGPT custom connector points at the MCP endpoint and signs in through OAuth with no key to leak, though plan access to custom connectors keeps changing. In Codex, one command wires it up and starts the OAuth flow automatically, with a bearer_token_env_var option for machines without a browser. The five MCP tools cover exact passage lookup, topical verse search, grounded answers, doctrine review, and devotionals, and only the lookup is free.
Ask ChatGPT for a verse about waiting on God and it will hand you one. Ask it for the exact KJV wording of Lamentations 3:25 and it will hand you that too, with identical confidence. One of those answers is safe to print on a handout. The other is the model reciting from memory, and memory is where paraphrases quietly become quotations.
I have watched this go wrong in a small group. The verse on the printout was close enough that nobody noticed until a woman in the third row read hers aloud and the words did not match. Nothing broke. It was just embarrassing in a way that made the whole sheet feel less trustworthy.
FaithGPT publishes two front doors that OpenAI's tools can talk to directly, which fixes the specific problem above: the model stops guessing at Scripture and starts looking it up. There is an MCP server at https://api.faithgpt.io/mcp and an OpenAI-compatible REST API at https://api.faithgpt.io/v1. Three ways in, depending on whether you are building a GPT for other people, wiring your own ChatGPT account, or working at a terminal.
What the connection actually gives you
The MCP server exposes five tools, and their names are worth knowing because you will see them in the tool-call output:
lookup_scripture takes a reference like Romans 8:28-39 and returns the passage text in KJV, ASV, or YLT. find_scripture_by_topic goes the other direction, taking something like "hope during grief" and returning up to ten verses with a short explanation. ask_faithgpt answers a Bible, theology, or Christian-life question with citations attached. review_doctrine takes a block of text up to 20,000 characters, which is roughly a full sermon manuscript, and reviews its theological soundness and use of Scripture. create_devotional writes a devotional around a theme, optionally anchored to a reference you supply, with length and audience options.
Billing splits cleanly. lookup_scripture is free. The other four reserve and reconcile credits against whichever FaithGPT account signed in.
The reason to bother with any of this: FaithGPT checks its answers against a reference corpus that ships with every plan, and publishes its citation accuracy rather than asking you to take the grounding on faith. Plenty of tools cite Scripture. Fewer will show you how often the citation is right.
Start with a custom GPT
This is the path I would build first. It is fully documented on OpenAI's side, it works today, and the result is shareable with people who will never read a config file.
Create a new GPT, open the Configure tab, and scroll to Actions. Choose Create new action, then Import from URL, and paste:
That is the live OpenAPI 3.1.1 contract, generated from the running API rather than written by hand, so it stays in step with the endpoints. Importing it gives your GPT every published route at once: /v1/faithgpt/answer, /v1/chat/completions, /v1/models, and /v1/usage. Most study GPTs only need the first. Delete the operations you do not want after the import, since every extra one is another thing the model can pick wrong.
Next, Authentication. Choose API Key, set Auth Type to Bearer, and paste a key. Keys come from the dashboard at faithgpt.io/api and look like fgpt_live_a1b2c3.... Only the SHA-256 hash is stored, so the full key appears once at creation and never again. Copy it before you close the dialog.
Then write instructions that tell the GPT when to reach for the API instead of answering from memory. Something in this shape works:
That last sentence earns its place. Without it the model treats a failed call as a prompt to improvise, which returns you to the handout problem.
One caution that is easy to miss until the invoice arrives: the key belongs to your account, so anyone using your GPT spends your credits. Share a Bible Study GPT with a group of forty and you are funding forty people's questions. Keep the sharing setting private or link-only until you know the volume.
Wire the MCP server into ChatGPT directly
If you want FaithGPT available in ordinary ChatGPT conversations rather than inside a purpose-built GPT, the connector path is the one to use. In Settings, look for connectors under an apps or connectors heading, open the advanced area, and enable developer mode. OpenAI has moved and renamed this more than once, so treat the exact wording as a hint rather than a map, and check their current documentation if the labels do not match.
Add a custom connector pointing at:
Sign-in happens through OAuth against your FaithGPT account, so there is no key to paste and no key to leak. The tools then bill the account that authorized them, which is the behavior you want when the connector is yours alone.
Two things to know before you spend time here. Custom connectors have to be remote and served over HTTPS, so a local MCP server on your laptop will not work. And which plans can add custom connectors has changed repeatedly, sometimes mid-quarter. I have deliberately not written a plan name into this paragraph, because it would be wrong before long. Check what your account offers today.
Add FaithGPT to Codex
Codex reads the same MCP server, which makes Scripture verification available while you are writing code. One command:
Codex detects that the server supports OAuth and starts the flow immediately, printing an authorization URL that points at clerk.faithgpt.io. Open it, approve, and the handshake completes. To run that flow again later, after revoking access or switching accounts:
The add command writes a small block to ~/.codex/config.toml, and you can just as well write it yourself:
For a machine with no browser, an unattended agent or a build box, skip OAuth and use a static key instead. Codex reads the token from an environment variable rather than storing it in the file:
Export FAITHGPT_API_KEY with your fgpt_live_ key and Codex sends it as a Bearer token. The equivalent flag on the command is --bearer-token-env-var. Useful commands once it is connected: codex mcp list to see what is registered, codex mcp get faithgpt for one server's config, and codex mcp logout faithgpt to drop the stored credentials.
Four things worth building
A study GPT for a group that meets weekly
Import the schema, restrict it to the answer endpoint, and put your group's translation preference and reading plan in the instructions. Members ask their questions between meetings instead of saving them all for you. The verse text comes back looked up rather than recalled, which is the whole point.
A verification pass on anything ChatGPT drafts
Draft the newsletter or the lesson outline normally, then feed the finished text through review_doctrine before it goes out. It takes a full manuscript in one call and flags careless proof-texting, which is the failure mode that survives a spellcheck and a read-through. Treat the output as a second reader whose notes you are free to overrule.
Reference checks while you build
If you are putting up a church site or a devotional app with Scripture in the copy, the Codex connection means the references get checked while the code is being written, rather than in a separate review that never happens. Ask it to verify every reference in your seed data and it will call lookup_scripture per reference instead of eyeballing them.
Grounded answers inside your own scripts
The REST API is a plain HTTP call:
The response carries the answer as Markdown plus a usage block with input_tokens, output_tokens, credits_charged, and a request_id for support. Set include_tool_calls to true and you also get an array showing which tools ran, which is how you confirm the passage was fetched rather than remembered. faithgpt-mini is the default; faithgpt-max and faithgpt-ultra cost more per call and think harder. If you already have code written against OpenAI's SDK, point it at /v1/chat/completions and change the base URL and key.
What to expect when it does not work
Credits are consumed per request across all three paths, including tool calls the model makes on its own initiative. A chatty GPT that calls ask_faithgpt four times to answer one question bills four times. The dashboard at faithgpt.io/api and the /v1/usage endpoint both show real counts, and the pricing page covers what a plan includes.
Expect an approval prompt on every tool call, including the ones that only read. FaithGPT marks all five tools as having side effects, because even a lookup writes usage telemetry and four of them move credits. OpenAI treats that as non-read-only, so the client asks before running rather than firing silently. This is deliberate on FaithGPT's side and there is no setting to turn it off. If the confirmations get tiring during a long session, batch your questions instead of asking them one at a time.
If the connector will not add in ChatGPT, check the plan question before you check anything else. That is where most of these attempts stop, and no amount of retrying the URL fixes an entitlement.
If Codex authorizes but the tools never appear, run codex mcp get faithgpt and confirm the URL has no trailing slash and no typo in the scheme. HTTP will not do.
If a lookup returns nothing for a reference you know exists, check the translation. lookup_scripture serves KJV, ASV, and YLT, and defaults to KJV. Asking it for ESV or NIV wording is asking for something it does not hold, and a model that cannot get the text will fall back on its own memory unless your instructions forbid it.
That last failure is the one to design against. Everything here is in service of a narrow, unglamorous goal: when the machine does not know a verse, you want it to say so.
Helpful Scripture resources
Contact & support
Email the FaithGPT team at hello@faithgpt.io or visit the contact page .
Explore FaithGPT