Skip to main content
Glama
felixscherz

MCP-RAG Server

by felixscherz

mcp-rag

Connecting a RAG application to open-webui by means of MCP

1. Bare bones MCP PoC / Hello World

pip install mcp[cli]
  • look up documentation on sse snippets

  • run server using uvicorn

  • doesnt work -> look up documentation in SseServerTranpsort class which differs from MCP website

  • change Route -> Mount for starlette_app, then it works

  • starlette gives 307 temporary redirect, testing it with curl shows that it is due to a missing trailing slash

  • looked up on github repo, there the routes end with trailing slash for server code, especially the sse = SseServerTransport("/messages/") part which I guess tells the client what to call

  • add some prompts and check on client side

Writeup

  • I want to try out the model context protocol because I have been experimenting with RAG prototypes for use with open-webui. MCP looks similar to LSP. Since server and client won't be on the same machine, we have to use the SSE transport.

  • MCP comes with some snippets on the official documentation, I had to adapt them a bit following the docstrings provided by the mcp python library. Took me a while to get things working, initially dealt with 307 Temporary Redirect errors since the server was sending the wrong endpoint.

  • Test it! Build a small REPL that can interact with the server

Goal

  1. understand what MCP is

  2. implement a simple server and client

  3. try out function calling / tool usage

Related MCP server: MCP SSE Ory Server

2. Implement a basic KnowlegdeBase

  • I want to build a simple KnowledgeBase that we can stick into the MCP server and call through the client to retrieve some context.

3. MCP Client + Open-WebUI

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A Server-Sent Events implementation using FastAPI framework that integrates Model Context Protocol (MCP), allowing AI models to access external tools and data sources like weather information.
    51
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Implements a Model Context Protocol server using Server-Sent Events for real-time communication with OAuth 2.1 integration via Ory Network, enabling secure AI model communication with authentication and client management.
    Apache 2.0