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

# Link environment to server

> Link a server environment.

`veryfront__create_server_environment_link`

Requires project.runtime.manage.

## Access

No external-service connection is required. Use a Veryfront credential with access to the requested resources.

**Call type:** Can change resources.

## Arguments

| Field | Type | Required | Description and constraints |
| - | - | - | - |
| `server_id` | `string` | Yes | ID of a server you own. Linking and unlinking require project.runtime.manage on every project currently linked to the server. If none are linked, no project capability is required. Linking also requires project.runtime.manage on the environment’s project. Unlinking also requires API-key delete scope. Format: `uuid`. |
| `environment_id` | `string` | Yes | Provide the environment id. Format: `uuid`. |

## Example request

Send this JSON-RPC request through an initialized MCP client. Replace sample identifiers and values before calling the tool. See [MCP client setup](https://veryfront.com/docs/cloud/getting-started/connect-mcp.md).

```json title="request.json" theme={null}
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "veryfront__create_server_environment_link",
    "arguments": {
      "server_id": "00000000-0000-4000-8000-000000000000",
      "environment_id": "00000000-0000-4000-8000-000000000000"
    }
  }
}
```

## Result

The published output shape is summarized below. Inspect both the MCP response content and `isError` when handling a call.

| Field | Type | Required | Description and constraints |
| - | - | - | - |
| `id` | `string` | Yes | Unique identifier for the returned record. Format: `uuid`. |
| `short_id` | `string` | Yes | The short id returned by the tool. |
| `user_id` | `string` | Yes | The user id returned by the tool. Format: `uuid`. |
| `environment_ids` | `string[]` | Yes | List of environment ids returned by the tool. |
| `hostname` | `string` | Yes | The hostname returned by the tool. |
| `status` | `string` | Yes | Lifecycle status for the returned record. Values: `"pending"`, `"provisioning"`, `"running"`, `"error"`, `"deleting"`. |
| `created_at` | `string` | Yes | Creation timestamp in ISO 8601 format. |
| `updated_at` | `string` | Yes | Last update timestamp in ISO 8601 format. |

## Full schemas

```json title="input-schema.json" theme={null}
{
  "type": "object",
  "properties": {
    "server_id": {
      "type": "string",
      "format": "uuid",
      "description": "ID of a server you own. Linking and unlinking require project.runtime.manage on every project currently linked to the server. If none are linked, no project capability is required. Linking also requires project.runtime.manage on the environment’s project. Unlinking also requires API-key delete scope."
    },
    "environment_id": {
      "type": "string",
      "format": "uuid",
      "description": "Provide the environment id."
    }
  },
  "required": [
    "server_id",
    "environment_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "Arguments for the create_server_environment_link tool."
}
```

```json title="output-schema.json" theme={null}
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Unique identifier for the returned record."
    },
    "short_id": {
      "type": "string",
      "description": "The short id returned by the tool."
    },
    "user_id": {
      "type": "string",
      "format": "uuid",
      "description": "The user id returned by the tool."
    },
    "environment_ids": {
      "type": "array",
      "items": {
        "type": "string",
        "format": "uuid",
        "description": "One environment id item returned by the tool."
      },
      "description": "List of environment ids returned by the tool."
    },
    "hostname": {
      "type": "string",
      "description": "The hostname returned by the tool."
    },
    "status": {
      "type": "string",
      "enum": [
        "pending",
        "provisioning",
        "running",
        "error",
        "deleting"
      ],
      "description": "Lifecycle status for the returned record."
    },
    "created_at": {
      "type": "string",
      "description": "Creation timestamp in ISO 8601 format."
    },
    "updated_at": {
      "type": "string",
      "description": "Last update timestamp in ISO 8601 format."
    }
  },
  "required": [
    "id",
    "short_id",
    "user_id",
    "environment_ids",
    "hostname",
    "status",
    "created_at",
    "updated_at"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#",
  "description": "Structured result returned by the create_server_environment_link tool."
}
```

<details>
  <summary>Try this tool</summary>

  Replace sample arguments with values for your project or connected account. Calls run only when you select Run tool.

  MCP tool call

  Call `veryfront__create_server_environment_link` against the Veryfront MCP endpoint.

  Bearer token or API key

  Arguments (JSON)

  Run this tool with these arguments.

  Run tool

  Output JSON

  <pre />
</details>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.