도구: search_files
검색 필터와 일치하는 Dataform 작업공간의 파일 및 디렉터리를 찾습니다.
대규모 저장소에서 이름이나 확장자로 파일을 찾을 때는 query_directory_contents 도구로 디렉터리를 재귀적으로 나열하는 대신 이 도구를 사용하세요.
workspace 매개변수 값은 projects/{project_id}/locations/{location}/repositories/{repository}/workspaces/{workspace} 형식이어야 합니다.
filter 파라미터 값은 결과를 제한합니다. 필터링은 path 필드 (예: path="*.sqlx" 또는 path="definitions/model.sqlx")에서만 지원됩니다.
다음 코드 샘플은 curl를 사용하여 search_files MCP 도구를 호출하는 방법을 보여줍니다.
| 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 }' |
입력 스키마
파일 검색 요청 매개변수가 포함된 구성입니다.
SearchFilesRequest
| JSON 표현 |
|---|
{ "workspace": string, "pageSize": integer, "pageToken": string, "filter": string } |
| 필드 | |
|---|---|
workspace |
필수 항목입니다. 작업공간의 이름입니다. |
pageSize |
(선택사항) 반환할 최대 검색 결과 수입니다. 서버에서 요청한 것보다 적은 항목을 반환할 수 있습니다. 지정하지 않으면 서버에서 적절한 기본값을 선택합니다. |
pageToken |
(선택사항) 이전 페이지로 나누는 경우 |
filter |
(선택사항) 필터링 형식으로 반환된 목록의 선택적 필터입니다. 현재 필터링은 |
출력 스키마
파일 검색 응답의 클라이언트 대상 표현입니다.
SearchFilesResponse
| JSON 표현 |
|---|
{
"searchResults": [
{
object ( |
| 필드 | |
|---|---|
searchResults[] |
일치하는 결과 목록입니다. |
nextPageToken |
(선택사항) 다음 페이지를 검색하기 위해 |
SearchResult
| JSON 표현 |
|---|
{ // Union field |
| 필드 | |
|---|---|
통합 필드 entry. 항목의 콘텐츠입니다. entry은 다음 중 하나여야 합니다. |
|
file |
검색 결과가 파일인 경우의 세부정보입니다. |
directory |
검색 결과가 디렉터리인 경우의 세부정보입니다. |
FileSearchResult
| JSON 표현 |
|---|
{ "path": string } |
| 필드 | |
|---|---|
path |
작업공간 루트를 기준으로 하는 파일 시스템 경로입니다. |
DirectorySearchResult
| JSON 표현 |
|---|
{ "path": string } |
| 필드 | |
|---|---|
path |
작업공간 루트를 기준으로 하는 파일 시스템 경로입니다. |
도구 주석
도구 주석은 특정 도구의 기본 위험을 설명하기 위해 MCP 클라이언트로 전송됩니다. 대부분의 클라이언트는 이러한 힌트를 신뢰할 수 없는 것으로 취급하지만, 사용자에게 확인 메시지를 전송할 시점을 결정하는 데 사용할 수 있습니다.
제목 문자열과 함께 다음 불리언 힌트가 다음과 같이 정의됩니다.
readOnlyHint: true인 경우 도구가 환경을 수정하지 않습니다. 기본값: false.destructiveHint: true인 경우 도구가 파괴적인 작업을 실행할 수 있습니다. false인 경우 도구는 추가 작업만 실행할 수 있습니다. 기본값은 true입니다.idempotentHint: true인 경우 동일한 인수로 도구를 반복적으로 호출해도 환경에 추가적인 영향을 미치지 않습니다. 기본값: false.openWorldHint: true인 경우 도구가 외부 엔티티의 '오픈 월드'와 상호작용할 수 있습니다. false인 경우 도구는 내부 항목과만 상호작용할 수 있습니다. 예를 들어 웹 검색 도구는 오픈 월드이지만 메모리 도구는 오픈 월드가 아닙니다.
파괴적 힌트: ❌ | 멱등성 힌트: ✅ | 읽기 전용 힌트: ✅ | 오픈 월드 힌트: ❌