---
title: "client.agents"
description: ""
section: "Libraries"
group: "SDK resources"
order: 200
---

Accessed via `client.agents`.

## Methods

### `create`

Create an agent.

```ts
create(params: CreateAgentParams): Promise<Agent>
```

**Types:** [CreateAgentParams](/types/create-agent-params) · [Agent](/types/agent)

### `delete`

Soft-delete an agent.

```ts
delete(params: DeleteAgentParams): Promise<SuccessResponse>
```

**Types:** [DeleteAgentParams](/types/delete-agent-params) · [SuccessResponse](/types/success-response)

### `list`

List agents.

```ts
list(params?: Omit<ListAgentsParams, "filter" | "orderBy"> & { filter?: AgentFilter; orderBy?: AgentOrderBy[]; } & AgentShorthands): Promise<Page<Agent>>
```

**Types:** [ListAgentsParams](/types/list-agents-params) · [AgentFilter](/types/agent-filter) · [AgentOrderBy](/types/agent-order-by) · [AgentShorthands](/types/agent-shorthands) · [Page](/types/page) · [Agent](/types/agent)

### `purge`

Permanently delete a soft-deleted agent.

```ts
purge(params: PurgeAgentParams): Promise<SuccessResponse>
```

**Types:** [PurgeAgentParams](/types/purge-agent-params) · [SuccessResponse](/types/success-response)

### `restore`

Restore a soft-deleted agent.

```ts
restore(params: RestoreAgentParams): Promise<Agent>
```

**Types:** [RestoreAgentParams](/types/restore-agent-params) · [Agent](/types/agent)

### `retrieve`

Get an agent by ID.

```ts
retrieve(params: RetrieveAgentParams): Promise<Agent>
```

**Types:** [RetrieveAgentParams](/types/retrieve-agent-params) · [Agent](/types/agent)

### `update`

Update an agent.

```ts
update(params: UpdateAgentParams): Promise<Agent>
```

**Types:** [UpdateAgentParams](/types/update-agent-params) · [Agent](/types/agent)

## client.agents.mcpServers

Accessed via `client.agents.mcpServers`.

### `sync`

Replace all MCP server assignments for an agent. `PUT /api/agents/:id/mcp-servers`

```ts
sync(params: SyncAgentMcpServersParams): Promise<SuccessResponse>
```

**Types:** [SyncAgentMcpServersParams](/types/sync-agent-mcp-servers-params) · [SuccessResponse](/types/success-response)

## client.agents.skills

Accessed via `client.agents.skills`.

### `sync`

Replace all skill assignments for an agent. `PUT /api/agents/:id/skills`

```ts
sync(params: SyncAgentSkillsParams): Promise<SuccessResponse>
```

**Types:** [SyncAgentSkillsParams](/types/sync-agent-skills-params) · [SuccessResponse](/types/success-response)

## client.agents.tools

Accessed via `client.agents.tools`.

### `sync`

Replace all tool assignments for an agent.
`PUT /api/agents/:id/tools`

Pass the full desired set; anything not in `toolIds` is unassigned.

```ts
sync(params: SyncAgentToolsParams): Promise<SuccessResponse>
```

**Types:** [SyncAgentToolsParams](/types/sync-agent-tools-params) · [SuccessResponse](/types/success-response)

```ts
await client.agents.tools.sync({
  agentId: "agt_abc123",
  toolIds: ["tol_search", "tol_summarize"],
});
```
