LinkPulse

URL reality check for agents: status, content hash, classification, wayback fallback.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
81%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~392Tokens (tool definitions)
~614 BTypical response size
Minimal attention impact (0.31% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "linkpulse": {
      "url": "https://linkpulse-neon.vercel.app/mcp"
    }
  }
}

Remote endpoints

https://linkpulse-neon.vercel.app/mcpstreamable-http

What it can do

Tool inventory

Tools (4)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢linkpulse_check(url, force_fresh, timeout_ms, max_bytes, include_body_sample)

Fetch a URL and return its current state: HTTP status, final URL after redirects, SHA-256 content hash, classification, readability score, title/meta-description, and wayback archive fallback if dead. Cached 10 minutes.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "format": "uri"
    },
    "force_fresh": {
      "type": "boolean",
      "default": false
    },
    "timeout_ms": {
      "type": "integer",
      "minimum": 1000,
      "maximum": 15000,
      "default": 6000
    },
    "max_bytes": {
      "type": "integer",
      "minimum": 1024,
      "maximum": 1500000,
      "default": 1500000
    },
    "include_body_sample": {
      "type": "boolean",
      "default": false,
      "description": "If true, return first 1KB of body text."
    }
  },
  "required": [
    "url"
  ]
}
🟢linkpulse_diff(url, previous_hash)

Re-check a URL and tell you whether its content hash has changed since a previous hash you supply. Returns boolean + new hash.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "format": "uri"
    },
    "previous_hash": {
      "type": "string"
    }
  },
  "required": [
    "url",
    "previous_hash"
  ]
}
⚪linkpulse_resolve(url)

Resolve redirect chain for a URL without downloading the full body. Returns final URL + redirect count.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "format": "uri"
    }
  },
  "required": [
    "url"
  ]
}
⚪linkpulse_classify(status, content_type, body_sample)

Classify content you already have (status code + content-type + body sample) without an outbound fetch. Useful if your agent already fetched the URL via another tool.

Input Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "integer"
    },
    "content_type": {
      "type": "string"
    },
    "body_sample": {
      "type": "string"
    }
  },
  "required": [
    "status",
    "content_type",
    "body_sample"
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools
verifiedversion not recorded4 tools