KnowFlow MCP
Enables searching and retrieving knowledge from Confluence documentation pages.
Enables searching and retrieving knowledge from Google Docs documents.
Enables searching and retrieving knowledge from Jira issues or tickets.
Enables searching and retrieving knowledge from Linear issues or tickets.
Enables searching and retrieving knowledge from Notion pages.
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., "@KnowFlow MCPsearch knowledge base for project architecture decisions"
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.
KnowFlow MCP
A versatile, unified knowledge retrieval tool operating according to the Model Context Protocol (MCP). KnowFlow enhances Large Language Models by providing structured external knowledge on demand.
๐ Overview
KnowFlow simulates a simplified version of Retrieval-Augmented Generation (RAG), enabling LLMs to dynamically fetch context or domain-specific information from external knowledge bases, resulting in precise, context-aware responses.

Core Features
Responds to knowledge retrieval requests from MCP-compatible LLMs
Performs searches across knowledge sources based on queries received from LLMs
Provides structured responses with clear source metadata
Establishes a foundation for integration with multiple knowledge sources
Related MCP server: MinerU Document Explorer
๐ Requirements
Node.js (version 16.x or higher)
TypeScript (version 4.x or higher)
npm or yarn
๐ ๏ธ Installation
# Clone the repository
git clone https://github.com/esurovtsev/know-flow-mcp.git
cd know-flow-mcp
# Install dependencies
npm install
# or
yarn install๐ง Configuration
Create a .env file in the root directory with the following configuration:
KNOWLEDGE_DIR=./knowledgeWhere KNOWLEDGE_DIR is the path to the directory containing your knowledge base files (.txt and .md files).
๐ Usage
# Build the project
npm run build
# or
yarn build
# Start the server
npm start
# or
yarn start๐ MCP Configuration
To use KnowFlow with any MCP-compatible LLMs (such as Claude, GPT-4, etc.), you can use the provided mcp-config.json file:
{
"mcpServers": {
"knowflow": {
"command": "node",
"args": ["dist/index.js"]
}
}
}This configuration file tells MCP-compatible LLMs how to start and connect to the KnowFlow MCP server. You would typically place this file in your project directory and reference it when setting up the LLM to use MCP servers.
Note: Once KnowFlow is stable and published to npm, the command will change to npx know-flow-mcp instead of node dist/index.js.
๐งช Testing with MCP Inspector
The MCP Inspector is a tool that allows you to test your MCP server without needing to integrate with an LLM.
# Run the Inspector with your MCP server
npx @modelcontextprotocol/inspector node dist/index.jsThis will start the MCP Inspector web interface (typically at http://127.0.0.1:6274) where you can:
View all available tools exposed by the server
Test the
search_knowledgetool by sending requests with different parametersView the responses and debug the communication
If you encounter port conflicts, you can specify custom ports:
npx @modelcontextprotocol/inspector node dist/index.js --port 8080 --proxy-port 8081Where:
--portspecifies the web interface port (default: 6274)--proxy-portspecifies the proxy server port (default: 6277)
Example Response Format
{
"content": "We agreed to consolidate all backend modules under a single monorepo using Nx.",
"metadata": {
"reference": "architecture-notes.md",
"source": "docs",
"lastModified": "2024-03-14",
"score": 0.95
}
}๐งช Testing
# Run tests
npm test
# or
yarn test๐ API Documentation
Detailed API documentation will be available once the project reaches a more mature stage.
๐๏ธ Project Structure
know-flow-mcp/
โโโ src/ # Source code
โ โโโ index.ts # Entry point
โ โโโ server.ts # MCP server definition and tool registration
โ โโโ core/ # Core functionality
โ โโโ plugins/ # Plugin system for knowledge sources
โ โโโ services/ # Services including KnowledgeService
โโโ dist/ # Compiled JavaScript files
โโโ .gitignore # Git ignore file
โโโ LICENSE # MIT License
โโโ package.json # Project metadata and dependencies
โโโ README.md # Project documentation
โโโ tsconfig.json # TypeScript configuration๐ Plugin System
KnowFlow uses a plugin-based architecture to integrate with different knowledge sources:
Plugins are discovered synchronously at startup
Each plugin represents a different knowledge source (docs, jira, confluence, etc.)
The KnowledgeService coordinates searches across all available plugins
New knowledge sources can be added by implementing the plugin interface
๐ฎ Future Roadmap
The foundational design explicitly anticipates integration with additional knowledge sources such as:
Notion pages
Confluence documentation
Google Docs documents
Linear and Jira issues or tickets
Other popular knowledge repositories utilized by developers and organizations
๐ค Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
Available Tools
1 toolsearch_knowledgeA
Searches for information in the knowledge base. Use this tool when you need to retrieve specific information or context.
Available knowledge sources:
- docs: For architecture documents, technical specifications, and notes
IMPORTANT USAGE INSTRUCTIONS:
1. This tool returns content snippets directly from the knowledge base
2. DO NOT attempt to access or load the source files mentioned in metadata
3. Use ONLY the content field from each result to answer queries
4. ALWAYS cite the EXACT source filenames (including .md extension) when presenting information to users (e.g., 'According to architecture-notes.md...')
5. Source filenames help users understand where information comes from and allow them to verify it if needed
6. The lastModified field indicates when the information was updated - newer information may be more relevant
7. The score field (0-1) indicates how relevant the result is to the query - higher values are more relevant
8. All necessary information is contained in the content snippets
Response format:
{
instructions: "How to use these results",
results: [
{
content: "The actual text snippet to use (FOCUS ON THIS)",
metadata: {
reference: "Filename for reference only - DO NOT ATTEMPT TO LOAD",
source: "docs",
lastModified: "Date of last modification",
score: "Relevance score between 0-1"
}
}
]
}
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of results to return | |
| query | Yes | The search query to find relevant information | |
| source | No | The preferred knowledge source to search (e.g., jira, confluence, docs, slack). If specified, results from this source will be prioritized. |
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. It reveals that the tool returns content snippets, includes metadata fields (score, lastModified), and warns against accessing source files. It implies a read-only operation, though it does not explicitly declare read-only. Overall, it provides good behavioral 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 verbose, containing a full response format example and multiple usage bullet points. While structured, it could be more concise. Every sentence contributes, but the length may reduce quick comprehension.
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?
With no output schema, the description compensates by providing a detailed response format with explanations of each field (content, metadata, reference, score, etc.). It also covers usage instructions and result interpretation. For a 3-parameter tool, this is fairly complete.
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 coverage is 100%, so baseline is 3. The description adds some value by listing the 'docs' source and instructing on using score/lastModified, but it does not significantly enhance the schema descriptions for 'query' and 'limit'. The source parameter is somewhat enhanced with an example list, but not enough to raise the score.
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 'Searches for information in the knowledge base' and lists an available source ('docs'). This provides a specific verb and resource, but it does not distinguish from potential sibling tools (none provided), and the purpose is somewhat broad.
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 explicitly says 'Use this tool when you need to retrieve specific information or context.' It also provides detailed usage instructions (e.g., 'DO NOT attempt to access or load the source files', 'Use ONLY the content field') that guide the agent on proper use. There are no sibling tools to compare against, but the guidance is clear.
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.
1 tool update
v0.1.0- First observed
search_knowledge
TDQS
Scored across 1 tool
There is only one tool, so no ambiguity exists between tools. The tool's purpose is clearly defined as searching a knowledge base.
With a single tool, naming is inherently consistent. The name 'search_knowledge' follows a clear verb_noun pattern.
A single search tool is insufficient for a knowledge base server. Typically, such servers would include create, update, and delete tools to manage knowledge entries.
The server lacks any tools beyond search. There are no create, update, or delete operations, which are essential for managing a knowledge base.
Maintenance
Related MCP Connectors
Your memory, everywhere AI goes. Build knowledge once, access it via MCP anywhere.
Cloud or self-hosted knowledge for AI agents: hybrid search, reranking, GraphRAG, scoped MCP tools.
- WauldoOAuthcom.wauldo
Stateless agentic tools over MCP: concept extraction, long-context, knowledge graph, planning.
Shared, peer-validated knowledge archive for AI agents โ search, contribute, and validate via MCP
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceConnects local LLMs to external tools (calculator, knowledge base) via MCP protocol, enabling automatic tool detection and execution to enhance query responses.MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to search, deep-read, and build knowledge bases from Markdown, PDF, DOCX, and PPTX documents via MCP tools for retrieval, document navigation, and ingestion.16 npm633MIT
- AlicenseNot gradedqualityBmaintenanceConverts unstructured documents into a searchable knowledge base and exposes retrieval tools via MCP protocol for AI agents to query.1MIT
- AlicenseNot gradedqualityDmaintenanceEnables Claude Desktop to search custom knowledge bases using retrieval-augmented generation via a simple MCP tool.MIT