---
title: start_here
description: Call this FIRST.
locale: en
version: 0.2.0
canonical: https://enterium-developer-docs.pages.dev/developers/mcp/tools/start_here/
---

> Documentation index: https://enterium-developer-docs.pages.dev/developers/llms.txt — every page of this portal has a Markdown twin at <route>.md; the frozen API contract is at https://enterium-developer-docs.pages.dev/developers/api/openapi.json.

:::note
Generated from the running server (agent capability version `2026-09-03.1`) — do not edit by hand.
:::

Call this FIRST. Returns the ordered plan + the capability version of the read surface.

Pass your cached serverInfo.version as `last_seen_version`: if the surface changed,
`changed` is true and `whats_new` lists what to adopt (new endpoints/fields) BEFORE you act.
On a first connect (no cached version) `whats_new` is the full changelog. Cache the returned
`capability_version` for next time.

**Access:** read-only — safe to call repeatedly, changes nothing

**Available at:** `/mcp/`, `/mcp/readonly/`

_Hints declared to MCP clients (ToolAnnotations)_

| Hint | Value |
| --- | --- |
| `readOnlyHint` | true |
| `destructiveHint` | false |
| `idempotentHint` | true |
| `openWorldHint` | false |

## Parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `last_seen_version` | `string \| null` | no | Capability version you cached from a previous connect (serverInfo.version); omit on first use |


## Example call

Send inside an initialized MCP session (see [Connecting](../../connecting/)). Every parameter is shown with a typed placeholder; drop the optional ones you do not need — but for defect/task tools the QA fields are what keeps a report out of quarantine.

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "start_here",
    "arguments": {
      "last_seen_version": "<last_seen_version>"
    }
  }
}
```

## Returns

| Field | Type | Description |
| --- | --- | --- |
| `capability_version` | `string` | Current version of the agent read surface |
| `you_last_seen` | `string \| null` | The version you passed in, echoed back |
| `changed` | `boolean` | True iff you passed a version and it differs from the current one |
| `whats_new` | `array of object` | Changelog entries newer than your version (all of them on a first connect) |
| `whats_new[].version` | `string` | Capability version of this entry (date-anchored, monotonic) |
| `whats_new[].added` | `array of string` | New endpoints, tools or fields a consumer can adopt |
| `whats_new[].changed` | `array of string` | Semantics that changed for a consumer |
| `whats_new[].deprecated` | `array of string` | What is going away and what replaces it |
| `read_first` | `string \| null` | Resource to read before acting when there is anything to adopt |
| `plan` | `string` | Ordered bootstrap plan for using the platform |
| `docs` | `object` | Public documentation entry points |
| `docs.portal` | `string` | Developer documentation portal (HTML entry) |
| `docs.llms` | `string` | Curated Markdown index of the portal (llms.txt) |
| `docs.sections` | `string` | Where the per-section map lives (MCP resource URI) |
| `docs.note` | `string` | How to use the portal on a user's behalf |

## If it fails

| Symptom | Cause | Action |
| --- | --- | --- |
| `401` | Token missing/expired | Tokens are issued by the platform owner via `POST /api/v1/auth/agent-token` (superuser-only) — ask for a re-issue. ⚠️ A new token **replaces** your grant set |
| `403` / capability error | Your token lacks the capability or the contract grant | Check `my_capabilities` first; ask the owner for the grant |
