MCP Knowledge Base Server
Click on "Install 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 Serversearch for information about API rate limiting"
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
A Model Context Protocol (MCP) server that exposes a knowledge base through multiple tools for semantic search and data retrieval.
## Features
- **search_knowledge**: Search for relevant information using keywords
- **list_categories**: List all available categories
- **get_by_category**: Filter entries by category
- **get_by_id**: Retrieve specific entries by ID
- **advanced_search**: Search with category filters and result limits
- **In-memory caching**: 60-second TTL for faster repeated queries
## Setup
npm install
npm run build
## Usage with Claude Desktop
Add to your Claude Desktop config (%APPDATA%\\Claude\\claude\_desktop\_config.json):
{
"mcpServers": {
"knowledge-base": {
"command": "node",
"args": \["C:\\\\path\\\\to\\\\mcp-learning\\\\dist\\\\index.js"]
}
}
}
## Tech Stack
- TypeScript
- @modelcontextprotocol/sdk
- Node.js
## Next Steps
- [ ] Connect to Vectorize for semantic search
- [ ] Deploy to Cloudflare Workers
- [ ] Add authentication
Available Tools
5 toolsadvanced_searchC
Search with additional filters like category and result limit
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query | |
| category | No | Optional: filter by category | |
| limit | No | Maximum results to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'search' and 'additional filters', implying a read-only operation, but fails to describe critical behaviors such as authentication needs, rate limits, error handling, or the format of returned results. This leaves significant gaps for a tool with 3 parameters.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose. It avoids unnecessary words and gets straight to the point, though it could be slightly more structured by explicitly naming the tool's differentiation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (3 parameters, no annotations, no output schema), the description is incomplete. It lacks details on behavioral traits, output format, and usage guidelines relative to siblings. For a search tool with filtering capabilities, this leaves the agent with insufficient context to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters (query, category, limit) with descriptions. The description adds minimal value by mentioning 'category and result limit' as examples of filters, but doesn't provide additional syntax, format details, or usage context beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as 'Search with additional filters like category and result limit', which specifies the verb (search) and key resources (filters: category, limit). It distinguishes from basic search by mentioning 'additional filters', but doesn't explicitly differentiate from sibling tools like 'search_knowledge' or 'get_by_category'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions 'additional filters' but doesn't specify scenarios where this is preferred over sibling tools like 'search_knowledge' or 'get_by_category', nor does it mention any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_by_categoryC
Get all knowledge base entries for a specific category
| Name | Required | Description | Default |
|---|---|---|---|
| category | Yes | Category to filter by (e.g., 'ai', 'technology', 'product') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states it 'gets all knowledge base entries' but doesn't disclose behavioral traits such as whether this is a read-only operation, if there are rate limits, pagination behavior, error conditions, or what format the entries are returned in. The description is minimal and lacks essential operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized for a simple tool with one parameter and is front-loaded with the core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is incomplete. It doesn't explain what 'knowledge base entries' entail, the return format, or any behavioral aspects like error handling. For a tool with 100% schema coverage but missing output and annotation context, more detail is needed to guide effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the single parameter 'category' well-documented in the schema. The description adds no additional parameter semantics beyond implying filtering by category, which is already covered. Baseline 3 is appropriate as the schema handles parameter documentation adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Get') and resource ('knowledge base entries') with specific filtering ('for a specific category'). It distinguishes from 'list_categories' (which lists categories rather than entries) and 'get_by_id' (which retrieves by ID rather than category), but doesn't explicitly differentiate from 'advanced_search' or 'search_knowledge' which might also filter by category.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'advanced_search' or 'search_knowledge', which might offer similar category filtering with additional capabilities. There's no mention of prerequisites, limitations, or comparative contexts for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_by_idC
Get a specific knowledge base entry by its ID
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The ID of the entry to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It implies a read-only operation ('Get') but doesn't specify if it's safe, requires authentication, has rate limits, or what happens on errors (e.g., invalid ID). This leaves significant gaps for a tool that retrieves data by ID.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with zero waste—it directly states the tool's purpose without unnecessary words. It's appropriately sized and front-loaded, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of retrieving an entry by ID, no annotations, and no output schema, the description is incomplete. It doesn't explain return values, error handling, or behavioral traits, which are crucial for an agent to use this tool correctly in context with its siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the parameter 'id' fully documented in the schema. The description adds no additional meaning beyond what the schema provides, such as ID format or examples, so it meets the baseline score when the schema handles parameter documentation effectively.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('knowledge base entry') with specificity ('by its ID'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'get_by_category' or 'search_knowledge', which would require explicit comparison to achieve a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'advanced_search' or 'get_by_category'. It lacks any mention of prerequisites, such as needing the entry ID, or contextual cues for selection among siblings, leaving the agent without usage direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_categoriesB
List all available knowledge base categories
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the action ('List all available') but doesn't describe key traits like whether it's read-only, if it requires authentication, rate limits, pagination, or what the return format looks like. For a tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any wasted words. It's appropriately sized and front-loaded, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't explain behavioral aspects like safety, performance, or return values, which are crucial for an agent to use the tool effectively. For a tool with no structured data beyond the input schema, the description should provide more context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100%, so there are no parameters to document. The description doesn't need to add parameter semantics, and it appropriately avoids unnecessary details, earning a baseline score of 4 for this dimension.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('List') and resource ('knowledge base categories'), making the purpose specific and understandable. However, it doesn't differentiate from sibling tools like 'get_by_category' or 'search_knowledge', which might also involve categories, so it's not fully distinguished from alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as 'advanced_search' or 'get_by_category'. It lacks context about use cases, prerequisites, or exclusions, leaving the agent to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_knowledgeB
Search the knowledge base for relevant information. Use this when you need to find specific facts or documentation.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query or keywords | |
| limit | No | Maximum number of results to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. While it mentions the tool searches for 'relevant information', it doesn't describe what 'relevant' means (e.g., ranking algorithm, freshness), whether results are paginated, if there are rate limits, or what the output format looks like. For a search tool with no annotation coverage, this leaves significant behavioral aspects unclear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences that efficiently convey the tool's purpose and basic usage. It's front-loaded with the core functionality, and every sentence adds value without redundancy. However, it could be slightly more structured by explicitly mentioning parameters or output, though this isn't required for full marks.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (search functionality with 2 parameters), no annotations, and no output schema, the description is minimally adequate. It covers the 'what' and basic 'when', but lacks details on behavioral aspects like result format, error handling, or performance characteristics. For a search tool without structured output documentation, this leaves gaps in completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with clear documentation for both parameters ('query' as search keywords, 'limit' as maximum results). The description adds no additional parameter semantics beyond what the schema provides, such as query syntax examples or limit constraints. With high schema coverage, the baseline score of 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Search') and resource ('knowledge base'), making it immediately understandable. However, it doesn't distinguish this tool from its siblings like 'advanced_search' or 'get_by_category', which likely offer alternative search approaches. The description is clear but lacks sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides some usage guidance with 'Use this when you need to find specific facts or documentation', which implies it's for general keyword-based searches. However, it doesn't explicitly state when to use this versus alternatives like 'advanced_search' (presumably for more complex queries) or 'get_by_category' (for category-based retrieval). The guidance is helpful but incomplete regarding sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
5 tool updates
v1.0.0- First observed
advanced_search - First observed
get_by_category - First observed
get_by_id - First observed
list_categories - First observed
search_knowledge
TDQS
There is some overlap between 'advanced_search' and 'search_knowledge', as both are for searching, though 'advanced_search' adds filters. 'get_by_category' and 'list_categories' are distinct but related. The descriptions help differentiate, but an agent might initially confuse the two search tools.
Most tools follow a clear verb_noun pattern (e.g., 'get_by_id', 'list_categories'), with 'advanced_search' and 'search_knowledge' being slight deviations. The naming is mostly consistent and readable, with only minor inconsistencies in verb usage.
With 5 tools, this server is well-scoped for a knowledge base domain. Each tool serves a distinct purpose (searching, retrieving by ID/category, listing categories), and the count is appropriate without being too sparse or overwhelming.
The toolset covers core CRUD-like operations for a knowledge base: searching, retrieving by ID and category, and listing categories. A minor gap is the lack of create, update, or delete tools, but for a read-only knowledge base server, this is reasonable and agents can work around it.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Persistent memory and knowledge management for AI agents with semantic search and 50+ tools.
Search your knowledge bases from any AI assistant using hybrid RAG.
Curated knowledge API for AI agents - skill packs, semantic search, validated patterns.
Knowledge base MCP for AI agents on iknow.dev. Search, read, and maintain via OAuth.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceProvides tools for listing and retrieving content from different knowledge bases using semantic search capabilities.1853-
- AlicenseNot gradedqualityDmaintenanceEnables accessing and managing personal/team internal knowledge repository with tools for semantic search, smart search, document listing, and saving information for future recall.Apache 2.0
- AlicenseBqualityNot gradedmaintenanceEnables semantic search across multiple knowledge datasets using FAISS vector embeddings, allowing natural language queries to find relevant documents with fast retrieval.21-
- FlicenseNot gradedqualityDmaintenanceExposes tools for semantic search and RAG-based Q\&A from a local knowledge base, along with resources and prompt templates.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dannwaneri/mcp-knowledge-base-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server