mcp-protocol-website-manifest-analyzer
A utility for scrutinizing web domains that adhere to the llms.txt specification, enabling the parsing and validation of these manifest files to extract structured intelligence regarding compliant endpoints.
Author

thedaviddias
Quick Info
Actions
Tags
MCP Manifest Utility for LLM Context Files
This Model Context Protocol (MCP) service is engineered for the systematic exploration of web presences featuring llms.txt documents. It furnishes the capability to surface and meticulously analyze these configuration files.
Core Capabilities
Data Acquisition & Verification
- Scans specified URLs for the presence of
llms.txtand the supplementaryllms-full.txtfiles. - Executes comprehensive parsing and validation routines on the content found within
llms.txt. - Provides access to codified data extracted from conforming web resources.
Operational Commands
check_website: Assesses a given domain URL to determine the existence and status of its LLM manifest files.- Input: A Uniform Resource Locator (URL) for the domain.
- Output: Details on file locations and their respective validation outcomes.
list_websites: Generates a catalog of known sites implementing the manifest standard.- Output: A structured dataset detailing compliant websites.
- Supports parameter-based querying based on file type (
llms.txtorllms-full.txt).
Deployment & Setup
Dependency installation prerequisites:
pnpm install
Generating the executable artifacts:
pnpm run build
For iterative development with automatic recompilation:
pnpm run watch
Integration Procedures
Installation via Smithery (Automated)
For seamless incorporation into Claude Desktop via the Smithery registry:
npx -y @smithery/cli install @thedaviddias/mcp-llms-txt-explorer --client claude
Manual Installation Steps
To deploy this server locally:
# Obtain the source code repository
git clone https://github.com/thedaviddias/mcp-llms-txt-explorer.git
cd mcp-llms-txt-explorer
# Resolve required packages
pnpm install
# Compile the project
pnpm run build
Configuration within Claude Desktop
To enable this service within Claude Desktop, modify the configuration file:
MacOS Location: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows Location: %APPDATA%/Claude/claude_desktop_config.json
Use the following structure for direct execution:
{
"mcpServers": {
"llms-txt-explorer": {
"command": "node",
"args": ["/path/to/llms-txt-explorer/build/index.js"],
}
}
}
Alternatively, for configurations utilizing npx:
{
"mcpServers": {
"llms-txt-explorer": {
"command": "npx",
"args": ["-y", "@thedaviddias/mcp-llms-txt-explorer"]
}
}
}
Troubleshooting and Inspection
Debugging inter-process communication over stdio requires specialized tooling. We strongly suggest utilizing the MCP Inspector, executable via:
pnpm run inspector
This command furnishes a local network address to launch the debugging interface within a web browser.
Licensing
This software is distributed under the terms of the MIT License (refer to the LICENSE file for comprehensive details).
WIKIPEDIA: XMLHttpRequest (XHR) is an API in the form of a JavaScript object whose methods transmit HTTP requests from a web browser to a web server. The methods allow a browser-based application to send requests to the server after page loading is complete, and receive information back. XMLHttpRequest is a component of Ajax programming. Prior to Ajax, hyperlinks and form submissions were the primary mechanisms for interacting with the server, often replacing the current page with another one.
== History == The concept behind XMLHttpRequest was conceived in 2000 by the developers of Microsoft Outlook. The concept was then implemented within the Internet Explorer 5 browser (1999). However, the original syntax did not use the XMLHttpRequest identifier. Instead, the developers used the identifiers ActiveXObject("Msxml2.XMLHTTP") and ActiveXObject("Microsoft.XMLHTTP"). As of Internet Explorer 7 (2006), all browsers support the XMLHttpRequest identifier. The XMLHttpRequest identifier is now the de facto standard in all the major browsers, including Mozilla's Gecko layout engine (2002), Safari 1.2 (2004) and Opera 8.0 (2005).
=== Standards === The World Wide Web Consortium (W3C) published a Working Draft specification for the XMLHttpRequest object on April 5, 2006. On February 25, 2008, the W3C published the Working Draft Level 2 specification. Level 2 added methods to monitor event progress, allow cross-site requests, and handle byte streams. At the end of 2011, the Level 2 specification was absorbed into the original specification. At the end of 2012, the WHATWG took over development and maintains a living document using Web IDL.
== Usage == Generally, sending a request with XMLHttpRequest has several programming steps.
Create an XMLHttpRequest object by calling a constructor: Call the "open" method to specify the request type, identify the relevant resource, and select synchronous or asynchronous operation: For an asynchronous request, set a listener that will be notified when the request's state changes: Initiate the request by calling the "send" method: Respond to state changes in the event listener. If the server sends response data, by default it is captured in the "responseText" property. When the object stops processing the response, it changes to state 4, the "done" state. Aside from these general steps, XMLHttpRequest has many options to control how the request is sent and how the response is processed. Custom header fields can be added to the request to indicate how the server should fulfill it, and data can be uploaded to the server by providing it in the "send" call. The response can be parsed from the JSON format into a readily usable JavaScript object, or processed gradually as it arrives rather than waiting for the entire text. The request can be aborted prematurely or set to fail if not completed in a specified amount of time.
== Cross-domain requests ==
In the early development of the World Wide Web, it was found possible to brea
