---
date: 2026-10-31T00:00:00.000Z
tags:
  - mcp
  - ai-assistant
  - personal access token
  - security
  - permissions
  - communication
  - notifications
  - approvals
  - services
  - scopes
  - cli
  - agent
  - api
  - monthly
toc_max_heading_level: 2
doc_id: c4fc868b-0646-44be-be8b-8ca87856f6d2
description: >-
  October updates: connect any AI assistant to your organization with one URL
  and manage every connection as a personal access token, reach people in the
  bell, by email, and in Slack with Communications, browse the sample services
  and scopes nullplatform maintains, and get new CLI, agent, and scopes
  releases.
keywords:
  - MCP
  - MCP server
  - Model Context Protocol
  - AI assistant
  - AI agents
  - Claude
  - Kiro
  - Cursor
  - Codex
  - personal access tokens
  - user settings
  - API keys
  - grants
  - expires_in
  - communications
  - inbox
  - bell
  - inbox settings
  - inbox rules
  - announcements
  - banners
  - Slack
  - email
  - sample services
  - sample scopes
  - np communications
  - dry run
  - OpenShift
  - Istio
  - Kubernetes
  - JWKS
  - parameters
title: October 2026
slug: october-2026
canonical: 'https://docs.nullplatform.com/changelog/october-2026'
---
October updates: connect any AI assistant to your organization with one URL and manage every connection as a personal access token, reach people in the bell, by email, and in Slack with Communications, browse the sample services and scopes nullplatform maintains, and get new CLI, agent, and scopes releases (check the scopes one before you upgrade).

## ✨ MCP server: connect any AI assistant with one URL

Your organization now has a hosted MCP server. Add one URL to your AI assistant, sign in from the browser, and choose what the agent can do. There's nothing to install and no API key to copy. Once it's connected, the agent can query, troubleshoot, and operate nullplatform for you, **as you**: with only the access you approve, and never more than you have.

It works with any assistant that supports remote MCP servers: Claude Code, Claude on the web and desktop, Cowork, Kiro, Cursor, Codex, and others. That includes people who never open a terminal, since they can ask about their deployments from a chat window. The URL is the one you use to sign in to nullplatform, with `/mcp` at the end:

```bash
claude mcp add --transport http nullplatform https://<your-org>.app.nullplatform.io/mcp
```

The first time the agent connects, your browser opens and asks you to approve the connection. Take the walkthrough:

<GuidedTour
  alt="The screen that asks you to approve an agent's connection, recreated as an HTML scene with a guided walkthrough"
  steps={[
    {
      title: '1. Check who is asking',
      body: 'The screen names the agent and your organization. Continue only if you started the connection from your assistant yourself.',
      anchor: 'consent-request',
      placement: 'bottom',
    },
    {
      title: '2. Name it and set how long it lasts',
      body: 'Both come filled in. The name helps you tell connections apart, and a connection lasts a year at most.',
      anchor: 'consent-identification',
      placement: 'bottom',
    },
    {
      title: '3. Choose what the agent can do',
      body: 'Same access as me follows your roles as they change. Choose grants limits the agent to the resources, roles, or permissions you pick.',
      anchor: 'consent-access',
      placement: 'top',
      align: 'end',
    },
    {
      title: '4. Authorize',
      body: 'Your browser sends you back to your assistant, connected. The connection shows up as a personal access token in your user settings.',
      anchor: 'consent-authorize',
      placement: 'top',
    },
  ]}
>
  <ConsentScene />
</GuidedTour>

The next time you connect, the screen lists the tokens your earlier connections created. Pick one to continue with the access it already has, or create a new connection.

👉 See [Connect an AI assistant to nullplatform](/docs/mcp-server).

## ✨ Personal access tokens

Every MCP connection is a personal access token, and you can create them yourself too. A personal access token acts as you from the CLI, your own scripts, or an AI assistant. It follows your access, or a set of grants you choose, and it can never do more than you can.

Find them under **User settings > Personal access tokens**, where you can see what each one can do, extend it, or delete it. Deleting a token cuts the agent's access right away.

The tokens are also available through the API, with new `/pat` endpoints to list, create, read, update, and delete them. To set how long a token lasts, send `expires_in` in seconds, so the expiration doesn't depend on your machine's clock.
👉 See [Personal access tokens](/docs/authorization/personal-access-tokens).

## ✨ Communications: tell people what needs their attention

Communications is how nullplatform tells people what needs their attention, right in the product: an approval waiting on them, a deployment that failed, or a maintenance window that platform leaders announced. It has three parts:

