# urls-le [Health: Active]

**Category:** 🔎 Search & Data Extraction  
**Repository:** https://github.com/nolindnaidoo/urls-le  
**GitHub Stars:** 1  
**npm Downloads (last month):** 1355  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/urls-le

## Description
Extract URLs from documentation, configuration and code, with their protocol and position.

## Tools
Capabilities this server exposes over MCP:

- **extract_urls** — Extract every URL from a document, with its protocol and 1-based line and column. Reads any text document. Markdown, HTML, CSS, JavaScript, TypeScript, JSON, YAML, Properties, TOML, INI and XML each know what to exclude: Markdown its code fences and inline code, HTML its comments, JSON everything that is not a string. A comment in Markdown is scanned. Everything else is scanned whole, and `fileType` says which happened.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "urls-le": {
    "command": "npx",
    "args": ["-y","urls-le-mcp"]
  }
}
```

## Documentation

## What urls-le does

The urls-le MCP server gives an AI agent a focused URL extraction tool for text from files, documents, and configuration. The agent supplies the content rather than a path, and receives structured matches containing the URL, its protocol, and its 1-based line and column position.

Supported material includes Markdown, HTML, CSS, JavaScript, TypeScript, JSON, YAML, Java properties, TOML, INI, and XML. Extraction follows format-aware rules where described by the project: Markdown code blocks and HTML comments are excluded, while JavaScript and TypeScript string literals, template literals, and comments can be searched. The same engine is also used by the project’s editor and command-line tools, but this listing covers the MCP interface.

The urls-le MCP server is suitable for link inventories, documentation checks, configuration review, and source inspection when the calling agent can provide the text directly. It is not a crawler, file search service, or URL checker.

## How it works

The server exposes one MCP tool:

- `extract_urls(content, format?, filename?, dedupe?, maxResults?)`

`content` is the text to inspect. The optional `format` and `filename` parameters can provide context for parsing. `dedupe` controls duplicate handling, and `maxResults` limits the returned matches. Results are capped at 500 by default, and metadata reports truncation when the limit prevents all matches from being returned.

Communication uses MCP over standard input and output. The server processes the supplied data and returns the extraction result; it does not read local files and does not issue network requests. This makes it appropriate for agents that have already opened a file or received text through another tool.

## Setup and configuration

Run the package with Node.js and `npx`:

```bash
npx -y urls-le-mcp
```

An MCP host configuration can launch it with:

```json
{
  "mcpServers": {
    "urls-le": {
      "command": "npx",
      "args": ["-y", "urls-le-mcp"]
    }
  }
}
```

The package is published as `urls-le-mcp` on npm. You can pin a package version in the arguments or install it globally and invoke the `urls-le-mcp` binary directly. No environment variables, API key, or server-specific configuration is required. A host can verify the installation by sending an MCP `tools/list` request and checking for `extract_urls`.

## Tools and capabilities

The urls-le MCP server provides:

- URL extraction from supported text formats
- Protocol information for each match
- 1-based line and column positions
- Optional duplicate removal
- A configurable result limit with truncation metadata
- Stdio transport for MCP-compatible hosts

The tool works on one supplied document at a time.

## Limitations and notes

The server only analyzes content passed in the tool call. It cannot discover files, inspect unsaved or on-disk workspace content, follow links, validate responses, or fetch remote resources. Large inputs may be limited by `maxResults`; callers should inspect the truncation metadata before treating a result as complete.

The README identifies use with VS Code agent mode, Claude Code, Cursor, and Windsurf. Other MCP hosts can use the stdio command if they support this transport and configuration style.

_Full upstream README: https://allmcps.com/mcp/urls-le/readme_

