link-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., "@link-mcp-serveranalyze this Axure prototype for frontend changes: https://vscn2w.axshare.com/?id=ul0dre&p=3_5%E9%9C%80%E6%B1%82%E6%9B%B4%E6%96%B0&sc=3"
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.
link-mcp-server
MCP server for extracting UI, text, screenshots, and requirements from public links (including Axure prototypes). Designed specifically to empower AI coding assistants (like Cursor) with frontend context.
Features
Screenshot Capture: Automatically takes full-page screenshots of the provided link.
Frontend Analysis: Generates structured Markdown reports tailored for frontend development:
Inferred States (React/Vue state variables)
Components & Interactions
API Integration needs
Change Points (mapping annotations to DOM elements)
DOM Extraction: Extracts visible text blocks and image URLs.
Axure Support: Specially optimized for Axure share links to extract marker annotations and requirement changes.
Works with MCP: Fully compatible with Model Context Protocol clients (Cursor, Claude Desktop, etc.) via stdio.
Related MCP server: axure-mcp-server
Requirements
Node.js >= 18
npm >= 9
Quick Start
npm install
npx playwright install chromium
npm run build
npm startMCP Tools
1) analyze_link_for_frontend
Analyze a public link (like Axure) for frontend development. Returns a screenshot and a frontend-focused markdown analysis.
Input:
{
"url": "https://vscn2w.axshare.com/?id=ul0dre&p=3_5%E9%9C%80%E6%B1%82%E6%9B%B4%E6%96%B0&sc=3"
}Output: Returns two blocks to the AI client:
An
imageblock containing the full-page screenshot.A
textblock containing the Markdown analysis report.
2) link_health
Health check of runtime.
Use in Cursor
Add to MCP config:
{
"mcpServers": {
"link-mcp-server": {
"command": "npx",
"args": ["-y", "link-mcp-server"]
}
}
}Publish to npm
npm login
npm publish --access publicAvailable Tools
2 toolsanalyze_link_for_frontendC
Analyze a public link (like Axure) for frontend development. Returns a screenshot and a frontend-focused markdown analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public Link URL | |
| maxPages | No | ||
| maxTexts | No | ||
| maxImages | No | ||
| timeoutMs | No | ||
| crawlPages | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose the output shape ('a screenshot and a frontend-focused markdown analysis'), which is genuinely useful since there is no output schema. However, it says nothing about crawl behavior, runtime/cost, timeouts, or what happens with non-public or unsupported links.
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 tight sentences with zero filler, and the purpose is front-loaded ahead of the return-value note. It is efficient, though its brevity leaves gaps that belong to other dimensions rather than being a structural flaw.
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 six-parameter tool with no annotations, no output schema, and near-zero schema coverage, the description is too thin. An agent knows roughly what it gets back but has no basis for setting crawl, page, text, image, or timeout options.
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?
Six parameters with only 17% schema description coverage, and the description adds almost nothing: it echoes that the url must be a public link but never explains maxPages, maxTexts, maxImages, timeoutMs, or crawlPages. It fails to compensate for the documentation gap, though the 'public link' phrasing does add a small constraint on the url.
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 specific verb and resource ('Analyze a public link ... for frontend development') and even gives a concrete example domain (Axure). It does not explicitly distinguish itself from the sibling link_health, but the frontend-analysis framing is distinct enough that an agent can infer the difference.
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?
No when-to-use guidance, no prerequisites, and no mention of the sibling link_health as the alternative. The only implicit constraint is 'public link', which is not framed as a selection condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
link_healthB
Health check for link MCP server runtime.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It implies a read-only probe but says nothing about what is checked, whether authentication is needed, what the response contains, or latency. For a runtime health tool with no annotations and no output schema, this leaves the agent largely uninformed.
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 short sentence with no filler and the subject front-loaded. It is efficient, though its brevity is closer to under-specification than to crisp completeness.
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 is structurally simple (0 params, no output schema), so little is required, but the description never indicates what a health check returns (status, latency, dependency list) or how to interpret results. Minimum viable but with a clear gap.
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 takes zero parameters, so there is nothing for the description to disambiguate. Baseline 4 applies; no parameter meaning is missing.
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 specific verb+resource: a health check for the link MCP server runtime. An agent can tell it is a diagnostic probe rather than an analysis tool, though it never names the sibling analyze_link_for_frontend or otherwise differentiates itself explicitly.
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?
No when-to-use or when-not-to-use guidance. The word 'health check' implies a diagnostic use case, but the description never says under what conditions an agent should call this versus analyze_link_for_frontend or nothing at all.
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.
2 tool updates
v0.1.0- First observed
analyze_link_for_frontend - First observed
link_health
TDQS
Scored across 2 tools
The two tools serve entirely different purposes: one is a runtime health check and the other performs link analysis. There is no overlap or ambiguity in what each tool does.
Both names use snake_case, but they follow different grammatical patterns: 'link_health' is a noun phrase with a prefix, while 'analyze_link_for_frontend' is a verb phrase with a preposition. The inconsistency is noticeable but still readable.
Two tools is thin for a server, especially since only one provides the core functionality. The health check is useful but meta, leaving a very narrow actionable surface.
For a link analysis server, the single analyze tool covers the primary use case, but there are no operations for listing past analyses, batch processing, or validating links. The surface feels incomplete for broader link-related workflows.
Maintenance
Related MCP Connectors
Hosted browser for AI agents: screenshots, post-JS DOM, console, WCAG. No install, no API key.
Give AI coding agents access to your Vynix visual feedback, bug reports, and AI diagnosis.
Screenshots, PDFs and Markdown from any URL or HTML for AI agents, via the SnapForge API
Screenshot, PDF and HTML-to-image rendering API so Claude and Cursor can see any web page.
Related MCP Servers
- AlicenseAqualityNot gradedmaintenanceEnables AI tools to interact with browsers for enhanced frontend development, providing context to LLMs through tools like API call analysis, screenshots, element selection, and documentation ingestion.99 npm10-
- AlicenseBqualityDmaintenanceExtracts text, image links, and structural content from public Axure share pages to enable AI-powered prototype summarization. It features multi-page crawling and OCR fallback to process image-only designs for downstream LLM analysis.313 npm11MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to capture website screenshots, automate browser interactions, and manage recurring screenshot configurations across 150+ global locations. It also supports AI-powered domain research and visual change monitoring for any web page.17 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to extract design systems, brand guidelines, copy, and sitemap structure from any live website via the Pastebase API.MIT