본문으로 건너뛰기

webmcp: LLM 에이전트를 위한 웹 검색 및 콘텐츠 추출 MCP 서버

webmcp는 LLM 에이전트가 웹 검색과 동적 페이지 데이터 추출을 수행할 수 있게 돕는 경량 MCP 서버이다.

섹션별 상세

LLM 에이전트의 웹 접근성을 높이기 위해 검색 및 추출 기능을 제공한다. search_web 도구로 쿼리에 따른 URL 목록을 확보하고, extract 도구로 해당 페이지의 텍스트를 정제하여 가져온다. 이를 통해 모델이 학습 데이터 이후의 최신 정보에 접근할 수 있는 경로를 확보한다.
동적 웹 페이지 처리를 위해 Playwright 브라우저 엔진을 내장하고 있다. 일반적인 HTTP 요청으로 읽을 수 없는 JavaScript 렌더링 사이트는 브라우저 기반 모드로 처리하며, 단순한 페이지는 빠른 속도를 위해 경량 모드를 선택적으로 사용한다. 현재 약 70-75%의 페이지 추출 성공률을 보이며 지속적으로 개선 중이다.
bash
pip install -r requirements.txt
python -m playwright install chromium
python app.py

webmcp 서버 실행을 위한 의존성 설치 및 브라우저 환경 설정 과정

text
LLM_URL=http://localhost:1234
LLM_MODEL=your-model-name
SEARCH_PROVIDER=ddg

.env 파일을 통한 LLM 엔드포인트 및 검색 제공자 설정 예시

근거
  • 페이지 추출 시 약 25-30%의 페이지가 내용 반환에 실패하거나 적은 양의 콘텐츠만 반환한다. TODO 섹션의 JS 페이지 렌더링 전략 설명
로컬 LLM 환경과의 긴밀한 통합을 지원하도록 설계됐다. llama.cpp 서버 실행 시 특정 플래그(--webui-mcp-proxy)를 사용하여 프록시 설정을 해야 정상 작동하며, Qwen 2.5 모델 시리즈를 활용한 테스트에서 안정적인 성능이 확인됐다. 사용자는 환경 변수를 통해 로컬 API 엔드포인트와 모델명을 자유롭게 설정할 수 있다.
근거
  • 테스트된 환경에서 Qwen2.5:27b 모델로 초당 약 40 토큰의 처리 속도를 기록했다. Tested Setup 섹션의 하드웨어 사양 및 성능 수치

용어 해설

모델 컨텍스트 프로토콜(Model Context Protocol)
LLM 에이전트가 외부 데이터 소스나 도구와 상호작용할 수 있도록 설계된 개방형 표준 프로토콜이다. 에이전트가 웹 검색, 파일 읽기 등 외부 기능을 일관된 방식으로 호출하게 하여 모델의 지식 범위를 확장하는 역할을 한다.
SearXNG
사용자의 프라이버시를 보호하는 무료 메타 검색 엔진으로, 여러 검색 엔진의 결과를 통합하여 제공한다. webmcp에서는 DuckDuckGo의 대안으로 사용되어 LLM이 웹 정보를 수집하는 통로 역할을 한다.
플레이라이트(Playwright)
웹 브라우저 자동화를 위한 라이브러리로, JavaScript가 많이 사용된 동적 웹 페이지의 내용을 렌더링하고 추출하는 데 사용된다. 정적 HTTP 요청으로 수집하기 어려운 현대적인 웹 사이트의 데이터를 정확하게 가져오는 데 필수적이다.

기술

  • Python
  • Playwright
  • llama.cpp
  • DuckDuckGo
  • SearXNG
  • Qwen 2.5

활용 사례

  • 자동화된 웹 리서치 에이전트
  • 구조화된 웹 데이터 추출
  • 로컬 LLM 기반 뉴스 요약 시스템

언급된 리소스

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 04. 10.수집 2026. 04. 10.출처 타입 RSS

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.