> ## 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.

# Search file text

> Search file text.

`veryfront__search_file_text`

Requires project.files.read.

## Access

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

**Call type:** Read-only.

## Arguments

| Field | Type | Required | Description and constraints |
| - | - | - | - |
| `ref` | `string` | No | Content to read: main, branch:\<name-or-id>, release:\<version> or env:\<name>. Omit for main. |
| `query` | `string` | Yes | Literal text to find, or a regular expression when `is_regex` is true. |
| `pattern` | `string` | No | File path pattern, for example *.tsx or pages/*. |
| `is_regex` | `boolean` | No | Read query as a regular expression (default false). |
| `case_sensitive` | `boolean` | No | Match letter case exactly (default false). |
| `limit` | `integer` | No | Largest number of matching files, 1 to 100 (default 50). It limits files, not matching lines. Minimum: `1`. Maximum: `100`. |
| `project_reference` | `string` | No | Project ID or slug (defaults to the current project) |

## 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__search_file_text",
    "arguments": {
      "query": "example"
    }
  }
}
```

## 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 |
| - | - | - | - |
| `data` | `object[]` | Yes | Primary result records returned by the tool. |
| `total_matches` | `number` | Yes | Number of matching files returned. |

## Full schemas

```json title="input-schema.json" theme={null}
{
  "type": "object",
  "properties": {
    "ref": {
      "type": "string",
      "description": "Content to read: main, branch:<name-or-id>, release:<version> or env:<name>. Omit for main."
    },
    "query": {
      "type": "string",
      "description": "Literal text to find, or a regular expression when is_regex is true."
    },
    "pattern": {
      "type": "string",
      "description": "File path pattern, for example *.tsx or pages/*."
    },
    "is_regex": {
      "type": "boolean",
      "description": "Read query as a regular expression (default false)."
    },
    "case_sensitive": {
      "type": "boolean",
      "description": "Match letter case exactly (default false)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Largest number of matching files, 1 to 100 (default 50). It limits files, not matching lines."
    },
    "project_reference": {
      "type": "string",
      "description": "Project ID or slug (defaults to the current project)"
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false,
  "description": "Arguments for the search_file_text tool.",
  "$schema": "http://json-schema.org/draft-07/schema#"
}
```

```json title="output-schema.json" theme={null}
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path of the matching file."
          },
          "version_id": {
            "type": [
              "string",
              "null"
            ],
            "description": "Current version ID, or null when the search does not supply one."
          },
          "matches": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "line": {
                  "type": "number",
                  "description": "1-based line number of the matching line."
                },
                "content": {
                  "type": "string",
                  "description": "Text of the matching line, without surrounding lines."
                }
              },
              "required": [
                "line",
                "content"
              ],
              "additionalProperties": false
            },
            "description": "Matching lines in this file."
          }
        },
        "required": [
          "path",
          "version_id",
          "matches"
        ],
        "additionalProperties": false
      },
      "description": "Primary result records returned by the tool."
    },
    "total_matches": {
      "type": "number",
      "description": "Number of matching files returned."
    }
  },
  "required": [
    "data",
    "total_matches"
  ],
  "additionalProperties": false,
  "description": "Structured result returned by the search_file_text tool.",
  "$schema": "http://json-schema.org/draft-07/schema#"
}
```

<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__search_file_text` against the Veryfront MCP endpoint.

  Bearer token or API key

  Arguments (JSON)

  Run tool

  Output JSON

  <pre />
</details>


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