MCP-RAG Server

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

  • Integrates a knowledge base into the MCP server to provide context for RAG (Retrieval-Augmented Generation) applications

mcp-래그

MCP를 통해 RAG 애플리케이션을 open-webui에 연결

1. 기본 MCP PoC / Hello World

지엑스피1

  • sse 스니펫에 대한 문서를 찾아보세요
  • uvicorn을 사용하여 서버 실행
  • 작동하지 않음 -> MCP 웹사이트와 다른 SseServerTranpsort 클래스에서 문서를 찾아보세요.
  • Route -> Mount를 starlette_app으로 변경하면 작동합니다.
  • starlette은 307 임시 리디렉션을 제공하고 curl로 테스트한 결과 마지막 슬래시가 누락되어 발생하는 것으로 나타났습니다.
  • github repo에서 찾아본 결과, 서버 코드의 경우 경로가 끝에 슬래시로 끝나는 경우가 있는데, 특히 sse = SseServerTransport("/messages/") 부분은 클라이언트에게 호출할 내용을 알려주는 것 같습니다.
  • 몇 가지 프롬프트를 추가하고 클라이언트 측에서 확인하세요.

작성

  • open-webui에서 사용할 RAG 프로토타입을 실험해 왔기 때문에 모델 컨텍스트 프로토콜을 사용해 보고 싶습니다. MCP는 LSP와 유사합니다. 서버와 클라이언트가 동일한 머신에 있지 않기 때문에 SSE 전송을 사용해야 합니다.
  • MCP는 공식 문서에 몇 가지 스니펫을 포함하고 있는데, mcp 파이썬 라이브러리에서 제공하는 docstring을 따라 약간 수정해야 했습니다. 제대로 작동하는 데 시간이 좀 걸렸는데, 처음에는 서버가 잘못된 엔드포인트를 전송해서 307 임시 리디렉션 오류가 발생했습니다.
  • 테스트해 보세요! 서버와 상호 작용할 수 있는 작은 REPL을 만들어 보세요.

목표

  1. MCP가 무엇인지 이해하다
  2. 간단한 서버와 클라이언트를 구현합니다
  3. 함수 호출/도구 사용을 시도해 보세요

2. 기본 지식 기반 구현

  • MCP 서버에 넣고 클라이언트를 통해 호출하여 일부 컨텍스트를 검색할 수 있는 간단한 KnowledgeBase를 구축하고 싶습니다.

3. MCP 클라이언트 + 오픈 웹 UI

-
security - not tested
F
license - not found
-
quality - not tested

MCP(Model Context Protocol)를 사용하여 RAG 애플리케이션을 open-webui에 연결하여 SSE(Server-Sent Events)를 통해 원격 환경에서 컨텍스트 검색 및 도구 사용을 위한 서버-클라이언트 통신을 활성화합니다.

  1. 1. Bare bones MCP PoC / Hello World
    1. Writeup
    2. Goal
  2. 2. Implement a basic KnowlegdeBase
    1. 3. MCP Client + Open-WebUI
      ID: cni0rqrp11