Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
MCP server for fetching web resources with content extraction and anti-bot bypass.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
FIRECRAWL_API_KEY, BRIGHTDATA_API_KEY, STRATEGY_CONFIG_PATH, OPTIMIZE_FOR, MCP_RESOURCE_STORAGE, MCP_RESOURCE_FILESYSTEM_ROOT, SKIP_HEALTH_CHECKS, LLM_PROVIDER, LLM_API_KEY, LLM_API_BASE_URL, LLM_MODELLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"pulse-fetch": {
"command": "npx",
"args": [
"-y",
"@pulsemcp/pulse-fetch"
],
"env": {
"FIRECRAWL_API_KEY": "your-value",
"BRIGHTDATA_API_KEY": "your-value",
"STRATEGY_CONFIG_PATH": "your-value",
"OPTIMIZE_FOR": "your-value",
"MCP_RESOURCE_STORAGE": "your-value",
"MCP_RESOURCE_FILESYSTEM_ROOT": "your-value",
"SKIP_HEALTH_CHECKS": "your-value",
"LLM_PROVIDER": "your-value",
"LLM_API_KEY": "your-value",
"LLM_API_BASE_URL": "your-value",
"LLM_MODEL": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add pulse-fetch --env FIRECRAWL_API_KEY=your-value --env BRIGHTDATA_API_KEY=your-value --env STRATEGY_CONFIG_PATH=your-value --env OPTIMIZE_FOR=your-value --env MCP_RESOURCE_STORAGE=your-value --env MCP_RESOURCE_FILESYSTEM_ROOT=your-value --env SKIP_HEALTH_CHECKS=your-value --env LLM_PROVIDER=your-value --env LLM_API_KEY=your-value --env LLM_API_BASE_URL=your-value --env LLM_MODEL=your-value -- npx -y @pulsemcp/pulse-fetchCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"pulse-fetch": {
"command": "npx",
"args": [
"-y",
"@pulsemcp/pulse-fetch"
],
"env": {
"FIRECRAWL_API_KEY": "your-value",
"BRIGHTDATA_API_KEY": "your-value",
"STRATEGY_CONFIG_PATH": "your-value",
"OPTIMIZE_FOR": "your-value",
"MCP_RESOURCE_STORAGE": "your-value",
"MCP_RESOURCE_FILESYSTEM_ROOT": "your-value",
"SKIP_HEALTH_CHECKS": "your-value",
"LLM_PROVIDER": "your-value",
"LLM_API_KEY": "your-value",
"LLM_API_BASE_URL": "your-value",
"LLM_MODEL": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"pulse-fetch": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@pulsemcp/pulse-fetch"
],
"env": {
"FIRECRAWL_API_KEY": "your-value",
"BRIGHTDATA_API_KEY": "your-value",
"STRATEGY_CONFIG_PATH": "your-value",
"OPTIMIZE_FOR": "your-value",
"MCP_RESOURCE_STORAGE": "your-value",
"MCP_RESOURCE_FILESYSTEM_ROOT": "your-value",
"SKIP_HEALTH_CHECKS": "your-value",
"LLM_PROVIDER": "your-value",
"LLM_API_KEY": "your-value",
"LLM_API_BASE_URL": "your-value",
"LLM_MODEL": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
STRATEGY_CONFIG_PATH envOPTIMIZE_FOR envMCP_RESOURCE_STORAGE envMCP_RESOURCE_FILESYSTEM_ROOT envSKIP_HEALTH_CHECKS envLLM_PROVIDER envLLM_API_BASE_URL envLLM_MODEL envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 7 nov 2026
El nombre en el registro se verificó con el dominio pulsemcp.com (el registro comprueba quién es dueño del dominio)
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: FIRECRAWL_API_KEY, BRIGHTDATA_API_KEY, LLM_API_KEY
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.3.3) llegó al registro hace 5 meses.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, Tools MCP
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Web production tools for AI agents: contrast, JP text, WebP, JSON-LD, slugs, dates and 40+ more
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Haven't heard about MCP yet? The easiest way to keep up-to-date is to read our weekly newsletter at PulseMCP.
This is an MCP (Model Context Protocol) Server that pulls specific resources from the open internet into context, designed for agent-building frameworks and MCP clients that lack built-in fetch capabilities.
Pulse Fetch is purpose-built for extracting clean, structured content from web pages while minimizing token usage and providing reliable access to protected content through advanced anti-bot bypassing capabilities.
This project is built and maintained by PulseMCP.
Clean content extraction: Strips out HTML noise using Mozilla's Readability algorithm to minimize token usage during MCP Tool calls.
Intelligent caching: Automatically caches scraped content as MCP Resources. Subsequent requests for the same URL return cached content instantly without network calls, dramatically improving performance.
Anti-bot bypass: Integrates with Firecrawl and BrightData APIs to reliably work around anti-scraping technology.
Smart strategy selection: Automatically learns and applies the best scraping method for specific URL patterns, improving performance over time.
LLM-optimized: Offers MCP Prompts and descriptive Tool design for better LLM interaction reliability.
Flexible formats: Supports multiple output formats including clean markdown, HTML, screenshots, and structured data extraction.
Intelligent extraction: Extract specific information using natural language queries powered by LLMs.
This server is built and tested on macOS with Claude Desktop. It should work with other MCP clients as well.
| Tool Name | Description |
|---|---|
scrape | Scrape a single webpage with advanced content extraction options and multiple output formats. |
scrape tool handles all web content extraction needs and automatically bypasses anti-bot protection when necessaryresultHandling parameter:saveAndReturn (default): Saves content as MCP Resource AND returns it - best for reusereturnOnly: Returns content without saving - use when you only need content oncesaveOnly: Saves content as MCP Resource, returns only resource link - efficient for large contentforceRescrape: true to bypass the cache and get fresh content when you know the page has changedmaxChars and startIndex parameters to handle large content that exceeds token limitsextract parameter with natural language queries to extract specific information from pages (requires LLM configuration)User: "Get the main content from this article: https://example.com/article"
Assistant: I'll extract the content from that article for you.
[Uses scrape tool with onlyMainContent: true]
I've extracted the main article content. The article is titled "Example Article Title" and contains approximately 2,500 words discussing...
User: "Extract the product information from this e-commerce page: https://shop.example.com/product/123"
Assistant: I'll extract the structured product data from that page.
[Uses scrape tool with format: 'extract' and appropriate schema]
I've extracted the product information:
User: "This page is blocking me with CAPTCHA. Can you get the content from https://protected.example.com/data"
Assistant: I'll extract the content from that protected page for you.
[Uses scrape tool with automatic anti-bot bypass]
I successfully bypassed the protection and extracted the content from the page using BrightData's Web Unlocker capabilities.
User: "Get the content from https://example.com/article again"
Assistant: I'll retrieve that content for you.
[Uses scrape tool - automatically returns cached content]
I've retrieved the content from cache (originally scraped 2 hours ago). The article contains...
User: "Actually, I think that article was updated. Can you get the latest version?" Assistant: I'll fetch a fresh copy of the article for you.
[Uses scrape tool with forceRescrape: true]
I've fetched the latest version of the article. I can see it was indeed updated with new information about...
User: "I need to archive this entire article: https://example.com/long-article"
Assistant: I'll save that article as a resource for you.
[Uses scrape tool with resultHandling: 'saveOnly']
I've successfully archived the article. It's now saved as an MCP Resource that you can access later.
User: "Can you extract just the summary from https://example.com/report without saving it?" Assistant: I'll extract just the summary without saving the full content.
[Uses scrape tool with resultHandling: 'returnOnly' and extract parameter]
Here's the summary I extracted from the report: [summary content]
If our Design Principles resonate with you, you should consider using our server.
The official reference implementation of fetch is the closest alternative. However:
fetch has no mechanisms for bypassing anti-scraping technology, meaning attempts may randomly fail. We integrate with third-party services for reliable access.fetch is maintained by volunteers, so bugs or edge cases are less likely to be addressed quickly.Pulse Fetch caches responses as Resources, allowing easy inspection and re-use of Tool call outcomes.Pulse Fetch has more descriptive Tool design that more reliably triggers and completes desired tasks.Most other alternatives fall short on one or more vectors:
| Environment Variable | Description | Required | Default Value | Example |
|---|---|---|---|---|
FIRECRAWL_API_KEY | API key for Firecrawl service to bypass anti-bot measures | No | N/A | fc-abc123... |
BRIGHTDATA_API_KEY | Bearer token for BrightData Web Unlocker service | No | N/A | Bearer bd_abc123... |
STRATEGY_CONFIG_PATH | Path to markdown file containing scraping strategy configuration | No | OS temp dir | /path/to/scraping-strategies.md |
OPTIMIZE_FOR | Optimization strategy for scraping: cost or speed | No | cost | speed |
MCP_RESOURCE_STORAGE | Storage backend for saved resources: memory or filesystem | No | memory | filesystem |
MCP_RESOURCE_FILESYSTEM_ROOT | Directory for filesystem storage (only used with filesystem type) | No | /tmp/pulse-fetch/resources | /home/user/mcp-resources |
SKIP_HEALTH_CHECKS | Skip API authentication health checks at startup | No | false | true |
The extract feature provides an alternative to MCP's native sampling capability for clients that don't support it. When configured, it enables intelligent information extraction from scraped content using LLMs. If neither LLM configuration nor MCP sampling is available, the extract parameter will not be shown in the tool.
| Environment Variable | Description | Required | Default Value | Example |
|---|---|---|---|---|
LLM_PROVIDER | LLM provider: anthropic, openai, openai-compatible | No | N/A | anthropic |
LLM_API_KEY | API key for the chosen LLM provider | No | N/A | sk-abc123... |
LLM_API_BASE_URL | Base URL for OpenAI-compatible providers | No | N/A | https://api.together.xyz/v1 |
LLM_MODEL | Specific model to use for extraction | No | See defaults below | gpt-4-turbo |
Default Models:
claude-sonnet-4-20250514 (Claude Sonnet 4 - latest and most capable)gpt-4.1-mini (GPT-4.1 Mini - latest and most capable)You'll need Node.js installed on your machine to run the local version.
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Add this configuration to your Claude Desktop config file:
Minimal configuration (uses native fetch only):
{
"mcpServers": { "pulse-fetch": { "command": "npx", "args": ["-y", "@pulsemcp/pulse-fetch"] } } }
Full configuration (with all optional environment variables):
{
"mcpServers": { "pulse-fetch": { "command": "npx", "args": ["-y", "@pulsemcp/pulse-fetch"], "env": { "FIRECRAWL_API_KEY": "your-firecrawl-api-key", "BRIGHTDATA_API_KEY": "your-brightdata-bearer-token", "STRATEGY_CONFIG_PATH": "/path/to/your/scraping-strategies.md", "OPTIMIZE_FOR": "cost", "MCP_RESOURCE_STORAGE": "filesystem", "MCP_RESOURCE_FILESYSTEM_ROOT": "/path/to/resource/storage" } } } }
To set up the local version:
cd pulse-fetch/localnpm installnpm run buildSolo se muestra el principio; lee el resto en el repo