Enterprise knowledge base for ADK-Rust Enterprise agents. 9 MCP tools for articles, TF-IDF search boosted by helpfulness, feedback loops, gap detection, versioning, and draft/publish workflow.
Your agent resolves issues from knowledge before creating tickets. The KB gets smarter over time — helpful articles rank higher, and gaps (queries with no results) tell you what articles to write next.
| Tool | What It Does | Use Case |
|---|---|---|
search_articles |
TF-IDF search boosted by helpfulness | "Find articles about VPN" |
get_article |
Full article with body, stats, version | "Show me KB-001" |
list_related_articles |
Related by tags/category | "What else is related?" |
create_article_draft |
Create new draft | "Write an article about X" |
publish_article |
Make draft searchable | "Publish this article" |
suggest_article_update |
Update existing (new version) | "Update this article" |
record_article_feedback |
Helpful/not helpful + comment | "This was helpful" |
list_articles |
Browse by category/status | "Show all Network articles" |
get_article_gaps |
Queries with no results | "What articles are missing?" |
- Feedback boosts ranking — articles marked "helpful" score higher in search
- Gap detection — every failed search is tracked. Gaps show what to write next.
- View counting — popular articles surface naturally
- Versioning — every update creates a new version
> search_articles(query: "password reset")
1 result: "How to reset your password" (score: 8.3, helpful: 1)
> search_articles(query: "printer not working")
0 results (gap tracked)
> get_article_gaps()
1 gap: "printer not working" (searched 1x)
> record_article_feedback(article_id: "KB-001", helpful: true)
recorded: true (boosts future search ranking)
cargo install mcp-knowledge-base{ "mcpServers": { "kb": { "command": "/path/to/mcp-knowledge-base" } } }The ITSM MCP's handle_support_request can use this KB for resolution:
- User reports issue → ITSM searches KB
- KB returns relevant article → issue resolved without ticket
- No result → gap tracked → team writes new article
![]() James Karanja Maina |
|---|
Apache-2.0 — Part of the ADK-Rust Enterprise MCP server ecosystem.
This server implements the ADK MCP SDK contract:
- HealthCheck — async health probe for registry monitoring
- mcp-server.toml — manifest declaring tools, risk classes, and credentials
- Structured tracing —
RUST_LOGenv-filter for observability
This server is built with rmcp 3.1.2 and requires Rust 1.94.1 or newer. The rmcp 3 rollout retains legacy MCP initialization compatibility and targets MCP protocol revisions 2025-11-25 and 2026-07-28.
This server uses rmcp 3.1.2 and adk-mcp-sdk 0.2 with a minimum supported
Rust version of 1.94.1. It accepts stateless MCP 2026 requests with
per-request protocol, client identity, and capability metadata while retaining
the legacy MCP 2025-11-25 initialize flow for ordinary tools.
- Tasks: None; this server's operations are short-lived and execute directly.
- MRTR approvals:
publish_article - Discovery and routing: rmcp serves on-demand discovery and validates the
per-request protocol envelope; HTTP deployments can route with
Mcp-MethodandMcp-Name. The packaged binary currently uses stdio. - Caching:
tools/listreturns a publicttlMsof 60,000 for MCP 2026; rmcp omits the cache fields for legacy clients. - Deprecated extensions: this server does not add new Roots, Sampling, or dynamic client-registration dependencies.
Protected tools require MCP_REQUEST_STATE_KEY with at least 32 high-entropy
bytes. All replicas must share that key so sealed approval state can resume on
another instance. Approval state is bound to the client identity, tool, and
arguments and expires after two minutes. Missing identity, invalid state,
rejection, or legacy protocol use fails closed. Task records are process-local
for the current stdio runtime; use a durable task store before deploying the
server behind scale-to-zero HTTP infrastructure.
