Cursor에서 MCP 연동하기: Tavily Search로 실시간 웹 검색 기능 구현하기

Moondy·2025년 5월 6일
0

Cursor란?

Cursor는 AI 기반의 통합 개발 환경(IDE)으로, VSCode(Visual Studio Code)를 기반으로 하여 개발자 생산성을 극대화하는 다양한 기능을 제공합니다. 기본적으로 VSCode 인터페이스와 똑같기 때문에 빠르게 적응하기 쉬우며, Copilot처럼 자연어로 코드 작성 및 수정이 가능합니다. 특히 전체 코드베이스를 이해하고 이에 대한 질문에 답변하는 기능이 뛰어납니다. 내 폴더구조와 여러 파일들을 Context 인식해서 그에 맞게 폴더/파일/코드라인 단위로 코드를 생성해줍니다.

MCP란?

MCP(Model Context Protocol)는 AI 애플리케이션이 외부 데이터 소스나 도구와 통신할 수 있도록 표준화된 인터페이스를 제공하는 오픈 프로토콜입니다. MCP는 AI 모델이 다양한 외부 시스템과 상호 작용할 수 있도록 지원하여, 개발자가 복잡한 통합 작업 없이도 AI 기능을 확장할 수 있게 합니다.

표준화된 인터페이스를 제공한다는 말은, 동일한 방법으로 외부 데이터 소스나 도구를 호출해서 사용할 수 있다는 것입니다. 마치 Server-Client의 호출이 HTTP프로토콜로 표준화되어 있듯이, MCP Server - MCP Client사이의 통신 프로토콜이 표준화 되어 있는것입니다.

주로 MCP 서버는 외부 데이터 소스를 제공하거나, 외부 API를 실행하는 기능을 제공하고, 호스트 애플리케이션(예: Cursor, Claude Desktop 등)은 MCP 클라이언트를 통해 MCP 서버를 호출합니다. 주요 시나리오는 유저가 호스트 애플리케이션에 질문을 하면, 호스트 애플리케이션은 어떤 MCP Server를 어떻게 호출할지 AI 모델을 이용해서 판단하고, MCP Server를 실행하고, 그 결과를 취합하여 최종 결론을 내는 방식입니다.
MCP_architecture

Cursor에 TavilySearch MCP Server 연동해야하는 이유

Cursor는 강력한 AI 기능을 제공하지만, 기본적으로 웹 검색 기능이 내장되어 있지 않습니다. 따라서 최신 정보를 반영하거나 외부 데이터를 실시간으로 조회하는 데에는 한계가 있습니다.

예를 들어, "최신 AI 기술 동향을 알려줘"와 같은 질문을 할 경우, Cursor는 자체적으로 웹 검색을 수행하지 않기 때문에 최신 정보를 제공하는 데 어려움이 있습니다.

이러한 문제를 해결하기 위해, Tavily Search API를 제공하는 MCP를 Cursor에 연동하여 실시간 웹 검색 기능을 구현할 수 있습니다. Tavily Search는 웹 검색 API를 통해 다양한 웹 데이터를 조회할 수 있는 기능을 제공합니다.

이번 글에서는 Tavily Search를 MCP로 연동하여 Cursor 내에서 실시간 웹 검색 기능을 구현하는 방법을 단계별로 안내하겠습니다. 이를 통해 Cursor의 기능을 확장하고, 최신 정보를 반영한 개발 환경을 구축할 수 있습니다.

1.사전 준비

1.1 Cursor 설치

Cursor는 공식 웹사이트에서 다운로드하여 설치할 수 있습니다. 설치 방법은 운영 체제에 따라 다르므로, 해당 페이지의 안내를 참고하시기 바랍니다.

cursor

1.2 Node.js 및 npx 설치

MCP 서버 실행을 위해 Node.js와 npx가 필요합니다. Node.js는 공식 웹사이트에서 설치할 수 있으며, 설치 시 npx도 함께 제공됩니다.

1.3 Tavily Search API 키 발급

