MCP Knowledge Base Server
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., "@MCP Knowledge Base Server find articles about account recovery"
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.
MCP Knowledge Base Server
This folder contains the MCP server and unstructured-text ingestion pipeline for the support-ticket triage demo.
The server exposes knowledge-base articles and sample tickets through MCP tools. The search tool is backed by a local SQLite vector index built from Markdown files in data/kb/.
Files
mcp/
├── main.py # FastMCP server
├── pipeline.py # Ingest, chunk, embed, and store KB documents
├── vector_store.py # SQLite vector search helpers
├── models.py # Pydantic models returned by tools
└── data/
├── kb/ # Source knowledge-base articles
├── tickets/ # Sample support tickets
└── index.db # Generated SQLite indexRelated MCP server: Tiger Salesforce MCP Server
Tools
The MCP server currently exposes:
search_kb(query: str) -> list[Chunk]Semantic search over indexed KB chunks.get_article(name: str) -> strFetch a full KB article by filename.list_tickets(status: str) -> list[Ticket]List sample tickets by status.
Setup
Install dependencies:
uv syncSet the Gemini API key used for embeddings:
export GEMINI_API_KEY="..."Build The Index
Run the ingestion pipeline:
uv run python pipeline.pyThe pipeline:
Reads Markdown files from
data/kb/.Normalizes and chunks each document.
Creates embeddings with
gemini-embedding-001.Stores chunks and embeddings in
data/index.db.Uses SHA-256 hashes to skip unchanged documents on reruns.
Run The Server
Start the MCP server over stdio:
uv run python main.pyMost clients, including the ADK agent in ../agent, launch this command as a subprocess instead of running it manually.
Client Config Snippet
Example stdio client configuration:
{
"mcpServers": {
"kb-server": {
"command": "/Users/vianel/Workspace/samples/mcp/.venv/bin/python",
"args": ["/Users/vianel/Workspace/samples/mcp/main.py"],
"env": {
"GEMINI_API_KEY": "${GEMINI_API_KEY}"
}
}
}
}Smoke Tests
Rebuild the index and check that reruns skip unchanged files:
uv run python pipeline.py
uv run python pipeline.pyThen run the agent-side discovery script from ../agent:
cd ../agent
uv run python discovery.pyYou should see the MCP tools discovered by the client.
Available Tools
4 toolsaddD
Inputs: a (required), b (required). Returns: result
get_articleB
Responsible to obtain an article Args: name: the filename of the article Returns: the content of the article in string
Inputs: name (required). Returns: result
list_ticketsC
List all the tickets by status Args: a: The status of the ticket Returns: The ticket content
Inputs: status (required). Returns: result
search_kbA
Semantic search over the knowledge base. Pass a natural-language question or problem
description; returns the most relevant document chunks ranked by similarity, each with
its source doc_id, a text snippet, and a score (higher = more relevant).
for matches
Inputs: query (required). Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 4 tools
Tools cover different functions (articles, tickets, search), but 'add' is ambiguous and could be confused with creating articles or tickets. 'get_article' and 'search_kb' both relate to articles but serve different retrieval needs.
Three tools follow verb_noun pattern, but 'add' is a single verb without a noun, breaking consistency. Additionally, 'search_kb' uses an abbreviation while others use full words.
With 4 tools, the server is lean but covers basic operations. The count is not excessive, though it feels slightly thin for a knowledge base server.
Obvious gaps: no update or delete for articles or tickets, no list articles tool, and 'add' is underspecified. The search is strong, but core CRUD operations are incomplete.
Maintenance
Related MCP Connectors
Make your knowledge agent-ready. One MCP endpoint, 5 connectors, 3 search modes.
Agent-driven search: build, import, tune, search, and score result quality — all over MCP.
Knowledge base MCP for AI agents on iknow.dev. Search, read, and maintain via OAuth.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides a semantic search interface that enables discovery and routing across over 1,000 local MCP tools using natural language queries. It leverages hybrid search and embeddings to accurately match user intent with tool names and descriptions.12 npm1MIT
- AlicenseNot gradedqualityCmaintenanceEnables semantic search of Salesforce case summaries using embeddings, accessible via MCP tools and REST API.23Apache 2.0
- AlicenseNot gradedqualityDmaintenanceEnables AI coding assistants to semantically search and retrieve relevant code patterns, documentation, and implementations from a codebase via MCP tools.8MIT
- FlicenseNot gradedqualityDmaintenanceEnables semantic search and AI-powered Q&A over ingested GitHub documentation repositories via MCP tools.-