# Install asx

These examples use published, verified artifacts. Keep signing keys on your server.

<span id="install-tab-script"></span><span id="install-panel-script"></span>

## Script tag

The relay is a route on your server. It signs calls as your registered app.

```html
<script src="https://cdn.comms.id/asx/1.1.0.js" integrity="sha384-gHeoeoXmBwKGb7A+MRwfcdQpqnvVDgY3vZe2lQ7L3WNg6+2sN2A29NBOJjuHOkvW" crossorigin="anonymous"></script>
<comms-id-asx relay="/api/comms-id/asx"></comms-id-asx>
```

<span id="install-tab-react"></span><span id="install-panel-react"></span>

## React

```sh
pnpm add @comms-id/asx-react@0.2.2 @comms-id/asx@0.4.1
```

```tsx
import { createAsxBrowserClient } from "@comms-id/asx/browser";
import { AsxLookup } from "@comms-id/asx-react";

const client = createAsxBrowserClient({ relayUrl: "/api/comms-id/asx" });
export const Example = () => <AsxLookup client={client} />;
```

<span id="install-tab-sdk"></span><span id="install-panel-sdk"></span>

## Server SDK

```sh
pnpm add @comms-id/asx@0.4.1
```

```ts
import { createAsxClient } from "@comms-id/asx/server";
const client = createAsxClient({
  clientId: process.env.COMMS_ID_CLIENT_ID!,
  privateJwk: JSON.parse(process.env.COMMS_ID_PRIVATE_JWK!),
});
```

See the operation reference for request, response and command-line examples.

<span id="install-tab-relay"></span><span id="install-panel-relay"></span>

## Relay

Install the server relay into your relying-party app:

```sh
pnpm dlx comms-id add asx-relay
```

<span id="install-tab-api"></span><span id="install-panel-api"></span>

## Agent tools

Product tools are served at https://mcp.comms.id. The documentation MCP serves
documentation only; it does not execute product operations.

## Operations

### lookup

[Read the lookup API reference](/docs/reference/asx/asx/asx-lookup).

### suggest

[Read the suggest API reference](/docs/reference/asx/asx/asx-suggest).

## Upgrading

[Upgrade guide](/docs/reference/asx/upgrade).
