Skip to content
Nexxtool AI

Safe AI address

Paste one address into your tool. Every reply is checked first.

The Safe AI address sits between your tool and your AI provider. Your tool sends its normal chat request to Nexxtool AI; we forward it to your provider with your saved key, check the full reply against your rules and facts, and only a safe reply goes back.

Base URL:  https://nexxtool.ai/v1/connect
API key:   your Nexxtool key (wtk_live_...)
Endpoint:  POST /v1/connect/chat/completions
Models:    GET  /v1/connect/models

Set it up

  1. Add your AI key on Connect your AI (or choose "Our AI") and press Test connection.
  2. Tick the rules in plain English (check my facts, block leftover AI phrases, no guarantees, no links), add words to never say, set the fallback message and how many rewrites (0 to 3, default 2).
  3. Copy the Safe AI address and your key into your tool. The page has a Send a test message box that runs the whole thing.

What happens to each reply

  1. Pass: returned unchanged.
  2. Block: the AI gets one follow-up: "Your reply broke these rules: [plain list]. Rewrite it so it follows them. Keep it helpful." The new reply is checked again, up to your rewrite count.
  3. Still failing: your customer gets your fallback message (default "Let me get a team member to help with that.") and the response says it was replaced and why.

Nothing unchecked is ever returned. If your AI errors or times out (on the first call or during a rewrite), or our checker cannot run on a reply, your customer gets the fallback message with HTTP 200, the same for normal and "stream": true calls. They never see an error or the unchecked reply. The real error is saved in your Checks history so you can fix it. The one exception: if your monthly checks are used up the call returns HTTP 402 and no AI text.

The response is a normal OpenAI chat completion plus a nexxtool object: outcome (passed, fixed or fallback), rewrites, checks_used, replaced; and the headers X-Nexxtool-Outcome and X-Nexxtool-Rewrites.

Reasons are hidden by default. The nexxtool object has no reasons (and no why) unless you turn on Include reasons in the response in the connection's settings on Connect your AI. When it is on, reasons lists the plain-English reasons a reply was changed or replaced (an empty list when it passed). This keeps your rules out of the response the people using your tool can see. Reasons are always saved in your dashboard history, whatever this setting is.

Checks, history and limits

Streaming

"stream": true works, with an honest catch: we must hold the whole reply to check it, so the first words arrive only after the full reply is generated and checked (plus any rewrites). Then the checked text is streamed to you. Expect a delay of one or more AI calls before streaming starts. The final chunk carries the nexxtool object.

Not supported (and why)

Tool and function calls, images, audio and n above 1 are refused with a clear 400, because those cannot be checked as text.

Which tools can use it

Any tool that lets you change the OpenAI base URL (also called API base, base path or endpoint) can use it. Tools locked to one vendor's address cannot; use the API there.

ToolWhere to paste the address
OpenAI SDKs (Python, JavaScript, Go, Java, Ruby, C#)base_url / baseURL on the client
FlowiseChatOpenAI node, Additional Parameters, BasePath
n8nOpenAI credential, Base URL field (present in current versions; check yours)
Open WebUI, LibreChat and similar chat front endsConnections / endpoint settings, OpenAI API URL (base URL)
Zapier, Make, Botpress and similarUse the tool's HTTP / webhook step to call the endpoint above. We could not confirm a base URL setting in their public documentation.

Provider documentation we used

We call each provider's native API with your key (OpenAI chat completions, Anthropic Messages, Gemini generateContent); the OpenAI format is what your tool speaks to us.