Knowledge MCP
Explore private repository structure and use GitHub MCP tools.
Search, read, list, and semantically search files in Google Drive.
Inspect Railway services, deployments, and logs.
Search messages, read channels, list channels, and find files in Slack (read-only).
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Knowledge MCPsearch my Google Drive for the Q3 marketing report"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Knowledge MCP
A self-hostable MCP server that exposes your Google Drive, Slack, GitHub and Railway to any MCP client (Claude Desktop, Claude web connectors, IDEs, …) — with semantic search, per-user permissions, and optional OAuth. You bring the credentials and a small config; everything about what to look at is yours.
Tools
Tool | What it does | Needs |
| Keyword/filename search over indexed Drive assets | Drive creds |
| Read full file contents by File ID (batchable) | Drive creds |
| Exhaustive listing of a folder | Drive creds |
| Vector (RAG) search over Drive content | Qdrant + OpenAI |
| Read Slack (read-only) | Slack token |
| Explore private repo structure / proxy GitHub MCP | GitHub token |
| Inspect Railway infra | Railway token |
| Health check | — |
Every tool group is gated by its credentials: a group you don't configure simply isn't offered to the client, so the model never tries a tool that can't work.
Related MCP server: brkt-gdrive-mcp
How configuration works
Two layers, kept separate on purpose:
Secrets → environment variables (
.envlocally, host env vars in prod). See.env.example.What to look at →
mcp.config.json(Drive folder IDs, Qdrant collection, Supabase schema, domains, branding). Seemcp.config.example.json.
Config resolution order: MCP_CONFIG_JSON (inline env) → MCP_CONFIG_PATH (file) →
./mcp.config.json → built-in neutral defaults.
Config key | Meaning |
| Organization identifier carried in the auth context |
| Server name + the routing guide the client sees on connect |
|
|
| Folder names to exclude from the index (your PII/HR/contracts) |
| Vector collection name (env |
| Supabase schema holding the server's tables (default |
| Your own domains |
| Login allowlist (env overrides available) |
Quick start
# 1) Install
npm install
# 2) Configure
cp .env.example .env # fill in credentials
cp mcp.config.example.json mcp.config.json # set your Drive folder IDs, domains, etc.
# 3) Prepare Supabase
# Run sql/setup.sql in your Supabase project, then provision an admin key:
# insert into public.mcp_keys (key_hash, org_id, role, email)
# values (encode(digest('YOUR_RAW_KEY','sha256'),'hex'), 'acme', 'admin', 'you@acme.com');
# 4) Index your Drive (for semantic_search_drive)
npm run reindex
# 5) Run
npm run dev # local (stdio or http per MCP_TRANSPORT)
# or build + start
npm run build && npm startPoint your MCP client at https://<your-host>/mcp with Authorization: Bearer <your key>.
Deploy
The repo ships a Dockerfile and railway.toml. Any container host works (Railway, Fly, a VPS).
The host injects PORT; the server listens on it. Set your env vars (and either MCP_CONFIG_JSON
or commit-free mcp.config.json) in the host, then deploy.
⚠️ In-memory sessions assume a single replica. For multiple replicas you'd need sticky routing and a shared session store.
OAuth (optional)
Set the MCP_OAUTH_* / OAUTH_* env vars to turn on a built-in OAuth 2.1 Authorization Server that
bridges login to Google Workspace and issues its own tokens — this is what lets Claude's custom web
connectors sign users in. Without it, the server uses Bearer API keys only. See OAUTH_SETUP.md.
Security notes
Never commit
google-service-account.jsonor.env(both are gitignored).API keys are stored hashed (
validate_mcp_key), support revoke/expiry, and are rate-limited.Per-user roles and resource scopes come from
app_users; unregistered users areviewer.The server is fail-open for reads and never mutates your source systems (Slack/GitHub/Railway access is read-only; Drive is read + index only).
License
MIT © chanthr
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
- QuallaaOAuthcom.quallaa
Talk to your public-facing AI from any MCP client — Claude, ChatGPT, Cursor, Cline, Windsurf.
Zero-setup MCP gateway securely connecting AI to your tools with authentication and workflows
Private persistent memory for Claude, ChatGPT & Gemini via MCP - semantic search, zero-code setup.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI applications to access and contextualize organizational knowledge sources including GitHub repositories and internal documentation through standardized MCP protocol integration. Features OAuth 2.1 authentication, vector-based semantic search, and optimized context chunking for enterprise development workflows.-
- FlicenseNot gradedqualityBmaintenanceMCP server for semantic search over Google Drive documents, enabling AI tools to search, list, and retrieve document content.-
- AlicenseAqualityBmaintenanceAn MCP server that enables LLMs to search, fetch, and act on Google Workspace (Drive, Gmail, Docs, Sheets, etc.) with rich, one-call results and file deposits to disk, reducing context usage.3MIT
- FlicenseNot gradedqualityCmaintenanceA single MCP server that exposes safe, permission-checked tools for AI assistants to reach file systems, databases, APIs, Git, cloud services, and business applications.-