> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getmodus.com/llms.txt
> Use this file to discover all available pages before exploring further.

# scopes

> Full CRUD and lifecycle for Modus scopes.

Call path: `mgmt.scopes` after `new ModusManagement(...)`.

## Properties

<ResponseField name={"ops"} type={"ManagementScopesOperations"} required />

## Methods

### acceptOwnershipTransfer()

```typescript
acceptOwnershipTransfer(scopeId: string | number): Promise<object>
```

Accept a pending scope ownership transfer.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required />

#### Returns

`Promise<object>`

### cancelOwnershipTransfer()

```typescript
cancelOwnershipTransfer(scopeId: string | number): Promise<object>
```

Cancel a pending scope ownership transfer.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required />

#### Returns

`Promise<object>`

### conversations()

```typescript
conversations(scopeId: string | number): ScopeConversationsResource
```

Conversations for a scope.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required>
  Scope id.
</ResponseField>

#### Returns

`ScopeConversationsResource`

A conversations resource scoped to the scope.

### create()

```typescript
create(options: CreateScopeOptions): Promise<object>
```

Create a new scope in the organization.

```ts
const scope = await mgmt.scopes.create({ name: 'Support assistant', model: 'claude-sonnet-5' })
```

#### Parameters

<ResponseField name={"options"} type={"CreateScopeOptions"} required />

#### Returns

`Promise<object>`

The created scope (draft).

### delete()

```typescript
delete(scopeId: string | number): Promise<void>
```

Delete a scope.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required>
  Scope id.
</ResponseField>

#### Returns

`Promise<void>`

Resolves when the scope is deleted.

### deploy()

```typescript
deploy(scopeId: string | number): Promise<object>
```

Publish the current draft of a scope.

```ts
await mgmt.scopes.update(scopeId, { instructions: ['Be concise.'] })
const published = await mgmt.scopes.deploy(scopeId)
```

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required>
  Scope id.
</ResponseField>

#### Returns

`Promise<object>`

The published scope.

### evaluations()

```typescript
evaluations(scopeId: string | number): ScopeEvaluationsResource
```

Evaluations for a scope.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required>
  Scope id.
</ResponseField>

#### Returns

`ScopeEvaluationsResource`

An evaluations resource scoped to the scope.

### get()

```typescript
get(scopeId: string | number, options?: { view: VariationView }): Promise<object>
```

Retrieve a scope with full configuration.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required>
  Scope id.
</ResponseField>

<ResponseField name={"options"} type={"{ view: VariationView }"} />

#### Returns

`Promise<object>`

The scope.

### getVariation()

```typescript
getVariation(scopeId: string | number, options: { variationUid: string }): Promise<object>
```

Retrieve a specific scope variation by uid.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required>
  Scope id.
</ResponseField>

<ResponseField name={"options"} type={"{ variationUid: string }"} required />

#### Returns

`Promise<object>`

The scope variation.

### list()

```typescript
list(options?: { pageSize: number; pageToken: string; search: string; view: VariationView; managerId: number }): Promise<Page<object>>
```

List scopes in the organization.

#### Parameters

<ResponseField name={"options"} type={"{ pageSize: number; pageToken: string; search: string; view: VariationView; man…"} />

#### Returns

`Promise<Page<object>>`

A page of scopes.

### memories()

```typescript
memories(scopeId: string | number): ScopeMemoriesResource
```

Long-term memories for a scope.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required>
  Scope id.
</ResponseField>

#### Returns

`ScopeMemoriesResource`

A memories resource scoped to the scope.

### patchMcpConfig()

```typescript
patchMcpConfig(scopeId: string | number, options: { mcpConfig: Record<string, unknown> }): Promise<void>
```

Update MCP server configuration for a scope.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required>
  Scope id.
</ResponseField>

<ResponseField name={"options"} type={"{ mcpConfig: Record<string, unknown> }"} required />

#### Returns

`Promise<void>`

### requestOwnershipTransfer()

```typescript
requestOwnershipTransfer(scopeId: string | number, options: { newOwnerUserId: string }): Promise<object>
```

Start transferring ownership of a scope to another organization member.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required>
  Scope id.
</ResponseField>

<ResponseField name={"options"} type={"{ newOwnerUserId: string }"} required />

#### Returns

`Promise<object>`

The scope with a pending ownership transfer.

### restore()

```typescript
restore(scopeId: string | number): Promise<object>
```

Restore a previously deleted scope.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required>
  Scope id.
</ResponseField>

#### Returns

`Promise<object>`

The restored scope.

### supervision()

```typescript
supervision(scopeId: string | number): ScopeSupervisionResource
```

Supervision (subordinate scopes) for a scope.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required>
  Scope id.
</ResponseField>

#### Returns

`ScopeSupervisionResource`

A supervision resource scoped to the scope.

### update()

```typescript
update(scopeId: string | number, options?: UpdateScopeOptions): Promise<object>
```

Update a scope's configuration.

Only the fields you pass are changed. To clear a field, name it in
`updateMask` (comma-separated field names) and leave its argument unset.

#### Parameters

<ResponseField name={"scopeId"} type={"string | number"} required>
  Scope id.
</ResponseField>

<ResponseField name={"options"} type={"UpdateScopeOptions"} />

#### Returns

`Promise<object>`

The updated scope.
