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

# Get started with Unstructured Transform for Claude Code

> Learn how to install the Unstructured Transform MCP server into Claude Code. You can then point to your files and have Transform start producing partitioned, enriched, chunked, and embedded data based on your files in minutes.

## Requirements

Before you begin, you must have the following:

* A Claude plan. To see if you have a plan, [sign in to Claude](https://claude.ai/login) and then on the sidebar, click your user icon. [Sign up for Claude](https://claude.ai/login).
* Claude Code installed on your local development machine. To see if it is, from your terminal, run `claude -v` or `claude --version`. [Install Claude Code from your terminal](https://code.claude.com/docs/en/quickstart).

## Install the Transform MCP server

<Tip>
  You should be able to instruct Claude Code to install the Transform MCP server by asking Claude Code the following:

  ```text theme={null}
  Install the Unstructured Transform MCP server by using these instructions: 
  https://docs.unstructured.io/transform/get-started/claude-code.md
  ```

  During this process, Claude Code will open a browser window where you sign in to Transform to complete authentication. If you do not have a Transform account, click **Register** and then follow the on-screen directions to finish authenticating. Once authenticated, close the browser and return to Claude Code.

  If this does not work, to install the Transform MCP server manually, complete the following steps.
</Tip>

If you were able to install the Transform MCP server using the prompt above, skip ahead to [parse your source files](#parse-your-source-files).

1. From your terminal, register the Transform MCP server:

   ```bash theme={null}
   claude mcp add --transport http --scope user unstructured-transform https://mcp.transform.unstructured.io
   ```

   <Accordion title="Can't connect over HTTP directly?" defaultOpen={false}>
     Use the [`mcp-remote`](https://www.npmjs.com/package/mcp-remote) proxy instead.

     1. From your terminal, register the Transform MCP server using `mcp-remote`:

        ```bash theme={null}
        claude mcp add --scope user transform -- npx -y mcp-remote https://mcp.transform.unstructured.io
        ```

        This command requires you to have Node.js installed on your local development machine. To see if it is, in your terminal, run `node -v` or `node --version`. [Install Node.js](https://nodejs.org/en/download).

     2. From your terminal, run the following command to authenticate:

        ```bash theme={null}
        npx -y mcp-remote https://mcp.transform.unstructured.io
        ```

     3. Authenticate in your browser, and then press `Ctrl + C` to return to your terminal prompt.
   </Accordion>

2. Authenticate with the Transform MCP server:

   ```text theme={null}
   claude mcp login unstructured-transform
   ```

   Follow the on-screen directions to finish authenticating in your browser.

   <Accordion title="Running Claude Code with the Bash sandbox enabled? Read this." defaultOpen={false}>
     If you run Claude Code with the [Bash sandbox](https://code.claude.com/docs/en/sandboxing) enabled, you will need to allow the Transform MCP server through the Bash sandbox.

     Add the Transform MCP server's domain to your allowed network domains. In a text editor, add the following setting to your Claude Code `settings.json` file as a top-level object:

     ```json theme={null}
     {
       "sandbox": {
         "enabled": true,
         "network": {
           "allowedDomains": [
             "mcp.transform.unstructured.io"
           ]
         }
       }
     }
     ```

     <Note>
       Be aware:

       * `sandbox.enabled` applies across *every project* on your machine, not just this one.
       * `allowedDomains` acts as an allowlist: any domain not listed can trigger an approval prompt, or be blocked outright if you have configured stricter sandbox settings.

       For more information, see [Sandbox settings](https://code.claude.com/docs/en/settings#sandbox-settings) in the Claude Code documentation.

       If you have already sandboxed other tools or MCP servers, add `mcp.transform.unstructured.io` to your existing `allowedDomains` list rather than replacing it.
     </Note>

     The Claude Code `settings.json` file can typically be found in the following location:

     * macOS and Linux: `~/.claude/settings.json`
     * Windows: `%USERPROFILE%\.claude\settings.json`

     However, see [Claude Code settings](https://code.claude.com/docs/en/settings) in the Claude Code documentation.
   </Accordion>

3. Verify you are connected to the Transform MCP server:

   ```text theme={null}
     claude mcp get unstructured-transform
   ```

   The Transform MCP server is ready for you to start using.

   <Info>
     Connecting to Transform with Claude Code does not create a connection for Claude Desktop, claude.ai, or the Claude mobile apps. Claude Code maintains its own separate connection, registering MCP servers *locally* so you can scope and share server configurations per machine or project.

     Claude Desktop, claude.ai, and the Claude mobile apps share a single connection to the Transform MCP server, which is defined in your Claude *account*. See [Get started with Unstructured Transform for Claude Desktop](/transform/get-started/claude-desktop).
   </Info>

## Parse your source files

Parsing requests have the following limits:

* Each file must be of a [supported file type](/transform/supported-file-types).
* Each file must be 50 MB or less in size.
* Each request must have 10 files or fewer.
* Only 5 requests can be running at a time.

The Transform MCP server is designed to notify Claude Code about these limits. Because of this, Claude Code should notify you whenever it encounters a file that exceeds 50 MB in size. Also, Claude Code should formulate strategies to send requests that are 10 files or fewer and not cause more than 5 requests to be running at a time.

1. After you install the Transform MCP server and start a Claude Code session, from your terminal, switch to the folder on your local machine that stores the files you want Transform to parse.
2. Enter the following prompt:

   ```text theme={null}
   Use the Unstructured Transform MCP server to parse the files in this project.

   Provide the results as JSON files, one JSON file per source file.
   ```

   As needed, adapt the phrase `in this project` in the preceding prompt to indicate a more specific project folder. Also, as needed, guide Claude Code as to where to write Transform's output into the project.

   Transform parses your input files and delivers its results to you as a set of output files, one output file per input file.

## Extract structured data

If you want to pull specific fields from your files, instead of converting the files in full, ask for an *extraction*. To determine what structured data Transform can extract from your files, use a prompt similar to the following:

```text theme={null}
Use the Unstructured Transform MCP server to extract structured data from these files.

I don't have a schema — suggest one based on what's in the document, show it to me, and then run the extraction with it.
```

Your tool parses each file first, then extracts the field values from the parsed element JSON; this is because the Transform MCP extraction tools read a file's parsed output, rather than the raw file itself. Transform returns results as JSON matching the schema, wrapped with the source filename so you can tell a batch apart.

If you know the specific fields you want, include them in your prompt to guide Transform in extracting just the information that's important to you. For more information, including prompting patterns and performance considerations, see [Structured data extraction](/transform/sde).

## Next steps

* [Control Transform file parsing output](/transform/output): Control how the Unstructured Transform MCP server instructs Transform to partition, enrich, chunk, and embed the data based on your files.
* [Control Transform structured data extraction](/transform/sde): Control how the Unstructured Transform MCP server extracts and formats structured data from your files.
* [Control Transform generated sample code](/transform/code): Control how the Unstructured Transform MCP server generates sample curl or Python code that demonstrates how to use Transform to partition, enrich, chunk, and embed the data based on your files.

## Questions? Need help?

* For technical support, [request support](/support/request).
