> Full Neon documentation index: https://neon.com/docs/llms.txt

# Jev on the AI Gateway, automatic top-up for AI Gateway credits, an OAuth provider for Managed Better Auth, and more

## Jev is now available on the AI Gateway

The AI Gateway now serves TypeSafe's System One decision models, [Jev 1.14](https://neon.com/docs/ai-gateway/models/typesafeai-jev-1-14-0) and the open-weights [OpenJev](https://neon.com/docs/ai-gateway/models/openjev-qwen35-4b). Instead of generating text, they answer questions about your input with a choice, a score, or a probability that your code can act on directly. You're billed for input tokens only.

```typescript
import { neon } from '@neon/ai-sdk-provider';
import { experimental_decide as decide } from 'ai';

const { answers } = await decide({
  model: neon.decisionModel('typesafeai-jev-1-14-0'),
  state: "We're growing fast and want to add more projects and team members.",
  questions: {
    upgrade: { type: 'boolean', instructions: 'Is the user interested in upgrading their plan?' },
  },
});

console.log(answers.upgrade.probability); // 0.91
```

See [Decisions](https://neon.com/docs/ai-gateway/decisions) to get started. To see Jev in action, [build a content moderation pipeline](https://neon.com/guides/jev-content-moderation) or use it to [rerank hybrid search results](https://neon.com/docs/ai/lakebase-search-get-started#use-jev-through-neon-ai-gateway) with Lakebase Search.

## Automatic top-up for AI Gateway credits

Keep your AI features running without watching your balance. Organization admins can now turn on **auto-reload** for AI Gateway credits: when your balance drops below a threshold you set, Neon automatically buys the amount you choose with your payment card on file. Set it up from the **AI gateway credits** card on the **Billing** page, or while you're adding credits. See [Automatic top-up](https://neon.com/docs/ai-gateway/prepaid-credits#automatic-top-up).

![Auto-reload credits dialog in the Neon Console](https://neon.com/docs/changelog/aigw_auto_reload.png)

## OAuth provider for Managed Better Auth (beta)

Managed Better Auth can now act as an OAuth 2.1 authorization server, so your users can sign in to your MCP server, API, or other apps with their existing accounts. To protect an MCP server, use the [`@neon/oauth`](https://www.npmjs.com/package/@neon/oauth) SDK (beta):

```typescript
import express from 'express';
import { createMcpAuth } from '@neon/oauth/mcp';
import { expressMcp } from '@neon/oauth/mcp/express';

const auth = createMcpAuth({
  baseUrl: process.env.NEON_AUTH_BASE_URL!, // your branch's Auth URL
  resource: 'https://mcp.example.com/mcp', // the MCP server URL set on the provider
});

const app = express();
app.use(expressMcp(auth)); // verifies access tokens and serves the resource metadata
```

MCP clients identify themselves with Client ID Metadata Documents by default. Dynamic client registration is now a legacy option and is off by default. See [OAuth Provider](https://neon.com/docs/auth/guides/plugins/oauth-provider).

## Scaffold functions and search the docs from the Neon CLI

[`neon functions new`](https://neon.com/docs/cli/functions#new) (Neon CLI 8.11 or later) scaffolds a [Neon Function](https://neon.com/docs/compute/functions/overview) from a template. There are only a couple of starter templates so far, and we'll add more over time. Run `neon functions templates list` to see them. The quickest way to try it is `neon functions new basic`, which writes a small handler that returns JSON to `functions/basic/index.ts` and adds the function to `neon.ts`. Run it locally with `neon dev`, then deploy with `neon config apply`:

```bash
neon functions templates list
neon functions new basic
npm install @neon/config @neon/env
neon dev
neon config apply
```

Have a function others could use? Templates live in the [Neon Function Registry](https://github.com/neondatabase/examples/tree/main/registry) on GitHub, and anyone can propose one by opening a pull request. See the [contributing guide](https://github.com/neondatabase/examples/blob/main/registry/CONTRIBUTING.md).

[`neon docs search`](https://neon.com/docs/cli/docs#search) (Neon CLI 8.10 or later) searches neon.com from your terminal: the docs, API reference, Postgres tutorial, guides, FAQs, changelog, and blog. You don't need to be logged in. Use `--category` and `--limit` to narrow the results:

```text filename="Terminal"
$ neon docs search "reset a branch" --limit 2

Manage branches ' Reset a branch from parent
  https://neon.com/docs/manage/branches

Branching with the Neon CLI ' Resetting a branch from its parent
  https://neon.com/docs/guides/branching-neon-cli
```

## A new support center in the Console

The Neon Console now has one place to get help. Open your organization menu and select **Help** > **Get help** to ask the AI assistant, open a support ticket, or reach the community. The options you see depend on your plan. See [Support](https://neon.com/docs/introduction/support#open-the-support-center).

![The Support center drawer in the Neon Console](https://neon.com/docs/changelog/support_center.png)

## Fixes & improvements

<details>

<summary>**Postgres extensions**</summary>

- `plv8` is deprecated on Neon, and now so are `plcoffee` (CoffeeScript) and `plls` (LiveScript), which ship with it on Postgres 14, 15, and 16. `CREATE EXTENSION plcoffee` and `CREATE EXTENSION plls` now fail with a deprecation message, but existing installs keep working. If you still use them, migrate functions to `plpgsql` or application code and drop the extensions. See [The plv8 extension](https://neon.com/docs/extensions/plv8) and [Supported Postgres extensions](https://neon.com/docs/extensions/pg-extensions).

</details>

<details>

<summary>**Neon Functions**</summary>

- The total size of a function's [environment variables](https://neon.com/docs/compute/functions/environment-variables#constraints) is now limited to 32 KiB, and deploys over the limit fail with an error. Previously, a deploy with 32 to 64 KiB of variables succeeded, but every request to the function returned a `404`.

</details>

<details>

<summary>**Object Storage**</summary>

- Objects uploaded with [multipart upload](https://neon.com/docs/storage/objects#multipart-upload) can now be up to 10 GiB, up from 5 GiB. Single-request uploads are still limited to 5 GiB. See [Limits](https://neon.com/docs/storage/overview#limits).

</details>

<details>

<summary>**AI Gateway**</summary>

- Fixed an issue where Gemini models on the [chat completions endpoint](https://neon.com/docs/ai-gateway/chat-completions) returned `400 Unknown name "stream_options"` when a request set `stream_options`, as the OpenAI SDK does to request usage in a stream. Requests with `parallel_tool_calls: true` now work too. Gemini doesn't support `parallel_tool_calls: false`, so leave that field out.

</details>

<details>

<summary>**Realtime**</summary>

- The [Neon Realtime](https://neon.com/docs/realtime/sdks/typescript) client now supports React Native (`@neon/realtime` 0.1.2 or later). Use the new `webSocketFactory` option to customize the WebSocket connection, for example to send an allowed origin.

</details>

<details>

<summary>**Neon Console**</summary>

- We updated the Drizzle Studio integration behind the [**Tables** page](https://neon.com/docs/guides/tables), where you browse and edit your data, to version 1.6.1. It fixes an issue with renaming schemas. For details, see the [Neon Drizzle Studio Integration Changelog](https://github.com/neondatabase/neon-drizzle-studio-changelog/blob/main/CHANGELOG.md).
- **Analyze** is now **Explain (Analyze)** in the [SQL Editor](https://neon.com/docs/get-started/query-with-neon-sql-editor#explain-and-analyze), with a tooltip warning that it runs data-modifying statements such as `INSERT`, `UPDATE`, `DELETE`, and `MERGE`. Explain plans now include Neon's `PREFETCH` and `FILECACHE` options, so **Explain (Analyze)** shows compute cache hits and prefetch statistics.

</details>

<details>

<summary>**Neon CLI**</summary>

- You can now create [Claimable Neon](https://neon.com/docs/reference/claimable-neon) projects in any AWS region that accepts new Neon projects. Pass `--region-id` to [`neon claim create`](https://neon.com/docs/cli/claim) or `neon init --claimable` (Neon CLI 8.8.0 or later), or `region_id` in the API request. If you leave it out, the project lands in `aws-us-east-2`, as before.
- Fixed `neon login --keyring` failing on Windows after the browser step.

</details>

<details>

<summary>**Neon API**</summary>

- New [`GET /projects/count`](https://neon.com/docs/reference/api/projects/count-projects) endpoint (beta) returns the number of active projects in an organization, so you don't have to page through `GET /projects`. With a personal API key, pass `org_id`. With an org API key, it's inferred.

  ```bash
  curl 'https://console.neon.tech/api/v2/projects/count?org_id=org-example-12345678' \
    -H 'Accept: application/json' \
    -H "Authorization: Bearer $NEON_API_KEY"
  ```

  ```json
  { "count": 12 }
  ```

</details>

<details>

<summary>**Neon MCP Server**</summary>

- The MCP server's documentation tools are now `search_docs` and `get_doc`, replacing `list_docs_resources` and `get_doc_resource`. `search_docs` returns ranked results from across neon.com (the docs, API reference, guides, Postgres tutorial, FAQs, blog, and changelog), so your agent finds the right page without loading the whole docs index. If your agent's prompts or tool allowlists name the old tools, update them. See [Neon MCP Server](https://neon.com/docs/ai/neon-mcp-server#available-tools).

</details>

<details>

<summary>**Vercel integrations**</summary>

- With the [Neon-Managed Vercel integration](https://neon.com/docs/guides/neon-managed-vercel-integration#choose-a-production-branch), you can now choose which Neon branch supplies Vercel **Production** credentials when you connect. To change it later, go to **Integrations**, click **Manage** next to **Vercel**, and open the **Branches** tab.
- If you installed Neon from the Vercel Marketplace, you can now choose which Neon branch backs Vercel **Production**. In the Neon Console, go to **Integrations** and click **Settings** next to **Vercel**. See [Choose a production branch](https://neon.com/docs/guides/vercel-managed-integration#choose-a-production-branch).
- New databases created from the Vercel Marketplace can turn on [Neon Realtime](https://neon.com/docs/realtime/overview) (beta) at install.
- Fixed an issue where a failed update to a preview branch could stop the [Neon-Managed Vercel integration](https://neon.com/docs/guides/neon-managed-vercel-integration) from syncing new credentials to your Production environment, for example after a password rotation.

</details>

<details>

<summary>**OpenTelemetry integration**</summary>

- Fixed an issue where you couldn't save an [OpenTelemetry integration](https://neon.com/docs/guides/opentelemetry) for Dynatrace or Splunk Observability because credential validation failed.
- When you change an OpenTelemetry integration's endpoint, protocol, or endpoint overrides, you'll need to re-enter its credentials.

</details>