- **Your inbox.** The bell in the header, where each person reads what involves them and chooses what reaches them.
- **Announcements.** Messages platform leaders publish to the whole organization, in the bell, as a banner across the product, in Slack, or any combination. They replace banners.
- **Inbox rules.** What triggers a notification, who receives it, and what it says. Nullplatform ships built-in rules for approvals, action items, deployments, and builds, and you can create your own, even for events nullplatform doesn't observe, like a finding from your CI scanner, and send them from your code through the API or the CLI.

Take the walkthrough of the bell:

<GuidedTour
  alt="The bell in the header, recreated as an HTML scene with a guided walkthrough"
  steps={[
    {
      title: '1. Open the bell',
      body: 'Inbox holds what involves you. The number on the bell counts your unread items there.',
      anchor: 'inbox-tabs',
      placement: 'bottom',
      align: 'end',
    },
    {
      title: '2. Act on what waits for you',
      body: 'Approvals you can decide are pinned under Requires action. Everything else is grouped by day.',
      anchor: 'inbox-requires-action',
      placement: 'left',
    },
    {
      title: '3. Read the announcements',
      body: 'Maintenance windows, incidents, and news from platform leaders and from nullplatform. They reach everyone in their audience.',
      anchor: 'inbox-announcements',
      placement: 'left',
    },
    {
      title: '4. Choose what reaches you',
      body: 'The settings icon opens Inbox settings. You can also get there from User settings > Inbox.',
      anchor: 'inbox-settings-link',
      placement: 'bottom',
      align: 'end',
    },
  ]}
>
  <InboxScene />
</GuidedTour>

### Choose what reaches you, and where

In **Inbox settings**, each rule is **Off**, **Involving me**, or **Everything**, in the bell and by email. Your default applies across the organization, and you can customize it for one account, namespace, or application, where the most specific one wins. Email is off for every rule until you turn it on.

Platform leaders manage announcements and inbox rules, including what gets posted to Slack, from **Platform settings > Communications**.
👉 See [Communications](/docs/communications), [Announcements](/docs/communications/announcements), and [Inbox rules](/docs/communications/inbox-rules).

## ✨ CLI, agent, and scopes releases

### CLI 2.12.0 and 2.12.1

The CLI shipped two releases: the new `np communications` commands manage inbox rules, notifications, and announcements, send notifications from your own rules, and take `--dry-run` to try a rule or a notification without saving or sending anything. `np dimension value list` also filters by `--dimension-id`.

👉 See the [CLI 2.12.0](/changelog/cli-2.12.0) and [CLI 2.12.1](/changelog/cli-2.12.1) release notes.

### Agent 0.15.0

The [control plane agent](/docs/agent/overview) ships CLI 2.12.0, and its nonroot image now runs on OpenShift with the arbitrary UID that the restricted SCC assigns.

👉 See every [agent release](/changelog/tags/agent).

### Agent channels without an API key

An agent notification channel no longer needs your API key. Leave it out, and nullplatform creates and manages a credential that can only dispatch to the agent. In the UI, new channels start on **Platform-managed credential**, and you can still choose **Use my own API key**.

👉 See [Channel credential](/docs/notifications/channels#channel-credential).

### Scopes 1.19.0

Kubernetes scopes can publish their route on additional Istio gateways, and wait in preStop without a shell, so images without one (distroless, scratch) stop returning 502s while pods are replaced. On AKS, they can make their Azure DNS calls as a managed identity instead of with the agent's client secret. Deployment actions on the same scope now run one at a time, and the release fixes log search, node drains, and deletes.

:::warning Action required

Kubernetes scopes now honor the gateway namespace set in the container-orchestration provider (`gateway.namespace`). If yours sets a value other than `gateways`, check that it points to the namespace your Istio gateways live in before you upgrade.

:::

👉 See the [Scopes 1.19.0](/changelog/scopes-1.19.0) release notes.

## Also in October

- **Browse the sample services and scopes nullplatform maintains.** Two new pages list the working examples in public repositories, from databases, queues, and storage to containers, scheduled tasks, static files, Lambda, and mobile apps, each linked to its latest release. Adopt one as it is, or start your own from it. See [Sample services](/docs/services/sample-services) and [Sample scopes](/docs/agent-backed-scopes/sample-scopes).
- **Verify the token a scope gives its links.** The API reference documents [`GET /scope/.well-known/jwks.json`](/docs/api/scope-jwks), a public endpoint that returns the keys to verify the signature of the `token_for_links` JWT in a [scope](/docs/api/scope-read).
- **Create a parameter and its values in one request.** [`POST /parameter`](/docs/api/parameter-create) accepts `values`. The documented size limits are also right now: 32 KB for an environment variable and 1 MB for a file.

---

That's all for October, from the **nullplatform** team! ❤️
