read_file
On this page
toolread-only

read_file

One file from the release, byte-identical to the archive entry, with its SHA-256. Text is returned as UTF-8, anything else as base64. Large text files are read in ranges.

Updated 15 October 2026Needs an active membership

Ask for it in plain words#

PromptRead one file
Using Orvio, read source/css/site.css from Sotto.
Works with Remote MCP·Replace the highlighted parts

Inputs#

NameTypeRequiredWhat it does
identifierstringyesThe product's identifier, for example sotto.
pathstringyesThe file's path in the archive (source/css/site.css), or its path inside the product (css/site.css).
releasestringnoOptional pin: the version you saw in an earlier result.
offsetintegernoWhere to start reading, in bytes. Use range.next from the previous result to continue.
lengthintegernoHow many bytes to read: 1 to 262144. The tool also caps a single read.

Example#

The example ran over Orvio's synthetic test catalog (a product called Fixture Studio), so its names and values differ from the products you will see. The shape is exactly what the server returns.

Request

Arguments
{
  "identifier": "fixture-studio",
  "path": "source/css/site.css"
}

Result (shortened)

JSON
{
  "path": "source/css/site.css",
  "sourcePath": "css/site.css",
  "bytes": 398,
  "sha256": "f90faae01d0d…",
  "encoding": "utf-8",
  "content": ":root {\n  --brand-500: #2F6FDE;\n  --color-primary: var(--bra…",
  "range": {
    "offset": 0,
    "length": 398,
    "complete": true
  },
  "licence": {
    "path": "licenses/LICENSE.md"
  },
  "release": {
    "product": "fixture-studio",
    "version": "1.1.0",
    "releaseId": "f1000000-0000-4000-8000-000000000002",
    "publishedAt": "2026-10-05T00:00:00Z"
  }
}

Left out of the example: executable.

What comes back#

FieldWhat it holds
pathThe file's archive path.
encodingutf-8 for text, base64 for anything else.
contentThe file's bytes, exactly as the publisher wrote them.
bytesThe file's size in bytes.
sha256The SHA-256 of the whole file, to check what you received.
rangeWhich bytes this result holds, and where the next read starts.
warningsHeads-ups that do not stop the call, such as a membership payment problem. Usually empty.

Every result also carries what the request needs to be checked: the release (product, version, published date), the licence and notes, when they apply.

Errors#

CodeMeansWhat to do
product_unavailableNo listed product has that identifier.Search the catalog with search_products.
release_withdrawnThe whole product was taken down for now.Search the catalog for something similar with search_products.
release_replacedA newer release was published since the version you named or the cursor you used.Call the tool again without a release to use 0.1.3.
path_not_foundThe release has no such file, page, component or token.Use get_product or list_release_files to see what's included.
too_largeThe file is too large to send in one result.Read it in ranges with read_file offset and length, or download the ZIP: https://orvio.design/products/sotto
invalid_inputThe arguments do not match the tool's schema, or the cursor is not valid.Fix the input and call the tool again.
HTTP 401, 403 or 429Before the tool runs: the sign-in is not valid, the membership does not allow access, or there were too many requests.See Errors and fixes.

Every tool can also answer service_unavailable and integrity_error: try again in a few minutes.

Was this page clear? Yes · Not reallyEdit suggestions: support@orvio.design