MCP Tavily Search Server

by spences10
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Enables formatting of search results in Markdown for better readability and presentation.

mcp-tavily-search


⚠️ 공지사항

이 저장소는 더 이상 유지되지 않습니다.

이 도구의 기능은 이제 여러 MCP 도구를 하나의 통합 패키지로 결합한 mcp-omnisearch 에서 사용할 수 있습니다.

대신 mcp-omnisearch를 사용하세요.


Tavily의 검색 API를 LLM과 통합하기 위한 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 서버는 RAG 애플리케이션을 위한 컨텍스트 생성 및 직접 질의응답을 포함하여 고품질의 사실 기반 결과에 최적화된 지능형 웹 검색 기능을 제공합니다.

특징

  • 🔍 Tavily API를 통한 고급 웹 검색 기능
  • 🤖 AI가 생성한 검색 결과 요약
  • 🎯 더 높은 품질의 결과를 위한 도메인 필터링
  • 📊 구성 가능한 검색 깊이 및 매개변수
  • 🧠 RAG 애플리케이션을 위한 컨텍스트 생성
  • ❓ 직접 질문 답변 기능
  • 💾 TTL 지원을 통한 응답 캐싱
  • 📝 다양한 응답 형식(텍스트, JSON, 마크다운)
  • 🔄 LLM에 최적화된 구조화된 결과 형식
  • 🏗️ 모델 컨텍스트 프로토콜 기반

구성

이 서버를 사용하려면 MCP 클라이언트를 통한 구성이 필요합니다. 다음은 다양한 환경에 대한 예시입니다.

클라인 구성

Cline MCP 설정에 다음을 추가하세요.

지엑스피1

WSL 구성을 사용한 Claude Desktop

WSL 환경의 경우 Claude Desktop 구성에 다음을 추가하세요.

{ "mcpServers": { "mcp-tavily-search": { "command": "wsl.exe", "args": [ "bash", "-c", "source ~/.nvm/nvm.sh && TAVILY_API_KEY=your-tavily-api-key /home/username/.nvm/versions/node/v20.12.1/bin/npx mcp-tavily-search" ] } } }

환경 변수

서버에는 다음 환경 변수가 필요합니다.

  • TAVILY_API_KEY : Tavily API 키(필수)

API

서버는 구성 가능한 매개변수를 사용하여 세 가지 MCP 도구를 구현합니다.

타빌리_서치

고품질의 사실적 결과에 최적화된 Tavily Search API를 사용하여 웹을 검색하세요.

매개변수:

  • query (문자열, 필수): 검색 쿼리
  • search_depth (문자열, 선택 사항): "기본"(더 빠른 검색) 또는 "고급"(더 철저한 검색). 기본값은 "기본"입니다.
  • topic (문자열, 선택 사항): "일반" 또는 "뉴스". 기본값은 "일반"입니다.
  • days (숫자, 선택 사항): 검색을 위한 일수(뉴스 주제에 한함). 기본값은 3입니다.
  • time_range (문자열, 선택 사항): 결과에 대한 시간 범위('일', '주', '월', '년' 또는 '일', '수', '월', '년')
  • max_results (숫자, 선택 사항): 최대 결과 수입니다. 기본값은 5입니다.
  • include_answer (부울, 선택 사항): AI가 생성한 요약을 포함합니다. 기본값은 true입니다.
  • include_images (부울, 선택 사항): 관련 이미지를 포함합니다. 기본값은 false입니다.
  • include_image_descriptions (부울, 선택 사항): 이미지 설명을 포함합니다. 기본값은 false입니다.
  • include_raw_content (부울, 선택 사항): 원시 HTML 콘텐츠를 포함합니다. 기본값은 false입니다.
  • include_domains (문자열[], 선택 사항): 포함할 신뢰할 수 있는 도메인 목록
  • exclude_domains (문자열[], 선택 사항): 제외할 도메인 목록
  • response_format (문자열, 선택 사항): 'text', 'json' 또는 'markdown'. 기본값은 'text'입니다.
  • cache_ttl (숫자, 선택 사항): 캐시 TTL(Time To Live) (초). 기본값은 3600입니다.
  • force_refresh (부울, 선택 사항): 캐시를 무시하고 결과를 강제로 새로 고칩니다. 기본값은 false입니다.

