---
title: "Send a Streamable HTTP MCP request to an environment"
method: POST
path: "/v1/sessions/{sessionId}/environments/{environmentId}/mcp"
---

# Send a Streamable HTTP MCP request to an environment

`POST /v1/sessions/{sessionId}/environments/{environmentId}/mcp`

Use only the provider-shaped, session-scoped credential returned beside mcpUrl. Archal validates its session, environment, and lease binding before proxying the MCP request. Workspace control-plane credentials are rejected.

## Path parameters

- `sessionId` string, required
- `environmentId` string, required

## Headers

- `Mcp-Session-Id` string
- `X-Request-Id` string

## Request body

- union
  - boolean
  - number
  - string
  - unknown[]
    - unknown
  - object

## Response `200`

Streamable HTTP MCP response

- union
  - boolean
  - number
  - string
  - unknown[]
    - unknown
  - object

## Other responses

- `202` — MCP notification accepted
- `400` — The request was rejected
- `401` — The request was rejected
- `403` — The request was rejected
- `404` — The request was rejected
- `409` — The request was rejected
- `429` — The request was rejected
- `500` — The request was rejected
- `502` — The request was rejected
- `503` — The request was rejected
- `504` — The request was rejected

---

[API](https://skmtc.dev/archal/apis/archal-api.md) · [All operations](https://skmtc.dev/archal/apis/archal-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/archal/archal-api/revisions/a06cd479cc93/schema)
