RAG
- python
0
GitHub Stars
python
Language
7 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"yogeshkulkarni553-rag-mcp-py": {
"command": "uv",
"args": [
"run",
"mcp_server.py"
],
"env": {
"USER_ID": "YOUR_USER_ID",
"CONTENT_SERVICE_URL": "http://localhost:8080"
}
}
}
}You run a Python-based MCP server that implements the Retrieval-Augmented Generation (RAG) Model Context Protocol (MCP). It provides tools to manage organizational content through a content service API, enabling you to list, search, upload, and delete content as part of a scalable content-management workflow.
How to use
To use this MCP server, you connect an MCP client to the local server and issue tool calls like listing content, performing semantic searches, or uploading content files and URLs about your organization. The server exposes a set of predefined tools you can invoke from your client, and it handles the actual communication with the content service API behind the scenes.
How to install
Prerequisites include a Python environment and the MCP tooling flow used to run servers with an integrated package manager.
# Install uv (modern Python package manager) if you do not have it yet
curl -LsSf https://astral.sh/uv/install.sh | sh
# or
pip install uv
Configuration
Configure the runtime by providing the identifiers and the content service location the MCP server should use.
USER_ID=your_user_id_here
CONTENT_SERVICE_URL=http://localhost:8080
Usage notes
You can start the MCP server using either the uv command directly or a Python invocation, depending on your preferred workflow. The server will listen for MCP protocol messages on stdin/stdout.
Two common ways to start the server are shown below. Choose the one you prefer and ensure all required environment variables are set.
Tools and how they work
-
listContentNames — List all content names from the organization’s database, optionally filtered by name. You can refine the results by providing a name filter to limit the returned names.
-
searchOrganizationContents — Perform semantic search across the organization’s content database to locate relevant items based on a query.
-
deleteOrganizationContent — Remove a specific piece of content from the organization’s database using its content identifier.
-
uploadContentFileAboutOrganization — Upload a content file about the organization. Provide the file content and a file name, and optionally specify the role of the user.
-
uploadContentUrlAboutOrganization — Upload a content URL about the organization. Provide the URL and optionally specify the user’s role.
Environment and startup options
Environment variables you set control which user and content service instance the server uses.
Testing
You can run tests to verify behavior and ensure the MCP server interacts correctly with the content service. Use the provided test scripts or the uv-based test runner in your workflow.
Development notes
Development tooling includes code formatting, linting, and type checking. You can format with Black, lint with Ruff, and type check with Mypy to maintain code quality as you develop and extend the server.
Available tools
listContentNames
List all content names from the organization's database optionally filtered by name
searchOrganizationContents
Search through the organization's content database using semantic search
deleteOrganizationContent
Delete specific content from the organization's database
uploadContentFileAboutOrganization
Upload content file about the organization
uploadContentUrlAboutOrganization
Upload content URL about the organization