MCP Tools Reference: dataform.googleapis.com

Herramienta: search_files

Busca archivos y directorios en un espacio de trabajo de Dataform que coincidan con un filtro de búsqueda.

Usa esta herramienta en lugar de enumerar directorios de forma recursiva con la herramienta query_directory_contents cuando busques un archivo por nombre o extensión en un repositorio grande.

El valor del parámetro workspace debe tener el formato projects/{project_id}/locations/{location}/repositories/{repository}/workspaces/{workspace}.

El valor del parámetro filter restringe los resultados. El filtrado solo se admite en el campo path (por ejemplo, path="*.sqlx" o path="definitions/model.sqlx").

En la siguiente muestra de código, se muestra cómo usar curl para llamar a la herramienta de MCP search_files.

Solicitud de Curl
curl --location 'https://dataform.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "search_files",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Esquema de entrada

Es la configuración que contiene los parámetros de la solicitud de búsqueda de archivos.

SearchFilesRequest

Representación JSON
{
  "workspace": string,
  "pageSize": integer,
  "pageToken": string,
  "filter": string
}
Campos
workspace

string

Obligatorio. Es el nombre del espacio de trabajo.

pageSize

integer

Es opcional. Es la cantidad máxima de resultados de la búsqueda que se devolverán. Es posible que el servidor devuelva menos elementos de los que se solicitaron. Si no se especifica, el servidor elegirá un valor predeterminado adecuado.

pageToken

string

Es opcional. Es el token de página que se recibió de una llamada a SearchFilesRequest anterior. Proporciona esto para recuperar la página siguiente.

Cuando se realiza la paginación, todos los demás parámetros proporcionados a SearchFilesRequest, con la excepción de page_size, deben coincidir con la llamada que proporcionó el token de la página.

filter

string

Es opcional. Es un filtro opcional para la lista que se devuelve en formato de filtrado. Actualmente, el filtrado solo se admite en el campo path. Consulta https://google.aip.dev/160 para obtener más detalles.

Esquema de salida

Es la representación orientada al cliente de una respuesta de búsqueda de archivos.

SearchFilesResponse

Representación JSON
{
  "searchResults": [
    {
      object (SearchResult)
    }
  ],
  "nextPageToken": string
}
Campos
searchResults[]

object (SearchResult)

Lista de resultados coincidentes.

nextPageToken

string

Es opcional. Un token, que se puede enviar como page_token para recuperar la página siguiente. Si se omite este campo, no habrá páginas siguientes.

SearchResult

Representación JSON
{

  // Union field entry can be only one of the following:
  "file": {
    object (FileSearchResult)
  },
  "directory": {
    object (DirectorySearchResult)
  }
  // End of list of possible types for union field entry.
}
Campos
Campo de unión entry. Es el contenido de la entrada. entry puede ser solo uno de los parámetros siguientes:
file

object (FileSearchResult)

Detalles cuando el resultado de la búsqueda es un archivo.

directory

object (DirectorySearchResult)

Son los detalles cuando el resultado de la búsqueda es un directorio.

FileSearchResult

Representación JSON
{
  "path": string
}
Campos
path

string

Es la ruta de acceso del sistema de archivos relativa a la raíz del espacio de trabajo.

DirectorySearchResult

Representación JSON
{
  "path": string
}
Campos
path

string

Es la ruta de acceso del sistema de archivos relativa a la raíz del espacio de trabajo.

Anotaciones de herramientas

Las anotaciones de herramientas se envían a los clientes de MCP para describir el riesgo básico de una herramienta determinada. La mayoría de los clientes tratan estas sugerencias como no confiables, pero se pueden usar para decidir cuándo se le puede enviar un mensaje de confirmación a un usuario.

Junto con la cadena de título, se definen las siguientes sugerencias booleanas:

  • readOnlyHint: Si es verdadero, la herramienta no modifica su entorno. Valor predeterminado: false.
  • destructiveHint: Si es verdadero, la herramienta puede realizar acciones destructivas. Si es falso, la herramienta solo puede realizar acciones aditivas. Valor predeterminado: true.
  • idempotentHint: Si es verdadero, llamar a la herramienta de forma repetida con los mismos argumentos no tendrá ningún efecto adicional en su entorno. Valor predeterminado: false.
  • openWorldHint: Si es verdadero, la herramienta puede interactuar con un "mundo abierto" de entidades externas. Si es falso, la herramienta solo puede interactuar con entidades internas. Por ejemplo, una herramienta de búsqueda web sería de mundo abierto, mientras que una herramienta de memoria no lo sería.

Sugerencia destructiva: ❌ | Sugerencia idempotente: ✅ | Sugerencia de solo lectura: ✅ | Sugerencia de mundo abierto: ❌