타빌리__검색_컨텍스트

Tavily 검색을 사용하여 RAG 애플리케이션에 대한 컨텍스트를 생성합니다.

매개변수:

  • query (문자열, 필수): 컨텍스트 생성을 위한 검색 쿼리
  • max_tokens (숫자, 선택 사항): 생성된 컨텍스트의 최대 길이입니다. 기본값은 2000입니다.
  • search_depth (문자열, 선택 사항): "기본" 또는 "고급". 기본값은 "고급"입니다.
  • topic (문자열, 선택 사항): "일반" 또는 "뉴스". 기본값은 "일반"입니다.
  • tavily_search와 동일한 다른 매개변수

타빌리_qna_검색

Tavily 검색을 사용하여 질문에 대한 답변을 직접 받아보세요.

매개변수:

  • query (문자열, 필수): 답변할 질문
  • include_sources (부울, 선택 사항): 출처 인용을 포함합니다. 기본값은 true입니다.
  • search_depth (문자열, 선택 사항): "기본" 또는 "고급". 기본값은 "고급"입니다.
  • topic (문자열, 선택 사항): "일반" 또는 "뉴스". 기본값은 "일반"입니다.
  • tavily_search와 동일한 다른 매개변수

도메인 필터링

서버는 두 가지 선택적 매개변수를 통해 유연한 도메인 필터링을 지원합니다.

  • include_domains : 검색 결과에 포함할 신뢰할 수 있는 도메인 배열
  • exclude_domains : 검색 결과에서 제외할 도메인 배열

이를 통해 다음을 수행할 수 있습니다.

  • 학문적 또는 기술적 검색을 위해 특정 신뢰할 수 있는 소스를 타겟팅합니다.
  • 잠재적으로 신뢰할 수 없거나 관련성이 없는 출처를 제외합니다.
  • 귀하의 특정 요구 사항에 따라 소스를 사용자 정의하세요
  • 필터링이 지정되지 않은 경우 사용 가능한 모든 소스에 액세스합니다.

도메인 필터링 예시:

{ "include_domains": ["arxiv.org", "science.gov"], "exclude_domains": ["example.com"] }

개발

설정

  1. 저장소를 복제합니다
  2. 종속성 설치:
pnpm install
  1. 프로젝트를 빌드하세요:
pnpm build
  1. 개발 모드에서 실행:
pnpm dev

출판

이 프로젝트에서는 버전 관리를 위해 변경 세트를 사용합니다. 게시하려면 다음을 수행하세요.

  1. 변경 세트를 만듭니다.
pnpm changeset
  1. 패키지 버전:
pnpm changeset version
  1. npm에 게시:
pnpm release

기여하다

기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.

특허

MIT 라이센스 - 자세한 내용은 LICENSE 파일을 참조하세요.

감사의 말

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Tavily의 검색 API를 LLM과 통합하여 지능형 결과 요약, 품질 관리를 위한 도메인 필터링, 구성 가능한 검색 매개변수를 포함한 고급 웹 검색 기능을 제공합니다.

  1. ⚠️ Notice
    1. Features
      1. Configuration
        1. Cline Configuration
        2. Claude Desktop with WSL Configuration
        3. Environment Variables
      2. API
        1. tavily_search
        2. tavily_get_search_context
        3. tavily_qna_search
      3. Domain Filtering
        1. Development
          1. Setup
          2. Publishing
        2. Contributing
          1. License
            1. Acknowledgments
              ID: 1jcttrux58