Tavily Search API를 사용하려면 API 키가 필요합니다. Tavily 공식 웹사이트에 가입한 후, 대시보드에서 API 키를 발급받을 수 있습니다. 이 키는 이후 MCP 서버와 Cursor에서 사용됩니다.

2.TavilySearch MCP Server 테스트

방법1 - Smithery 서비스 사용

원래는 MCP Server를 모아두는 Smithery.ai(https://smithery.ai/) 에서 쉽게 TavilySearch MCP Server를 실행하려고 했으나.. 일시적으로 사이트 장애가 있어서 직접 내 local에 실행하기로 했습니다.
Smithery

Smithery에 가입하여 아래 페이지에 접속한 후 우측에 Install을 누르면 Smithery에 MCP 서버가 실행되고, Smithery에서 제공하는 endpoint를 제공한다고 들었는데...

https://smithery.ai/server/@tavily-ai/tavily-mcp/api
vail_mcp_server
로그인만 하면 Smithery 페이지 장애가 나서 더이상 실행할 수 없었습니다.
surprised_cat

방법2 - Local에 MCP Server 실행 테스트

GitHub의 Tavily-MCP Repository 를 찾아서 따라 내 Local에 MCP Server를 실행해봤습니다.
https://github.com/tavily-ai/tavily-mcp?tab=readme-ov-file
github

뭔가를 설치하기는 싫어서 npx를 통해 간단히 실행했습니다.
1.3단계에서 발급받은 TAVILY의 APIKEY를 환경변수로 설정해주고, npx로 mcp 서버를 실행했을 때 이미지와 같이 서버가 running중이라는 말이 뜨면 성공입니다.

export TAVILY_API_KEY=< API KEY>
npx -y tavily-mcp@0.1.4  

terminal

3. Cursor에서 MCP Server등록

자, 이제 tavily-mcp@0.1.4가 잘 돌아간다는 것을 확인했으니 cursor에 MCP Server를 등록하겠습니다.

  • Cursor Settings를 열고
  • Navigate to Features > MCP Servers
  • "+ Add New MCP Server" 버튼 클릭
  • 다음과 같이 json 등록
{
  "mcpServers": {
    "tavily-mcp": {
      "command": "npx",
      "args": ["-y", "tavily-mcp@0.1.4"],
      "env": {
        "TAVILY_API_KEY": "< API_KEY>"
      }
    }
  }
}

이렇게 등록을 하면 아래와 같이 cursor가 command 명령어를 실행해 tavily-mcp 서버를 띄워놓은것을 확인할 수 있습니다.
cursor

4. 실행

Cursor에서 Command+I를 눌러 채팅을 연 후 Agent를 선택한 후 채팅을 쳐보겠습니다.

choose_agent

"langchain_mcp_adapters 이용해서 숫자를 더하고 곱하는 tool이 있는 mcp server 만들어줘 python" 이라고 질문해봤습니다.

cusor_chat1
처음에는 제 로컬 파일중에서 관련내용을 찾았는데, 관련내용이 없었습니다.
두번째는 웹검색을 하고자 했습니다. 웹검색을 사용해도 되는지 제 동의를 구했습니다.

cusor_chat1
검색한 내용을 바탕으로 최종 코드를 작성하여 파일을 생성했습니다.

마무리

MCP 연동하는게 생각보다 너무 쉬운데, 개발 생산성은 매우 올라가는것 같습니다.
SmitheryGlama 같은 사이트에 보면 MCP 서버가 엄청 많은데, 웹서치 이외에도 다양한 툴을 연동해보면 좋을 것 같습니다.

하지만 MCP서버를 많이 등록하면 등록할수록 호스트(Cursor)가 질문에 맞는 서버를 고르는 정확도가 떨어질 수 있으니 적당히 필요에 맞게 조절해가며 사용하면 좋을 것 같습니다.(커서는 최대 40개까지 등록할 수 있습니다.)

그리고 Claude Desktop 에도 MCP 연동할 수 있다는데, 채팅만 사용하려면 Claude에도 연동하면 쓸만할 것 같다는 생각이 들었습니다.

profile
LLM Application을 개발중인 BackEnd 개발자

0개의 댓글