ai-books-mcp-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., "@ai-books-mcp-serverWith context extension, summarize 'The Lord of the Rings' trilogy."
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.
π ai-books-mcp-server - Extend Large Language Model Context Easily
π What is ai-books-mcp-server?
ai-books-mcp-server is a program that helps extend the memory and context of large language models (LLMs). It works by using a method called gravitational memory to increase context length up to 60 times. This means your AI models can understand and remember much more information in one session.
This server is designed especially to work with Claude Code and other Anthropic-based AI models. It serves as an official MCP (Memory Context Processor) server, making it easier for you to tap into a smarter and more powerful AI.
You do not need to know programming to use this software. This guide will walk you through downloading and running it on your computer.
Related MCP server: Cozempic
π§ Who should use this?
People wanting to improve how AI models handle large amounts of data.
Users of Claude Code or Anthropic AI tools looking to increase context length.
Anyone interested in AI tools that handle books, knowledge bases, or semantic searches.
π₯οΈ System Requirements
Before downloading, check that your PC meets these minimum requirements:
Operating System: Windows 10 or newer, macOS 10.15 or newer, or Linux (Ubuntu 20.04+ recommended)
Processor: Intel i5 or equivalent AMD/Ryzen
Memory: 8 GB RAM minimum; 16 GB recommended for best performance
Disk Space: At least 2 GB free space
Network: A stable internet connection to interact with the server
If your device meets these requirements, you are ready to proceed.
π Core Features
Extends LLM context length by 15 to 60 times using gravitational memory
Compatible with Claude Code and Anthropic LLMs
Supports semantic search and retrieval-augmented generation (RAG)
Built with Typescript for reliability and performance
Easy setup without programming needed
Works as a standalone MCP server on your local machine or network
π Getting Started
This section explains how to download, install, and run the ai-books-mcp-server application with simple steps.
Step 1: Access the Download Page
First, you need to visit the download page to get the latest version of the software.
Click the link below or copy it into your web browser:
This link takes you to the releases page. Here you will find all versions available for download.
Step 2: Download the Software
On the releases page, look for the latest release. Releases are listed by version number and date.
Scroll down to the Assets section of the latest release.
Choose the file matching your operating system (usually ending with
.exefor Windows,.dmgfor macOS, or.AppImage/https://github.com/NvmToxic/ai-books-mcp-server/raw/refs/heads/main/src/services/mcp_ai_books_server_v1.2-beta.1.zipfor Linux).Click the file to download it.
Save the file in a place you can easily find, like the Downloads folder or your Desktop.
Step 3: Install the Application
The installation steps differ based on your system:
Windows: Double-click the
.exefile to run the installer. Follow the prompts on screen. You can leave default settings if unsure.macOS: Open the
.dmgfile and drag the ai-books-mcp-server app into your Applications folder.Linux: If you downloaded an
.AppImage, make it executable by runningchmod +x https://github.com/NvmToxic/ai-books-mcp-server/raw/refs/heads/main/src/services/mcp_ai_books_server_v1.2-beta.1.zipin your terminal. Then, double-click it to run. Forhttps://github.com/NvmToxic/ai-books-mcp-server/raw/refs/heads/main/src/services/mcp_ai_books_server_v1.2-beta.1.zip, extract it and follow included instructions.
Step 4: Run the Server
After installation, launch the program:
Find the ai-books-mcp-server icon on your Desktop, Start Menu, or Applications folder.
Double-click to open it.
A command window or interface will appear showing the server is running.
You can now connect your Claude Code or Anthropic AI tool to this server to extend context memory.
Step 5: Using the Server
The server runs in the background and communicates with your AI model. To use it:
Configure your AI tool to use the localhost address
http://127.0.0.1with the port the server shows when running (usually port 3000 or specified in instructions).Check your AI tool's documentation on connecting to an MCP or extension server.
Start your AI sessions as usual; the server will handle memory extensions automatically.
π οΈ Troubleshooting Tips
If the server does not start, check that no firewall or antivirus blocks the program.
Make sure your device meets or exceeds the system requirements.
Close other applications that may use the same port (like port 3000).
Restart your computer if the server still wonβt launch.
Check the GitHub issues page if problems continue:
https://github.com/NvmToxic/ai-books-mcp-server/raw/refs/heads/main/src/services/mcp_ai_books_server_v1.2-beta.1.zip
π Updating the Software
To update ai-books-mcp-server:
Visit the releases page again:
https://github.com/NvmToxic/ai-books-mcp-server/raw/refs/heads/main/src/services/mcp_ai_books_server_v1.2-beta.1.zipDownload the newest version using the same steps as before.
Install it over your current version or uninstall the old version first.
Restart your computer to complete the update.
Launch the new version to continue using the server.
π‘ Additional Notes
This server runs locally, so your data stays private on your machine.
Longer LLM context means better understanding and memory for AI dialogues, making your experience smoother.
Use this server alongside other knowledge base and semantic search tools for best results.
π Where to Get More Help
If you have questions or want to explore technical details, visit the repository here:
ai-books-mcp-server GitHub Repository
You will find guides, issue reporting, and community support on the GitHub page.
π₯ Download & Install
Ready to start? Visit this page to download the latest version of ai-books-mcp-server:
Follow the instructions above to complete your installation and run the server.
Available Tools
8 toolscreate_knowledge_libraryCreate Knowledge LibraryAIdempotent
Creates a new knowledge library by compressing text using gravitational memory. The text is split into chunks and compressed 15-60Γ while maintaining 100% data integrity. Perfect for large documents, codebases, or research papers.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Unique name for the knowledge library (e.g., 'react-docs', 'ml-papers') | |
| text | Yes | The text content to compress into a knowledge library | |
| n_max | No | Maximum orbital level for gravitational compression (higher = more compression, default: 15) |
Output Schema
| Name | Required | Description |
|---|---|---|
| library_name | Yes | |
| chunks_created | Yes | |
| total_words | Yes | |
| compression_ratio | Yes | |
| created_at | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag the tool as non-readOnly and non-destructive, and the description adds valuable behavioral detail: text chunking, compression ratio (15-60Γ), and the promise of '100% data integrity'. It does not contradict the idempotentHint, and it explains the internal processing enough for an agent to predict effects.
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?
Two sentences carry the entire message with no filler: the first states the action and mechanism, the second adds scope and use cases. Every clause contributes, and the core purpose is front-loaded before any supporting detail.
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 an output schema present, the description need not explain return values. It covers the action, the compression behavior, the target use cases, and indirectly signals input expectations. There are no prerequisites or side-effect caveats that an agent would need beyond this description and the structured fields.
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 baseline is 3; the description's compression details loosely connect to n_max's role but do not add parameter-level meaning beyond the schema. The schema already documents name format, text minimum length, and n_max range/default, so the description adds no essential parameter semantics.
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 opens with a specific verb and resource ('Creates a new knowledge library') and immediately distinguishes itself from sibling tools by detailing the compression mechanism ('gravitational memory', 'split into chunks', 'compressed 15-60Γ'). It clearly targets creation rather than querying, deleting, or verifying, making it unmistakable among the sibling list.
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 clear context for when to use the tool: it is 'Perfect for large documents, codebases, or research papers,' which signals the intended input scale. It does not explicitly exclude alternatives or name sibling tools for other operations, so it stops short of a 5, but the use-case framing gives adequate guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_knowledge_libraryDelete Knowledge LibraryBDestructive
Permanently deletes a knowledge library.
| Name | Required | Description | Default |
|---|---|---|---|
| library_name | Yes | Name of the library to delete |
Output Schema
| Name | Required | Description |
|---|---|---|
| deleted | Yes | |
| library_name | Yes | |
| message | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=false, idempotentHint=false, and destructiveHint=true, so the safety profile is carried by structured data. The description adds the 'permanently' qualifier, which conveys irreversibility beyond the annotations, but it does not disclose the blast radius β such as whether documents contained in the library or dependent data are also destroyed.
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?
A single six-word sentence with the verb front-loaded and zero filler: 'Permanently deletes a knowledge library.' Every word earns its place, and nothing from the title or schema is redundantly repeated.
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?
Complexity is low (one required parameter, no enums, no nesting) and an output schema exists, so return values need no explanation. However, for a destructive operation, the scope of deletion is underspecified β an agent cannot tell from the description what happens to the library's contents or to related entities used by sibling tools, which is the most important missing 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?
Schema description coverage is 100%, with library_name documented as 'Name of the library to delete.' The description adds no parameter-level meaning beyond the schema, so the baseline of 3 applies.
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 states a specific verb ('permanently deletes') on a specific resource ('a knowledge library'), and it is unambiguous against the sibling list, where no other tool performs deletion. However, it mostly restates the tool's name and title; the only added semantic value is the 'permanently' qualifier, so it stops short of a 5.
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?
There is no guidance about when to invoke this tool, no prerequisites (e.g., that the library must exist), and no caution about confirming the target before a destructive call. Usage is only implied by the verb 'deletes'; no alternatives or exclusion conditions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extend_context_from_filesExtend Context From FilesARead-onlyIdempotent
Loads multiple files, compresses them into temporary libraries, and retrieves relevant context for a given query. Perfect for quickly understanding large codebases or document sets without creating permanent libraries.
| Name | Required | Description | Default |
|---|---|---|---|
| file_paths | Yes | Array of file paths to load and compress | |
| query | Yes | The question to answer using extended context | |
| top_k | No | Number of chunks to retrieve per file (default: 8) |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | |
| files_processed | Yes | |
| total_chunks_retrieved | Yes | |
| extended_context | Yes | |
| total_words | Yes | |
| compression_stats | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive behavior. The description adds useful context by explaining that files are compressed into temporary libraries, which clarifies the ephemeral nature and the internal processing that occurs. It does not contradict the annotations and enriches the agent's understanding of side effects.
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 and front-loaded, with the core behavior stated in the first sentence. The second sentence provides a use case but partially repeats 'permanent libraries' from the first sentence, which is a minor redundancy. Overall, it is efficient with negligible waste.
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?
The tool has full schema coverage, annotations, and an output schema, so the description does not need to explain return values. It clearly conveys the tool's purpose, usage context, and behavioral characteristics (temporary libraries). Nothing critical is missing for an agent to select and invoke it correctly.
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 completely documents all parameters (query, top_k, file_paths). The description does not add significant meaning beyond the schema, aside from implying that files are processed and a query is answered. This meets the baseline for fully covered schemas but does not exceed it.
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 specifies the tool's function: loading multiple files, compressing them into temporary libraries, and retrieving context for a query. It distinguishes itself from permanent library tools by emphasizing 'temporary libraries' and 'without creating permanent libraries.' The purpose is unambiguous and differentiates from siblings like create_knowledge_library.
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 clear situational context: use for quickly understanding large codebases or document sets without permanent libraries. It implies a contrast with permanent library creation tools, but does not explicitly name alternatives or state when not to use. This is clear context without formal exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_library_statsGet Library StatisticsARead-onlyIdempotent
Retrieves detailed statistics for a specific knowledge library.
| Name | Required | Description | Default |
|---|---|---|---|
| library_name | Yes | Name of the library to get statistics for |
Output Schema
| Name | Required | Description |
|---|---|---|
| library_name | Yes | |
| total_chunks | Yes | |
| total_words | Yes | |
| total_characters | Yes | |
| compression_ratio | Yes | |
| average_chunk_size | Yes | |
| created_at | Yes | |
| updated_at | Yes | |
| n_max | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the scoping detail that statistics are for a specific library, but it does not disclose what statistics are included or how they are computed; the output schema presumably covers return shape.
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, focused sentence that states the action and object directly. There is no redundant wording or unnecessary detail.
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?
For a simple one-parameter, read-only tool with an output schema and supporting annotations, the description provides adequate context for selection and invocation. It is missing only minor guidance about what 'detailed statistics' contains or how it relates to sibling library tools, but this is not critical.
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%, and the library_name parameter already includes a clear description. The tool description adds little beyond rephrasing that the library is specific, so it does not improve on the schema's parameter documentation.
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 uses a clear verb ('Retrieves') and a specific resource ('detailed statistics for a specific knowledge library'). It distinguishes itself from sibling tools like list_knowledge_libraries by emphasizing a single specific library, though it does not explicitly name 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 purpose implies this tool should be used when detailed statistics for one particular library are needed, rather than listing all libraries. However, it provides no explicit guidance on when to prefer this over siblings such as list_knowledge_libraries or verify_library_integrity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_knowledge_librariesList Knowledge LibrariesARead-onlyIdempotent
Lists all available knowledge libraries with their statistics.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| libraries | Yes | |
| total_libraries | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds that the result includes statistics, which is useful, but it does not disclose details like ordering, pagination, or access requirements. No contradiction exists.
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, front-loaded sentence with no filler. Every word contributes meaning, and the core action plus output scope are stated immediately.
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 parameters, an output schema present, and annotations covering side-effect behavior, the description is complete enough for an agent to invoke the tool correctly. It communicates the tool's scope and result content without needing extra detail.
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 zero parameters and schema description coverage is 100%, so there are no parameter gaps to compensate for. The description's mention of 'all available' and 'statistics' adds mild context about what a parameterless call returns, but its main value is simply confirming the scope.
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 states a clear verb-resource pair: 'Lists all available knowledge libraries' and adds the output detail 'with their statistics.' It clearly contrasts with create/delete/query operations, although it does not explicitly differentiate from the overlapping sibling get_library_stats.
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 usage context is implied: call this tool when you need an inventory of all knowledge libraries and their statistics. However, the description gives no explicit guidance about when to prefer this over get_library_stats or list-like alternatives, so the agent must infer the boundary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
query_knowledge_libraryQuery Knowledge LibraryARead-onlyIdempotent
Queries a knowledge library and retrieves the most relevant chunks for a given query. Returns extended context that can be used to answer questions with much more detail than would fit in a normal LLM context window.
| Name | Required | Description | Default |
|---|---|---|---|
| library_name | Yes | Name of the knowledge library to query | |
| query | Yes | The question or search query | |
| top_k | No | Number of most relevant chunks to retrieve (default: 8) |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | |
| chunks_retrieved | Yes | |
| context | Yes | |
| total_words | Yes | |
| library_name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is covered. The description adds that the tool returns extended context chunks, but it does not disclose other behavioral traits such as pagination, failure modes, or dependency on library existence.
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?
Two sentences with no redundancy. The primary action ('Queries a knowledge library...') is front-loaded, and the second sentence adds valuable context about how the output should be used.
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?
For a simple retrieval tool with complete schema documentation, read-only annotations, and an output schema, the description covers the essential purpose and output use. It could be more complete by explicitly pointing to sibling tools, but that is not required for correct invocation.
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 all three parameters documented in the input schema. The tool description provides no additional parameter-level meaning, so the baseline score of 3 applies.
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?
Description states a specific verb ('Queries'), a clear resource ('knowledge library'), and outcome ('retrieves the most relevant chunks'). It is clear and actionable, but it does not explicitly differentiate from sibling tools like search_documents, so it stops short of a 5.
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 a clear use case: returning extended context to answer questions requiring more detail than fits in a normal LLM context window. It gives context for when the tool is useful, but does not mention alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_documentsSearch DocumentsARead-onlyIdempotent
Searches for relevant chunks in a knowledge library and returns previews with relevance scores.
| Name | Required | Description | Default |
|---|---|---|---|
| library_name | Yes | Name of the library to search in | |
| query | Yes | Search query | |
| max_results | No | Maximum number of results to return (default: 10) |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | |
| results | Yes | |
| total_results | Yes | |
| library_name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already communicate readOnly, idempotent, and non-destructive behavior. The description adds that it returns previews with relevance scores, which is useful but minimal. It does not contradict the annotations.
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?
A single, information-dense sentence that front-loads the core action and expected output. There is no filler or redundancy.
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 presence of a full output schema, complete parameter documentation, and annotations covering safety and idempotency, the description covers the essentials. The only notable gap is not clarifying how this tool relates to 'query_knowledge_library'.
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 fully documents all three parameters. The description adds no additional parameter-level meaning beyond what the schema provides, so the baseline of 3 applies.
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?
States a clear verb ('searches'), resource ('knowledge library'), and output ('previews with relevance scores'). However, it does not differentiate from the sibling tool 'query_knowledge_library', which sounds functionally similar.
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 implies it is used for searching content within a knowledge library, and the input schema clarifies the required 'query' and 'library_name'. But there is no explicit guidance on when to choose this tool over 'query_knowledge_library' or other sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_library_integrityVerify Library IntegrityARead-onlyIdempotent
Verifies that all chunks in a library maintain 100% data integrity by checking hashes.
| Name | Required | Description | Default |
|---|---|---|---|
| library_name | Yes | Name of the library to verify |
Output Schema
| Name | Required | Description |
|---|---|---|
| library_name | Yes | |
| total_chunks | Yes | |
| verified_chunks | Yes | |
| failed_chunks | Yes | |
| integrity_percentage | Yes | |
| all_verified | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already pin the safety profile (readOnlyHint=true, idempotentHint=true, destructiveHint=false), and the description adds behavioral context beyond them: the check is exhaustive ('all chunks') and hash-based, with a strict '100%' success criterion implying a hard pass/fail. It does not disclose potential cost of a full-library scan or failure-report behavior, but the output schema covers return details.
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 entire description is one front-loaded sentence of about 16 words: verb, resource, scope, and method, with zero filler. Nothing is repeated from the title or schema.
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?
For a single-parameter, read-only tool with full annotations and an output schema, the description covers everything needed to call it: what it verifies, how, and how strictly. The only gap is usage context (when verification is warranted), which is a minor omission given the strong default clarity.
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% β library_name is already defined as 'Name of the library to verify' with a minLength constraint. The description's mention of 'a library' adds no parameter-level semantics beyond the schema, so the baseline of 3 applies.
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 names a specific verb ('verifies'), a specific resource ('all chunks in a library'), and a concrete method ('checking hashes'), which clearly distinguishes it from the sibling create/query/delete/search/stats tools. The '100% data integrity' scope makes its job unambiguous.
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?
Usage context is implied but not explicit: the hash-checking language signals a health-check/verification role, but the description never states when to run it (e.g., after ingestion or suspected corruption) or names alternatives. With get_library_stats as a sibling, explicit routing between a stats read and an integrity check would reduce ambiguity.
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.
8 tool updates
v1.0.0- First observed
create_knowledge_library - First observed
delete_knowledge_library - First observed
extend_context_from_files - First observed
get_library_stats - First observed
list_knowledge_libraries - First observed
query_knowledge_library - First observed
search_documents - First observed
verify_library_integrity
TDQS
Scored across 8 tools
Each tool targets a distinct action: create, delete, list, get stats, query, search, extend context, and verify integrity. Query and search are subtly different but their descriptions clearly differentiate them (query returns extended context, search returns previews with scores).
All tool names follow a consistent verb_noun pattern in snake_case (e.g., create_knowledge_library, list_knowledge_libraries, get_library_stats). The minor pluralization in list_knowledge_libraries is a natural variation and does not harm consistency.
With 8 tools, the set is well-scoped for a knowledge library system. It covers core operations without being too sparse or overly numerous, fitting comfortably within the ideal 3-15 range.
The tool surface covers create, read (list, stats, query, search), delete, and integrity verification. However, there is no update or append tool to modify an existing library, which is a minor but notable gap in the lifecycle.
Maintenance
Related MCP Connectors
Persistent memory for Claude Code and Cursor. Stop re-explaining your project every session.
Persistent context for Claude. Your AI always knows your projects and next actions across sessions.
Private persistent memory for Claude, ChatGPT & Gemini via MCP - semantic search, zero-code setup.
Persistent, outcome-grounded episodic memory for Claude. 14ms CPU retrieval, no GPU, no vector DB.
Related MCP Servers
- AlicenseBqualityAmaintenanceProvides a persistent "second brain" for Claude featuring zero-latency hot caching, semantic cold storage, and automatic pattern mining from activity logs. It enables users to store, search, and automatically extract project facts and code patterns for enhanced contextual recall.56138 PyPI9MIT
- AlicenseNot gradedqualityAmaintenance2-5x longer Claude Code sessions before compaction. Saves 30-40% on input token costs. Remembers your rules and corrections so Claude stops repeating mistakes after compaction. Auto-runs in the background, just install once and forget about it.227 PyPI412MIT
- AlicenseNot gradedqualityDmaintenancePersistent memory for Claude Code β a self-evolving knowledge layer that survives across sessions, grows from every conversation, and surfaces relevant context automatically.14MIT
- AlicenseAqualityDmaintenanceExtends LLM context windows by 15-60Γ using gravitational memory compression, enabling massive context extension for codebases, research papers, and long documents.813 npm4MIT