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

# MCP server

> Query your Layer workspace from AI agents and LLM tools using the Model Context Protocol — search assets, contracts, people, and spend without writing API code.

Layer exposes an MCP-compatible server that lets AI agents and LLM-powered tools query your workspace data programmatically. If you use tools like Claude Desktop, Cursor, or custom AI agents, the MCP server gives them read access to your assets, discovered apps, and compliance controls.

<Note>
  The MCP server requires API access, available on the **Scale** plan.
</Note>

## Endpoint

```
POST https://app.axiomlayer.io/api/mcp
```

The server implements the [Model Context Protocol](https://modelcontextprotocol.io/) (JSON-RPC 2.0). It supports three standard MCP methods:

* `initialize` — returns server capabilities.
* `tools/list` — lists available tools.
* `tools/call` — executes a tool and returns results.

A `GET` request to the same URL returns server metadata (name, version, and available tools).

## Authentication

All requests must include a valid session. The MCP server uses the same authentication as the rest of the Layer API — requests are scoped to your organization automatically.

## Available tools

| Tool                     | Description                                                                      |
| ------------------------ | -------------------------------------------------------------------------------- |
| `axiomlayer_list_assets` | List assets (SaaS apps, devices, users) in your workspace                        |
| `drift_list_apps`        | List discovered shadow IT apps from drift detection                              |
| `codex_list_controls`    | List compliance controls with framework metadata                                 |
| `platform_get_overview`  | Get a cross-product summary with counts of assets, discovered apps, and controls |

### Common parameters

Every tool accepts these optional parameters:

| Parameter | Type            | Description                                               |
| --------- | --------------- | --------------------------------------------------------- |
| `limit`   | integer (1–200) | Maximum number of results to return                       |
| `status`  | string          | Filter results by status                                  |
| `search`  | string          | Case-insensitive text search across names and identifiers |

### Example request

```json theme={null}
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "axiomlayer_list_assets",
    "arguments": {
      "limit": 10,
      "search": "slack"
    }
  }
}
```

### Example response

```json theme={null}
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "Found 2 assets matching 'slack'..."
      }
    ],
    "structuredContent": {
      "assets": [
        {
          "id": "asset_abc123",
          "name": "Slack",
          "asset_type": "application",
          "status": "active"
        }
      ],
      "count": 2
    }
  }
}
```

## Use with Claude Desktop

To connect Layer to Claude Desktop, add the MCP server to your Claude Desktop configuration:

```json theme={null}
{
  "mcpServers": {
    "axiomlayer": {
      "url": "https://app.axiomlayer.io/api/mcp"
    }
  }
}
```

Once connected, you can ask Claude questions like "What SaaS apps does my company use?" or "Show me all shadow IT apps" and it will query your Layer workspace directly.
