Palantir MCP 도구 검색
도구 검색은 기본으로 켜져 있으며 초기 목록에는 search_tools만 보입니다. 필요한 도구 정의만 문맥에 넣어 토큰 사용을 줄입니다. 설명에는 해당 세션에서 가능한 기능 범주와 예시가 포함됩니다.
검색 과정
- 에이전트가
view an action type,run a SQL query처럼 필요한 기능을 짧고 구체적으로 설명합니다. - 서버가 도구 이름, 범주와 정리된 키워드로 세션 카탈로그를 로컬 순위화합니다. 추가 모델 호출이나 네트워크 요청은 필요하지 않습니다.
- 일치 도구의 이름, 범주, 전체 설명, 입력 스키마와 추가 메타데이터를 반환합니다. 반환 전에 목록에 추가하고 목록이 바뀌면
tools/list_changed를 보냅니다. - 에이전트가 반환 스키마로 도구를 호출합니다.
발견한 도구는 세션이 끝날 때까지 목록에 남습니다. 새 세션은 다시 search_tools만 보이는 상태로 시작합니다.
검색은 가시성을 제어합니다. 허용된 도구는 발견이나 목록 갱신 전에도 서버에서 호출할 수 있습니다. 환경 및 데이터 접근 제한, 명시적 비활성화, 입력 검사와 권한은 계속 적용됩니다.
호환성과 비활성화
일부 클라이언트는 도구 목록을 캐시하고 변경 알림에 갱신하지 않으므로 초기 목록의 도구만 호출할 수 있습니다. 이 경우 --no-tool-search를 서버 인자로 전달하거나 PALANTIR_MCP_TOOL_SEARCH=false를 설정하여 허용된 전체 목록을 시작부터 불러옵니다.
기존 --tool-search와 PALANTIR_MCP_TOOL_SEARCH=true 설정도 지원합니다. 명령행 플래그가 환경변수보다 우선합니다. --disable-tools search_tools로 검색 도구 자체를 끄는 경우에도 전체 허용 목록을 초기 로드합니다. 어떤 방식으로 꺼도 권한은 늘어나지 않습니다.
Claude Code 예시
FOUNDRY_HOST에는 호스트명을, FOUNDRY_TOKEN에는 안전하게 제공한 사용자 토큰을 지정합니다. 아래 명령은 저장할 프로젝트 구성에 토큰 값 대신 환경변수 참조를 넣습니다. Foundry Git 인증을 사용한다면 토큰의 필수 입력 검사와 -e FOUNDRY_TOKEN을 모두 생략합니다. 플래그는 -- 뒤의 MCP 서버 인자입니다.
: "${FOUNDRY_HOST:?Foundry 호스트명이 필요합니다}"
: "${FOUNDRY_TOKEN:?Foundry 사용자 토큰이 필요합니다}"
claude mcp add palantir-mcp \
--scope project \
-e FOUNDRY_TOKEN='${FOUNDRY_TOKEN}' \
-- npx "-y" "palantir-mcp" "--no-tool-search" "--foundry-api-url" "https://$FOUNDRY_HOST"
환경변수 방식은 다음과 같습니다.
: "${FOUNDRY_HOST:?Foundry 호스트명이 필요합니다}"
: "${FOUNDRY_TOKEN:?Foundry 사용자 토큰이 필요합니다}"
claude mcp add palantir-mcp \
--scope project \
-e FOUNDRY_TOKEN='${FOUNDRY_TOKEN}' \
-e PALANTIR_MCP_TOOL_SEARCH=false \
-- npx "-y" "palantir-mcp" "--foundry-api-url" "https://$FOUNDRY_HOST"
코드 기반 에이전트
에이전트의 Palantir MCP 서버도 기본으로 도구 검색을 사용합니다. 사용자 정의 서버 구성에 --no-tool-search를 넣거나 env의 PALANTIR_MCP_TOOL_SEARCH를 문자열 "false"로 지정할 수 있습니다.
export const PALANTIR_MCP_CONFIGURATION: McpStdioServerConfig = {
type: "stdio",
command: "palantir-mcp",
args: ["start", "--no-tool-search", "code-workspaces"],
env: {
FOUNDRY_PROXY_URL: `https://${process.env.FOUNDRY_PROXY_URL!}/`,
FOUNDRY_SERVICE_DISCOVERY_V2: process.env.FOUNDRY_SERVICE_DISCOVERY_V2!,
FOUNDRY_EXTERNAL_HOST: "https://<your-foundry-hostname>",
FOUNDRY_PROXY_TOKEN: process.env.FOUNDRY_PROXY_TOKEN!,
FOUNDRY_SCOPED_TOKEN: process.env.FOUNDRY_SCOPED_TOKEN!,
MAESTRO_REPO_RID: process.env.MAESTRO_REPO_RID!,
NODE_EXTRA_CA_CERTS: process.env.NODE_EXTRA_CA_CERTS!,
},
};
템플릿 업그레이드와 충돌하지 않도록 사용자 정의 MCP 구성은 별도 파일에 둡니다. 위 런타임 환경변수는 Foundry 에이전트 환경에서 제공되는 값이며 로컬 사용자 토큰 구성과 혼동하지 않습니다.