{"_id":"@j0hanz/fetch-url-mcp","_rev":"85-bd5979a54c8087873749edf39325c3c1","name":"@j0hanz/fetch-url-mcp","dist-tags":{"latest":"2.0.2"},"versions":{"0.0.1":{"name":"@j0hanz/fetch-url-mcp","version":"0.0.1","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@0.0.1","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"14f75d1253def45428c74f9689bce32e132a460c","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-0.0.1.tgz","fileCount":65,"integrity":"sha512-BLfsDX9/fx8pLIC1bRNavNQU3y1+xP9FXFhXds72T2B6gnQfw5G5wBHy/fS30Lhi2ENfs/QaE78oOc3i1rak7A==","signatures":[{"sig":"MEQCIHJDSzqqARB6XDoHim8UmZOmg3CsxWIZ26vjAKz21UMnAiAgwhc8vQW6YHQS5sPMLVBUNrCyeTf7TvvJF8fsSyMGgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2368992},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"37a1a2ab5d333fc8207193bc3baaf099f5c0c6ea","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","validate:instructions":"node scripts/tasks.mjs validate:instructions","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"j0hanz","email":"golfarenlj@protonmail.com"},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.6.4","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^5.83.1","eslint":"^9.23.2","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.55.0","eslint-plugin-depend":"^1.4.0","eslint-plugin-sonarjs":"^3.0.6","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.0.0","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_0.0.1_1770811064566_0.6099541656242595","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@j0hanz/fetch-url-mcp","version":"0.0.2","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@0.0.2","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"a1b26a1ae2aeebf3471c5d5a795223d50a0d7cae","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-0.0.2.tgz","fileCount":65,"integrity":"sha512-pcbH8Lr0rCg73PyVFKxii9U3FRIuYDXgbQgDT1R9DY/N94A6NwVJzzwayuLuuu133HcvAr444M8ykC9YRNj3Iw==","signatures":[{"sig":"MEUCIQC8lAVO/FhCPPqcIklL+Pk9QjJJtkTwcmmr1ZDSSogtEgIgXGXPgU2kUzLs8LNu+R2AypCtJySabPuhcSS6oiBGakk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@0.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2352601},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"3d309fe0d6d147523882001a4d73945692cc0b5e","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","validate:instructions":"node scripts/tasks.mjs validate:instructions","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^5.83.1","eslint":"^9.23.2","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.55.0","eslint-plugin-depend":"^1.4.0","eslint-plugin-sonarjs":"^3.0.6","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.0.0","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_0.0.2_1770812652017_0.24266568710658842","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.0.0","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.0.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"127b6adc4ed8fe7b69bb908849f2e881d5164af3","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.0.0.tgz","fileCount":65,"integrity":"sha512-LkgJXCObMuACQBdLXuU0133zBA0n6vjc+LtYLm3bYunmXsBLoDmbnU6zJruH+Wv6h3iRHnVvyX1y8Pg7idDx6Q==","signatures":[{"sig":"MEUCIFCx8dHzZ6L5Cfa8v4pfLM4TKxvLFsiyaFqQeUUU0h6tAiEAjDVaral9fgWktgrY7/ObnEieRR3Qg1w9YPLeMtZCFe0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2377528},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"357c17a3b1d4d0776a194a7328148730960681f3","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","validate:instructions":"node scripts/tasks.mjs validate:instructions","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"j0hanz","email":"golfarenlj@protonmail.com"},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.6.4","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^5.83.1","eslint":"^9.23.2","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.55.0","eslint-plugin-depend":"^1.4.0","eslint-plugin-sonarjs":"^3.0.6","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.0.0","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.0.0_1770813058988_0.20679072559684242","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@j0hanz/fetch-url-mcp","version":"1.0.1","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.0.1","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"613eec18cf47c6e2afb9fda633422f49f8af916f","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.0.1.tgz","fileCount":65,"integrity":"sha512-yDFCFpJWSzLLD0Wxn6LTxFjQu56cF+8nLQxPP4n4IB9uWzTvt04vn+pQ1C+fkC8u9stDKfX3V1Rrow3HeFgucA==","signatures":[{"sig":"MEUCIE0PyJ7NDJOwF/YeMi6pYm54LCF+6FHhpxCyqUruR6B6AiEAlJDlYmgZXQo/dDTQSmT5eA0cdUJ9HiT4N46O9YCynrE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2353458},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"89ad5eb5f11dfb3aa23a22073c64452d4cd0812f","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","validate:instructions":"node scripts/tasks.mjs validate:instructions","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^5.83.1","eslint":"^9.23.2","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.55.0","eslint-plugin-depend":"^1.4.0","eslint-plugin-sonarjs":"^3.0.6","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.0.0","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.0.1_1770817715651_0.17973277170335744","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.1.0","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.1.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"5198fc4e2eb7181d7299cea7bf47773eccd9ff47","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.1.0.tgz","fileCount":65,"integrity":"sha512-tFPeh4m4e2fq3sdAwFxB0qyVFN5yOTC5Rc2j9p9RKkitY5zJRLdZUfgsyqZdR23KfkDl+KoD8dwU9FT8akFOjQ==","signatures":[{"sig":"MEQCIEaStEr9AQwsAQ4U4/q3J0EKp/N1CF0lomkEeC0hbXc1AiAsjmltUaFZ9rWbzUt5cV0WjmcdeAdU35POPd4tvCCiyw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2362907},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c01597b446e3a998aaa96cd8af0b5215549ed0e6","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","validate:instructions":"node scripts/tasks.mjs validate:instructions","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.10.0","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^5.83.1","eslint":"^9.23.2","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.55.0","eslint-plugin-depend":"^1.4.0","eslint-plugin-sonarjs":"^3.0.6","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.0.0","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.1.0_1770894653249_0.7944554422556689","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@j0hanz/fetch-url-mcp","version":"1.1.1","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.1.1","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"a98da1225e27e74ffabdd0b518d6b4cc0835c654","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.1.1.tgz","fileCount":65,"integrity":"sha512-SO1qmCCSeL+v8Qk7gxR81+Brp/LNIfczXymYnKzP3TahKjiUJM0m/wwgcgQIUCEgW8upOujKhOiP+9Kwq5qsWw==","signatures":[{"sig":"MEUCIQCaKB81FBY4vWbIVwL2jXemBoG8aRgdDvxP0Fqw+3vsaAIgYZlPeQtKSlbZrqBKOvmzebDX0ueyBjRRnu7sVONUhuM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2366606},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"a3f972532e3fd7d03c81bd147903e24d37a55ade","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","validate:instructions":"node scripts/tasks.mjs validate:instructions","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.10.0","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^5.83.1","eslint":"^9.23.2","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.55.0","eslint-plugin-depend":"^1.4.0","eslint-plugin-sonarjs":"^3.0.6","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.0.0","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.1.1_1770898908566_0.153914183396076","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@j0hanz/fetch-url-mcp","version":"1.1.2","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.1.2","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"b67124677b2db971d485cf13f9e2279bcf4035c9","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.1.2.tgz","fileCount":65,"integrity":"sha512-pzRC+098ve/PBldubroAgy4Lg2KzKJxV5pU8LOLz2lv6kFM0uVY3rshuJiAx2fonbelK0e5GweBhiyK8Ifp/qg==","signatures":[{"sig":"MEUCIQD9ZTB3AdS1w9PPJnCUu+B0QXUqUxv0SnQ6CwDCFojOeQIgFDmvsjApz7oDUYB1v+1vgUg0/SjbkYMo7LGjym6L0OA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2367675},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"25b27b822c4994f5eabf599751e0efa007523b19","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","validate:instructions":"node scripts/tasks.mjs validate:instructions","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.10.0","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^5.83.1","eslint":"^9.23.2","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.55.0","eslint-plugin-depend":"^1.4.0","eslint-plugin-sonarjs":"^3.0.6","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.0.0","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.1.2_1770986156562_0.6080980408227818","host":"s3://npm-registry-packages-npm-production"}},"1.1.3":{"name":"@j0hanz/fetch-url-mcp","version":"1.1.3","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.1.3","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"c8d45e6798c603264ace1110fcd04a67cc2bed70","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.1.3.tgz","fileCount":69,"integrity":"sha512-HiWhqF89ft4InrnJSkPnXfGrt51fDGyN1EguesK/Eauk7seK5rbsSdJKa9CpdeJt2lwsle3nQewL+MEiE9OpQw==","signatures":[{"sig":"MEUCIByQqMURcgmgspmTs4gF4U5BAiATtEHWsDA+xABZBsPQAiEAtfN9LVRVwyoUsZbpZVt60EkqalJvsNkekzcmbWzQAMQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2369377},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"cd99439c5ff48ab8a0ede89abb00abc4accaae7f","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:tests":"node scripts/tasks.mjs type-check:tests","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","validate:instructions":"node scripts/tasks.mjs validate:instructions","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.10.0","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^5.83.1","eslint":"^9.23.2","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.55.0","eslint-plugin-depend":"^1.4.0","eslint-plugin-sonarjs":"^3.0.6","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.0.0","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.1.3_1770988676027_0.5682593237073696","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.2.0","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.2.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"5e9f21dbf24b0a18f2d551bdb32b6b72b72cf203","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.2.0.tgz","fileCount":71,"integrity":"sha512-aXQSw6pJ9IuRQt1rGViRghmxJyk+TSLLVtkbF3GKuVzsg/r0BqVnQReo6Y9MbYQ2ht31boYtMsvStuWDmoE3nw==","signatures":[{"sig":"MEUCIQCWZIAIQuap9faAOkMZ8rRkYTcKAF1zq/UAAxP5F9S7LgIgDhngSkSqJeIuqbFqPUyFyWxApBhuNCkaiDvfjDr1qaw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2391345},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"51b1016ed44354d06d867e3a2ee908347fdfbef9","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:tests":"node scripts/tasks.mjs type-check:tests","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","validate:instructions":"node scripts/tasks.mjs validate:instructions","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.10.0","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^5.83.1","eslint":"^9.23.2","prettier":"^3.8.1","@eslint/js":"^9.39.2","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.55.0","eslint-plugin-depend":"^1.4.0","eslint-plugin-sonarjs":"^3.0.6","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.0.0","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.2.0_1771190207278_0.08494687472112372","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.3.0","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.3.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"444bc92742b30ffdecf1c742c66603ec4a5b9290","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.3.0.tgz","fileCount":181,"integrity":"sha512-uJMf9RGw5YJEIodmislsmLaA79zWYhs+KPP53aMrqRrjcu5ztgnTguP1ri8w0dNm1oNBXB4eFmNmEkVW7Xt+Mg==","signatures":[{"sig":"MEYCIQDy174HpehpMyEZosu7wDHtX98rLOe3dH2GMp8nEo2j1QIhALpeQuP14eep3BzF5PiP/vmtDNbXyXzYhjoDFSqSWUDC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2849923},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"37d7663dd9c6c3f5b758522c93ed7f433422381c","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.10.1","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^5.83.1","eslint":"^10.0.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.56.0","eslint-plugin-depend":"^1.4.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.0.0","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.3.0_1771835428436_0.16698669743880945","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@j0hanz/fetch-url-mcp","version":"1.3.1","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.3.1","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"9139cddbe2976f62563865940a6aeb7863d34919","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.3.1.tgz","fileCount":181,"integrity":"sha512-NpVMg1YNC78RrfYuNqFSFDhwbDeQ7YK9icKKTMVeD/Nvcv+OKBIvs6dxKFpwBF0/f49zjB8IZB0u5vLrfYg5rw==","signatures":[{"sig":"MEUCIA5tZZchGllmWuWPzLHbRyMZM57gcvt5S5Jf4gD9EQu/AiEAq6oQkgoapzCt39ayQUedNMzF8mETitbafuibdRN1AFw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2862517},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"006927d1788bd460a683d17275b3e6c6569d4d3d","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.0","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.26.0"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^5.83.1","eslint":"^10.0.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.56.0","eslint-plugin-depend":"^1.4.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.0.0","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.3.1_1772004419993_0.7638067959066175","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.4.0","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.4.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"3bab932eaaeadc3348e24d4325333fdc00dca822","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.4.0.tgz","fileCount":203,"integrity":"sha512-KPbkQWY8fKFJts4kfsFghyjbBTbJ01mlyvtJvEVQEVA2yuUsr+Vdx+6XaOL6j7R4jDjH2huFIt1COt2DLcyknA==","signatures":[{"sig":"MEYCIQCZj4GqX/IZqxKUK0RtNgku2ESCtmQozlDwMX2aLayyEAIhAIM7JwXXMLorR3AZQCHsUI1sf3iFLm/49B+xadxPqCMv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2846942},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"fcb6e21b46697e555cb837078ac47d7a23090159","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.8.0","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.1","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"knip":"^5.85.0","eslint":"^10.0.2","prettier":"^3.8.1","ts-morph":"^27.0.2","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.56.1","eslint-plugin-depend":"^1.4.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.0.0","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.4.0_1772111105647_0.7375568280298062","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.5.0","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.5.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"b3db9421e85045eaa728e7f9a5adf81f1baddb09","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.5.0.tgz","fileCount":75,"integrity":"sha512-CzPKIdT4BBiyN1tAZ0gEKMUp/adJ0GyhqTAdBXzBZK8gTcMDRAzcd2lhPZ5cslXiMvJcf7QbBtVR6Y/ozB0q4A==","signatures":[{"sig":"MEQCIA+n+PAgdBtOHXU3WXe97bE/I1uPrNTo1xDXm+vgRyX/AiByWB0hRvdiGQHphmdSS7OkDHmxS29rgd5w2uKVV5lmGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2414456},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"cc797e7b9465ebe6f26161bcef24e5d224b2ba30","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.8.0","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.1","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.85.0","eslint":"^10.0.2","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.56.1","eslint-plugin-depend":"^1.4.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.5.0_1772391170924_0.10422889605109864","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@j0hanz/fetch-url-mcp","version":"1.5.1","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.5.1","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"3f039e2d160c80fa88dd823d37ded76ecd5d10fb","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.5.1.tgz","fileCount":75,"integrity":"sha512-74oa+axneiSdHDrO4lWe+BsL1HE6g80Aw15VgyvOd4rdJLLjHsNoZPwxKADEdxu5igeO9BnrwYuL9Dll4tgzIg==","signatures":[{"sig":"MEYCIQDfYIg0eIW/buqMnBvZeHVCAZ/VrDsvm60HIU7a8g80egIhAKoZOwsvGzMUtuDqVYDRviGgR0K81AXVIDDWpfwG7WnL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2415067},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"99c38289dc4960025ecaf64adda72da3f4c20e00","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.8.0","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.13.1","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.85.0","eslint":"^10.0.2","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.56.1","eslint-plugin-depend":"^1.4.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.5.1_1772446691018_0.3155725254682724","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.6.0","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.6.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"c02e922505a73d01540b48e607046f541395b0e9","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.6.0.tgz","fileCount":79,"integrity":"sha512-LugQBGZCSpaSLQHd0vmy9eYOg43p3JB/KiLgV/cIfxD52GZBks6c+F33R2DH4ITzXlvOJycmoPjfXDd6Lcpt1g==","signatures":[{"sig":"MEQCIAZP5i7dm+4iXVKKEV/D74dZZqa1dWg3NE/25569hq+bAiBYQH84x5c78gK4466I7RLFqXNsM+Vgs5mrpiQ8bnlWnw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2414116},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"ac4516fa2bea0045c55b26c1e2d51ea29a5a9e20","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.85.0","eslint":"^10.0.2","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.56.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.6.0_1772756213280_0.24504054772978034","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@j0hanz/fetch-url-mcp","version":"1.6.1","keywords":["mcp","mcp-server","web-fetching","content-extraction","readability","markdown","ai-tools","model-context-protocol","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.6.1","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"9724a6877dc2062b18b1c9d99b24f6ea10259f8d","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.6.1.tgz","fileCount":79,"integrity":"sha512-Y/Lxz4wJci9kHHMZigU/mVOngxq8fmbAUntcrGN/7H6ber3FzUcNWI1copqPycF0076T+dHKOtk1wO4KQgyueQ==","signatures":[{"sig":"MEQCICoKVTqZSbm892fAKA63AJ798EHwC61yaLpGao0P3aLqAiAPtBtuQhzLECUJxMdjntpVRo41UnD7rYcXIFaeSiwcjA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2421651},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"408aa206cce1904cfbd83b053199fdfa427748d0","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"Intelligent web content fetcher MCP server that converts HTML to clean, AI-readable Markdown","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.85.0","eslint":"^10.0.2","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.56.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.6.1_1772760337354_0.16919185001323278","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.7.0","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.7.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"696df635b0c8f92b2fc679d2bdf19435dec7838e","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.7.0.tgz","fileCount":117,"integrity":"sha512-k6ij2fluuqCeFdluxOYHFd5iIowWzvfMH6QfHnlsokeyB3OOG+3wM3wB2wrpj8ksn7AbjBQ3G/bZdNeORoem/w==","signatures":[{"sig":"MEUCIQCU54BGVQCuqv+7s6ybX274ZiqYssf4Qt2QACMx5du6CwIgeHyXlij5zv+1lRP9yoN+3Fh36tS9/eNib0JpcdsuvNg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2472861},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"863593028df84c330c55acb75f8ac8a69a4f330c","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.7.0_1773200174440_0.06434456017608081","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.8.0","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.8.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"ecec569595c4e45d87897e69299cd2e09a76583a","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.8.0.tgz","fileCount":111,"integrity":"sha512-Ig4vNXloBIb9TbE8lOpC65+xpcGwUgGREZX0NeVuiE8MhFZSEEzukPcnXuleN28VaPVhD2ijKgIOMOzDKE/ZWQ==","signatures":[{"sig":"MEUCIDiYDOGDZsnNWSz2HSv1OYSKGil/B/KC0CigFXKig9qyAiEA1vC822xeMqMz0t9AhlX1RNze42kAef9i7JJow5TQx88=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2474679},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c8f8043bb35cdd50c7e9e0615f47895fa783b30e","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.8.0_1773221416478_0.5862951609778078","host":"s3://npm-registry-packages-npm-production"}},"1.8.1":{"name":"@j0hanz/fetch-url-mcp","version":"1.8.1","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.8.1","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"68ce2c7c364dd6092e7feea73621157668a291a9","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.8.1.tgz","fileCount":111,"integrity":"sha512-JnS49tEQDIunTNQiC8G3uWa/YpbbkhWV8NYw58m5Ux4QVmRwnaR+iMSDbSr5lDN9EyaAtgsuKjiY4koU3MZJOQ==","signatures":[{"sig":"MEYCIQD4QjhDJBUhXGnev1GFow6RAAUjha33BXTw+AU4dt/C5gIhAMUF8KMgdxSmm1FUBMT7pAIivMax6HzsYTajVhMPxRce","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2474678},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"ae88a96ee3e26aba6152f136ce950e0dc3729881","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.8.1_1773233373945_0.9871939444852151","host":"s3://npm-registry-packages-npm-production"}},"1.8.2":{"name":"@j0hanz/fetch-url-mcp","version":"1.8.2","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.8.2","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"1c8df51e2ba56eb0ae88116c8451ab0dce8f36da","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.8.2.tgz","fileCount":111,"integrity":"sha512-MJlzJzNm6jFFC7w5pJSuWmEPMRrXx3NRp5+wcASDPHw5h/iA3wpfKCT+maSXX+TE3KGgV/gWTF4qRGDXFv+WRg==","signatures":[{"sig":"MEUCIQCaQKR9w77QSAqoQL1XOSTTz8v6HvaLatU3UGEi9a96QQIgIe1FyTHfVFAOT18dnbkjPvrywPwGaBdPXpWe3AEWjg4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.8.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2476323},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"13173807df59669af7b95f2f2f20aa242f0775b0","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.8.2_1773258735078_0.7709635693417907","host":"s3://npm-registry-packages-npm-production"}},"1.8.3":{"name":"@j0hanz/fetch-url-mcp","version":"1.8.3","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.8.3","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"49f1e3d9e812de428847d5c1a26176c130008e82","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.8.3.tgz","fileCount":111,"integrity":"sha512-H58yFt+q/Mkf5bdg1UhwrHI/26LIGYs+MfmAjaaCQUujAob1iqpsZUgXc4SMcK1Hbqng+De+fGC3yqhAk3G9ZA==","signatures":[{"sig":"MEUCIBAPJ5EjqvmEvaLM5Py781v4ZrFrGCsUZxHvnuORFpNaAiEAzb2BEg4VXxkwGgchxhj3mjmetCR1cbkp3nz5sFCQfCM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.8.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2476663},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"e51db040c91b501213a004a3f4dc790f163ccd3e","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.8.3_1773261912569_0.5942171610682065","host":"s3://npm-registry-packages-npm-production"}},"1.8.4":{"name":"@j0hanz/fetch-url-mcp","version":"1.8.4","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.8.4","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"7d772302d18e2e901f63813dd3234da1c32764c7","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.8.4.tgz","fileCount":111,"integrity":"sha512-Z44zLB/SJ+hLLkCkalIOaPiSZHpO5EOxg/rW9RUl/RUwkSxN53D2x/WUvHXCs3v2q0Vd+OJGKcZtqlJzVUEZFQ==","signatures":[{"sig":"MEYCIQDQXEWmkbhn69zrhfxthm8finjp90vv0gdCe/ssAuDWpAIhAMUQ6NMGst/UZxLqgAFltVVzG+qzOAu78RE7f4MbNPF3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.8.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2476703},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"1b7f2be13f9a1ced5f4fa6fdf3eb20dba8b3b511","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.8.4_1773263370650_0.9297271013608899","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.9.0","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.9.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"c6fa09ada6e12c38fc29e1470b7bf5ff5739f8c3","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.9.0.tgz","fileCount":111,"integrity":"sha512-no1JNW7BqVtI3z1qvF/L6QGq33chU49XQvnR10Q9jRJ+mBvYqUtdAe0Q9+L8KKxKsDLrOtKAesWsH/gYqOClIA==","signatures":[{"sig":"MEUCIHbnELz0CDoqzVdxHo5UEioeRUU/7z+LXdcAV2ao5M1YAiEAsZutu7tJaKyttgT2hVVHOZSTfg8cIo6+Z63R4Nvs6wo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2474135},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c7f816d89153463e80269ff785bb31bb58847a43","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.22.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.9.0_1773411060789_0.6752618849214482","host":"s3://npm-registry-packages-npm-production"}},"1.9.1":{"name":"@j0hanz/fetch-url-mcp","version":"1.9.1","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.9.1","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"5fb13433d27c07f6bdeaa9f530e7a2c9de3509ce","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.9.1.tgz","fileCount":111,"integrity":"sha512-Tt3SKz4hTpg9mYM5f91kJmcXKHd4GX58OonVKVFNH90Ig7y8S3FF8mAPxrr+8Pi7EuiB9kNESHb3EdFU6gCi+Q==","signatures":[{"sig":"MEQCIGpp/svwyd84n7ZPcAqBAh4Y4fLNOFj0J+HtBpboS4n+AiBv7AAC3oxIOfPALr++ENXtZ6GyY9bR9Ks57w8GiS6/8w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2480172},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"0ad291661e423df36102c8f2661ef686bf7a1cd3","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.1","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.9.1_1773440401107_0.8789525464743155","host":"s3://npm-registry-packages-npm-production"}},"1.9.2":{"name":"@j0hanz/fetch-url-mcp","version":"1.9.2","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.9.2","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"ed0e6c10ed9fe5d895d51754877a095135447b3c","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.9.2.tgz","fileCount":111,"integrity":"sha512-Y3wEAjLA8BQEHY09QXUT7vSJGtBalmlTWLRVoK7VWfbyy4UvUVY8NduOOJcEqD0+nSY6wdMPHtxj1BcW48keNg==","signatures":[{"sig":"MEUCIQDejg59Ff+U3L/cVH+TNT2DWSjI6Quoq3hDEmC1Ftcx6QIgLEbNUGxOcZdHp5MOp+1kFaFG2jFQOvmMaz5h880wBVs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2479285},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"cf0bd74d931f661a2e5c2065b5078e46ea14ec30","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.1","linkedom":"^0.18.12","ts-morph":"^27.0.2","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.9.2_1773457486970_0.07591440646184933","host":"s3://npm-registry-packages-npm-production"}},"1.9.3":{"name":"@j0hanz/fetch-url-mcp","version":"1.9.3","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.9.3","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"e6e141859e13586ba9f262af6e263b11168d7b3c","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.9.3.tgz","fileCount":111,"integrity":"sha512-00FfJ8pPV5lK8qDf55A3HJzmO8guhzNPIo+/lidiUNRFrVZEOQDfX8cmGN1xC4/il+1r4wXJ9SHFtAyQRn2GGw==","signatures":[{"sig":"MEUCIQDg/Xpm38PgchiJT3uM57cPqU7kVB0PUuFgFwk/xMaXgwIgFafTHEiKKBIOfaGb/6HqfNaleNnP4c3CMRHJduPrgNU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.9.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2495574},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"69dcda1c86ffe1df198e9beae2efae2c57726785","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.1","linkedom":"^0.18.12","ts-morph":"^27.0.2","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.9.3_1773465487266_0.7147917985726253","host":"s3://npm-registry-packages-npm-production"}},"1.9.4":{"name":"@j0hanz/fetch-url-mcp","version":"1.9.4","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.9.4","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"88d3c2bc4e07eff87a4538d780d63a5623867abd","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.9.4.tgz","fileCount":120,"integrity":"sha512-PsCNqhW5vA+WJCO2uOe8m5sq5xpPiB51MXILeBAuNOZ1vrqdgRDpiyxZ+3xobEXQRouj50k7sYkRN7YfJCsnAw==","signatures":[{"sig":"MEYCIQCiR6BgiQBAH910YM7lQVOnnT+HoNjAsPuPz01PRBMEHAIhAIyuU0KWQvgJPCI1d4LdJS7LnG3e10MhcMJqt6spzXbY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.9.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2498889},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"0dfc9c992683ae4444957cdd233a41e7d988098d","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.1","linkedom":"^0.18.12","ts-morph":"^27.0.2","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.9.4_1773481522061_0.4183777712715917","host":"s3://npm-registry-packages-npm-production"}},"1.9.5":{"name":"@j0hanz/fetch-url-mcp","version":"1.9.5","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.9.5","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"eea74a0be4cae0f907de864497c1f1b982370edf","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.9.5.tgz","fileCount":120,"integrity":"sha512-XeQ3Fvbh336xspc9Gnzd777MdaSbnKuJgNYwhqznYE5RDZBYbgLYs1797Ti1Wvkm3O41v5nTD1Fqg+Zm5a3epw==","signatures":[{"sig":"MEQCIC3H3Yjz1S0+9YQqeUGXHN/4p1fHeBq5edA0c+0kjKhhAiA27wxQp8yIlJXAsQuSLAlvurXi4oi5WPtdYa5vPatxyQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.9.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2511921},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"fd4710ce14d5aa2fe0630684c99161ec3e6c3122","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.3","linkedom":"^0.18.12","ts-morph":"^27.0.2","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.9.5_1773586565361_0.8921174928345945","host":"s3://npm-registry-packages-npm-production"}},"1.9.6":{"name":"@j0hanz/fetch-url-mcp","version":"1.9.6","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.9.6","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"778df6e7cbb562c2cf5fbf540607d752cba1e707","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.9.6.tgz","fileCount":120,"integrity":"sha512-+1ffrUneWvxskwbf6mPzXWGWPC/AL8WaxhmvjD/j/M3gpFUb0WviArZRYRS41xvW3EC8RBkWPRsof+Qjqa1uGw==","signatures":[{"sig":"MEUCIQC5QQS3/cmjmUBzEQRn2UF0+dWQla38OHBwepLunflDkQIgHhYJEz1ZfCvamn0RovnA8pbbGOOTk41a1dr8vT4vRY4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.9.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2513190},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"e02af22f4bb4566bcce9fa3ae92a59b2225feb83","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.3","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.9.6_1773594679203_0.6705309014979135","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.0","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"10e4734c22b2c5f36a38fe0c778ed2b09e091ea7","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.0.tgz","fileCount":120,"integrity":"sha512-kL9JlI0k99GOb07iZvkeUWAied9u0QuC9D1WWYQ6+pCTBE+TD+l3cvhFid7EBU1Yx0wN7DB/0WYOtsILzg6v6w==","signatures":[{"sig":"MEUCICpG697KLjoiCHDqLzbx/JREHZjMKRjXEI27AgU87ECdAiEAhBtHZVD5WOAKgF6iYrnTM2Lmy1XM8gMobiN4UwUFyEU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2513191},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"1701a02f436278eeb2257589428f4f44c9a392de","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.3","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.0_1773659227305_0.5629568326617327","host":"s3://npm-registry-packages-npm-production"}},"1.10.1":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.1","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.1","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"2e37577253b6cf7941d2d54745dea40fe4582870","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.1.tgz","fileCount":120,"integrity":"sha512-HPNwGKmWV9qWl5mcBDPEThHP1Cl/HgPj3nyWKSqWY96F4AGM6CVpHvP3vvpJMzLCqkcRvUSXyA78bhxFEwj+Qg==","signatures":[{"sig":"MEQCIG4rK/hCw1v3/Ieq44T7vd5RfdKe+jZsZlF5q7VjhiCCAiAhiADnexhaZnGSBs672g8o1nB6BdCy4uEXU0xAcRRSqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2513623},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"81728f8b28cebfd5851eef8e678a5305da305399","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.3","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.86.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.0","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.1_1773783573246_0.7189833291965548","host":"s3://npm-registry-packages-npm-production"}},"1.10.2":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.2","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.2","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"a4ccd8bb87fbb9347ec1a8a61b1486ed625d907a","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.2.tgz","fileCount":120,"integrity":"sha512-z5Eb9jS24tKmg7a+Jv6G0FWmYJTaUEgCqyKi3EIuWYwnjJBdwqUdLK0br/5T+rK58iYUE/1kaq5Ct3MSciGunw==","signatures":[{"sig":"MEUCIGUJYeefA6LhRxAAcB63c9e6EXNKVMJPMfxIU13h0HM+AiEAtAZAOfvu62o81Db4GjIyF6fM39zsO4ZOZoUJ06WxSig=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2513623},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"74aae85fc27c8575640cdc6855bba3ec7fda14b4","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.4","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^5.88.0","eslint":"^10.0.3","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.2_1773866176342_0.9233072108360616","host":"s3://npm-registry-packages-npm-production"}},"1.10.3":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.3","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.3","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"04a26e443628fffeb88e39f1788e827a47a52f96","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.3.tgz","fileCount":138,"integrity":"sha512-ObNPVGdsm3OHND9D0kVErOw1mp3SH0FYcGxECMmIPqaJmTiZuBbCNe1ddSY0o10/m9x2rvAcQ/VgbDjnIbZvWA==","signatures":[{"sig":"MEQCIB3FgH0rW7sw7S3o9bHoV08W+/o2q+buQ0gRUCTLztWxAiAHaPEL3un/6vYxigDP8oXXAs4gVTO5OuXZnqa5JBjWUg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2526258},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"7eedaf89ad0cb015f4bc9160b0adcc25fd86d2f6","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.3_1774039778992_0.9480481513255887","host":"s3://npm-registry-packages-npm-production"}},"1.10.4":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.4","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.4","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"bea3fa23e34f47071065c31fb12b25786e308bfb","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.4.tgz","fileCount":141,"integrity":"sha512-l8rlbPN3OQlu/6hr2hOJKMOUoQY0EuaPCxH5R+VsQGv1Vc9QnGu116qYDsCpOn/NVQNeY5w+jBaVRe8VONbzuQ==","signatures":[{"sig":"MEQCIHAGJbTXqi9gAT94s3MOWC2pCJwDl7+fJ2YfineacjqCAiAcBTxMbxxba1I6zWOfKT8sqgikWc6WWCys1fdAiSbdfg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2531307},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"b96d432db28f5a3ea562ebcfef90b312da4ae4ed","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.4_1774056736252_0.16298434657809602","host":"s3://npm-registry-packages-npm-production"}},"1.10.5":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.5","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.5","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"26f50710cf3ba7cdefe51f2b8f6c5e4035890b77","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.5.tgz","fileCount":144,"integrity":"sha512-t1pSZbRcreAmnXgmKAoRr2Qm38FMIoDEczKkIM2hF8CMHyEGc2q4kbABhxw1kyS13ZdlDXrUADIuA23x3F3tAQ==","signatures":[{"sig":"MEUCIQDqMoObGxvrxwEqwkSvbLOAUIrQt+e0+UMl0v5jlPQJuwIgEiBlKx4g/z1yYjeWWTszSEUEo5qZHEsDFsNn0QHCpAc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2541791},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"38fcd25761d96dfcf1a671173390f700e1afdb7b","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.5_1774067519111_0.348974798059259","host":"s3://npm-registry-packages-npm-production"}},"1.10.6":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.6","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.6","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"faf26a4a7856e41d478072060c2aa8b066b5ed30","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.6.tgz","fileCount":144,"integrity":"sha512-eI9HZIu64TG+GE1UE1XhQes8XpLnNCdzwQQQT5c/id+dpXaPgmUJt0WqHapbxUcVoKibUGgUpiQ16VgahyL1Aw==","signatures":[{"sig":"MEUCIQC9v0Xa43hFfCdaqtXDIf4utdm3jYYXYC6NCIiz4AuuuwIge8Zp4WD43CgTc+pbPBJP4BYqnm4cWVd0GVPJJl5vkqE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2545003},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"0724ad70e32899e4fdb87bfe1381fb8716d69d7c","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.6_1774075841340_0.051179019097553624","host":"s3://npm-registry-packages-npm-production"}},"1.10.7":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.7","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.7","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"7fa30076c25649ca58abdecc0f81910669292a5e","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.7.tgz","fileCount":144,"integrity":"sha512-JgQLTcziVy0Asr7v0uUOo8hYONV3SUuoVWTW/IP04ZYbp5DDg98Iqqo7a7lpQu5cOhICsnmws6/2nn1bpY2O7Q==","signatures":[{"sig":"MEUCIQDSgZRy4fECj5SlvmXILHG/e9XKuBJlU0k1S8uf7ZDFVAIgHV4Oa6zsnu9foZ5sgPw9FQWhVSO0LMGTdahUy0OZC0o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2544823},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"f9094bc7612bcb1a85ba6282d36c736f6d855c05","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.7_1774079744260_0.9325616143222593","host":"s3://npm-registry-packages-npm-production"}},"1.10.8":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.8","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.8","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"9df6895bb55772e22ba0b4b8d56e1370aeda0f38","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.8.tgz","fileCount":144,"integrity":"sha512-iH93AalcpxF5t5ktkIsThofvq6fEAjOcYI0mjRAnZu68aqU7KGYfFbznnJyVFYnP6usE7iAKIbBvcDRDHfU+WQ==","signatures":[{"sig":"MEUCIFYkLcSO/UVErT6TC02g9b1gfUYGYjyeRHlj1vsMnAUrAiEA9VFsRLVja189uBHHmXAGCrLLoWH/wbxKYlEw/CmD91s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2545996},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"87f149f12bbbc65425a526cf7d60345d98415549","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.8_1774093413213_0.030122456407480236","host":"s3://npm-registry-packages-npm-production"}},"1.10.9":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.9","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.9","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"ec5220a4ed27faa020f1795a59a5cf56df97d994","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.9.tgz","fileCount":144,"integrity":"sha512-I/wYnp9EQL9DDnBTZp4T5ig3HX65pfoil6IYvUQwmJ6ZwP3pExp6wCv3ecUCMdT9c6buISyiLm1tp/H38HnbMA==","signatures":[{"sig":"MEYCIQDwe+QWSYG/ffYr63+h1QqRwazdcAlSAV/kXylUew9wYwIhAOS5ByCom0RnTehkArtasV3MpEreGjdzR9Qk+M1NdUq/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2546525},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c2e08d22430f84d6dffd4b77167de446d2e0bf0e","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.9_1774107318297_0.5018761858329832","host":"s3://npm-registry-packages-npm-production"}},"1.10.10":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.10","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.10","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"8f741d0a11c4e39c6d702c446fd711c26d4a441b","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.10.tgz","fileCount":144,"integrity":"sha512-DF32D3h2wXLLHqK4JQcs/TBMESqxJQ01nOFy+8Ucd1pK1PsNrlSV+WwYiv5BaiQ/1q+GTRxtN0p2mEsZ5gEdzg==","signatures":[{"sig":"MEYCIQCZ2kxlsmqnm76tpA7UQFtOFYNNABoYFRkUlP/pAqSPAQIhAO0okoJONw6ib0VGEWxNg7/5np+AQZfO53Jr8F5jlL9Y","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2535581},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"6b727ba24b1d38c9ff05f527b16e59e1ccfb5497","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.10_1774120439796_0.9947873595759065","host":"s3://npm-registry-packages-npm-production"}},"1.10.11":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.11","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.11","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"3c043f8b43ac2de3d61cba63a620d33c88cccaee","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.11.tgz","fileCount":144,"integrity":"sha512-KzWsizeBqot5WaMFPkHo4I2pHODptvN8jRvIClkKqEoY5bm85+u6rgiIBHurvpZK5X1wAhAPrpo8mBmAwqyDxA==","signatures":[{"sig":"MEQCIHRIO4IrWf1x9+MLjHQT5C0l4w6sVKorxpqE4gfTtPqrAiAtirxtKbXlTBowBgZeuVnI2WTgepQaRxEbS6st70pAVg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2535040},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"3a5a118c12af70ed7395646210c9d10645e0cb66","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.11_1774196487836_0.229064095651341","host":"s3://npm-registry-packages-npm-production"}},"1.10.12":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.12","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.12","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"7c2d2aa7610bc333f575ec94901a51f47cd7e038","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.12.tgz","fileCount":144,"integrity":"sha512-mGWRr++Oo8WToCiJHvdj15RvoJHdG44yJob+2xkOyFyo15GZ3N9hCI5Mstz8H7BDw3xcQaatt9V8dA4rjZCFUA==","signatures":[{"sig":"MEQCIDaHXNrYFnucyrty711+sYaUXbmvOenZepyJTL14LwDXAiBjopP+thWvTcWJfoPlNgcmyr0Cf+5VnrUDvFxGxJi/ng==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2534164},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"eba902519fad48045462f47686c294cba0d21af9","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.12_1774207339661_0.1715367735226394","host":"s3://npm-registry-packages-npm-production"}},"1.10.13":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.13","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.13","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"eb9bcd8301450de4397e710dcfae6948cc000429","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.13.tgz","fileCount":144,"integrity":"sha512-eILdT5AgHNxutETQh4MhSR2eiMO4mJMAZUmmMzDcxNXGg/XLQTHNiynJcTcxXb2xxjanr1ypFuB/hpvzXfeeUw==","signatures":[{"sig":"MEYCIQCNh6mjvgScNEjJjluk31YBrZSjYjuQV0vXvzLPe6hj3wIhAO9mrAIW25iu71B5Q6AKhUh8e1IKfNl5F/NoM6biPXHh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2534970},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"a3cca581b2e1b6a01b95147bf0c5b732c9a36109","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.13_1774214208453_0.9343044725821144","host":"s3://npm-registry-packages-npm-production"}},"1.10.14":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.14","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.14","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"bdf3b20aea9d101f7e3ddc1cd4ad456e4cca897e","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.14.tgz","fileCount":144,"integrity":"sha512-vwdenQU82NYM/3NPNza8UP+dtILI7NqluEG/b27BWOIWprz5c90lqMWAT0RVb3rh7/xW6gQP4SpF+MBoIytBRw==","signatures":[{"sig":"MEQCIGcesmvqjz23fzeuLao9uJrYK2WslvbjpM6TQf68FfA9AiA/z50ypzXAB4UyjALUpOOMCCi/fbzVMCRfqUSgam0z+g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2535607},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"220b71002af08a0d7d6715f96aa074c0b0d35e25","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.14_1774215675340_0.7475457419325007","host":"s3://npm-registry-packages-npm-production"}},"1.10.15":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.15","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.15","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"98eb17315a3850f5f8c6c3e4b12f4601fc5eb056","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.15.tgz","fileCount":144,"integrity":"sha512-65X4G+815/giZabQWftxCwidrBitRCRKT44E1tm4sKLPlY1/4txg90gFVy78t9yxbpZLOeV05A7wRQ17WJ1u9g==","signatures":[{"sig":"MEUCIQCWeSg/9PhWDB4jG48riM9ppZhHv2MxlMD0nX5OwLysdAIgbLf/2/MpVrDo2K9qXLHswgnHKg0JBAN4EbhhpY9JG3c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2538910},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"fa2b87fdf5096756d2a8eec2e5a195cccf7e194c","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.15_1774216917926_0.5042749709105927","host":"s3://npm-registry-packages-npm-production"}},"1.10.16":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.16","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.16","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"e67234a861f52822a4360416c6369ac0fdae1899","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.16.tgz","fileCount":144,"integrity":"sha512-ANo1Bicgo2h9ShnFhxHVkdQpwY0PX0FbMDRIyeohIK7TV2T9RakelN4O/9j7iodAQ9wjzL6oeq0gpuLfUSBwtQ==","signatures":[{"sig":"MEUCIQCYA6wTboU8IOgJSIiZKHSuAf1cj9XWBjChznIN5YPOBwIgbnpYcX2T88iN2Kmkq9/uIs0GAfDhkmnvKjj8pyfooA0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2540933},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"0a4c64ef57b98d4e872eeb15fb715284165839b1","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.16_1774251051123_0.5133396905999656","host":"s3://npm-registry-packages-npm-production"}},"1.10.17":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.17","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.17","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"2a385a0ff8aada6bd6a591621fc514f9b5ae4d89","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.17.tgz","fileCount":144,"integrity":"sha512-aUf1M6X6wB1aV3fCLg8kNcOw/AV+v0/Dku/UNVY99mjDb7DZYlXIYU758ts6YXW6mwk/cvNizHcRTjcVpgxo1A==","signatures":[{"sig":"MEUCIE00xV+hWt+e92oT1sePkyAU7qkBU/uFnAIoBdnXFondAiEA/GoqWHN10QnQ3JI2LmVCR4/8oNHNALxOP4FFSiNn1vQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.17","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2547548},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"a11a85b5adc0bd6d11f6f4dc9e05f6223e10f049","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.17_1774262797892_0.7111681773678811","host":"s3://npm-registry-packages-npm-production"}},"1.10.18":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.18","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.18","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"0194a7f2d60e7ee2e653af16bf785f0cfa563538","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.18.tgz","fileCount":114,"integrity":"sha512-XFTUsiNiEg7DlW7J20107AJu67yvrWYZI9Rnu1X+DYr9lL5xXJM5DSR4/6AkpZNFDGLJTaDMjqvyRRLRMMIAFw==","signatures":[{"sig":"MEQCIByuS70kKt4X2HoHAOHCwtBuz8WHSEBIgonTPYY6aYawAiBrFfbargZjMCPjJY36vmZIFWkCcDH8NUc5ggEfJMw6wQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.18","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2545339},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"9efcd693d8e29963e072318cbce13ed72ffb428b","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.18_1774266527520_0.5867210148350179","host":"s3://npm-registry-packages-npm-production"}},"1.10.19":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.19","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.19","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"b1243b0d1a9c3de562924a94202fcdbc99af04f6","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.19.tgz","fileCount":114,"integrity":"sha512-p7yVdWB6n1BJjbeU2RU039jDE6rcv9YbHCPZTmCiwzQGObY6+jy4JIEePFC64DMkW8PIwUDmcB8iHp7wooeV/g==","signatures":[{"sig":"MEQCIBaf/zTiC+eb2EtfereHut0xfJP3ewo+haYCNA8ulJ+BAiBKkiHpMCRuDes235AyUJK6de4UjfdOc35HP86kX7vzmA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.19","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2548251},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"d86efe76d6b4467b894cce31b84206bcedd5b193","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.19_1774270088730_0.6610987148578749","host":"s3://npm-registry-packages-npm-production"}},"1.10.20":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.20","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.20","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"d9cd09bbd0760d98ff8459f537ec67dfdc44dccf","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.20.tgz","fileCount":114,"integrity":"sha512-1+XkCfHDN8SIpFcHz020ERzMcxvPLd1cFLbU50pE7X8M9hNlkACxEDKTFboVIQPFmOCklauOTkpMCJExg2eJcA==","signatures":[{"sig":"MEYCIQDQZd8bF7Xak0vKZuvUa9aputD8GV9lNkY2E8ESkK2ZVgIhAM3fpQf1OPa+mc3ehzaG1JbX0CJgx65XVT21LJ3/6y4A","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.20","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2548749},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c7e755970f486d62c05372bbdf483c1bf8219c58","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.20_1774271702274_0.7228925324756055","host":"s3://npm-registry-packages-npm-production"}},"1.10.21":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.21","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.21","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"17845d339e6b9e153ec4050dd8f4579558ac3a78","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.21.tgz","fileCount":114,"integrity":"sha512-m9U5aM1o/nZwsXRTDHzMxWFIQAIUG9yqugnaaJdOPjipvvM+5lktHzEKbzDT35SBS6x4+ogPxAqOXo7nxrUyKg==","signatures":[{"sig":"MEQCIDLHIHXk6KZHQOV+G6foZ/z/KrH8pZ+Lw5XXO271a/nDAiBrJOwkxeMvMUmE8PyiR1ufXyfNzkPEXkn3NyTibFzYBQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.21","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2548489},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"f5d23667ed06e92782f945ccbac2cd9d0f8f2bc2","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.21_1774272084745_0.050258481314592096","host":"s3://npm-registry-packages-npm-production"}},"1.10.22":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.22","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.22","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"824ff17d8a2096084bd32f3345912e3fbd43eabf","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.22.tgz","fileCount":114,"integrity":"sha512-gsfYbd1hHADgpU26L3Pcs7Lde4XcqSk4fflguv8gQo6wjsCDcFavUW0b1LirQqdzaqbVejWcgg+i10g75dIE1Q==","signatures":[{"sig":"MEYCIQDbyefze9+3cQCdAKczSPfwvbNOBbgwaPH6qbruhnai5QIhAJ30AK1C586sVNl35HyBXtKpP8L9yQak8+FDLc0swI8r","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.22","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2559589},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"964b531a7a8baa48077f6dbf7d14a6488d97875a","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.22_1774305053395_0.07905294438508759","host":"s3://npm-registry-packages-npm-production"}},"1.10.23":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.23","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.23","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"95d33d5535ecb4130552718be10b2ed265d9c714","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.23.tgz","fileCount":114,"integrity":"sha512-x3JngPLsqfMi0UufXAQVSNukn3AssijhjtRqPgOGsgc3uH5S5oOa94T29cngnOZBVHVqgSXrvFu0U1w1JHgESg==","signatures":[{"sig":"MEUCIQDRLKT2eDsrMAr5zJvNVSaLlj3ib+sDpryhpaHfCI9VzgIgYQruZA9f7Vofzjckmli5DqUKhNUvsPmoRy0IhcJU4hU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.23","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2559449},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"e0e6729a5a6238e05e18566e9fbb655acb340fb2","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.1","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.1","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.23_1774308567336_0.9924310495979634","host":"s3://npm-registry-packages-npm-production"}},"1.10.24":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.24","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.24","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"a0f097e4a6b5c168360f8c2a85ace905f05aaebd","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.24.tgz","fileCount":117,"integrity":"sha512-7WeyFbibU4mGqdQzYJKPtgkSZQB0+RlRApgwZq+DaIAOJ58v6CgqXhA23txE8F9/6YwoLZef32yI/09/7lntOA==","signatures":[{"sig":"MEUCIQCyano2LS09sq6oppjOyKqX+mFy6ewz3fPu9Mf8PT4hKAIgXtksdwlGh4119rkJ1aABkpF2RH3Jy2RQrgrOklHfocc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.24","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2560956},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"3ac131757e764bf9263cc9e6f45daa9c3934a700","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.4","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.24_1774317380957_0.5141982016969546","host":"s3://npm-registry-packages-npm-production"}},"1.10.25":{"name":"@j0hanz/fetch-url-mcp","version":"1.10.25","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.10.25","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"c987236b5cdf191b3987a077fc79ce73ea359728","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.10.25.tgz","fileCount":117,"integrity":"sha512-gbEcVyyI0i4A+8YvA6E8bBXOKEhc3PoYCoRsidUbNlLWUgOCMHU/1jWSwura0WVbY7Ft8Q1et9rgGSEKTsXz9Q==","signatures":[{"sig":"MEUCIDWJOtN4HXJZq2SPetFgcpKaiilrdh2QYVUNVO6xgG0PAiEA1d7hR9tFf8Th2A8cGUh6va8xIBqQnrIdBv/tzZKVDLs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.10.25","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2563530},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"933f6d5301bbbe3c978842b6f66229cfa1aa55f4","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","test:fast":"node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts","lint:tests":"eslint src/__tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.4","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.10.25_1774337344979_0.4609448387722239","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.11.0","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.11.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"c1c9413aab3bb5ab2567477e7f8cf46de4b4ed13","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.11.0.tgz","fileCount":117,"integrity":"sha512-DaWTfdYXsN3nClxyIydLlaOTa3tcVMpLK3n448d7xGB24rKDvWb7azXZLi+n9lORBbFNynoO3G8hNvFrcELV3A==","signatures":[{"sig":"MEUCIQCO61KRQ2IGCRl/hGVMaxdK8gvIvDdQ9vmbyTaLP3Yu5QIgBboksz63UoODu3FXSJNR5ITlgOfCZudSzAE0jG0sIM4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2563515},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"3fd2fd3b9bf22b628ef4f25f86b82695c013f4a2","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.4","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.11.0_1774346472905_0.11424479268474519","host":"s3://npm-registry-packages-npm-production"}},"1.11.1":{"name":"@j0hanz/fetch-url-mcp","version":"1.11.1","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.11.1","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"3f561f3b8b43e4bb7a3c220a38b6ca4bdba60501","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.11.1.tgz","fileCount":117,"integrity":"sha512-ce4mPdsFCS4+Y02AhKJNHQW0vetw5746XgfVrUURhEmrCbVtaIRwcYYAr/jjnxzvFFcoxtyu/Gdyxo+CY5raQQ==","signatures":[{"sig":"MEQCIGOEXOQY51sMzMCiu6/+h0Jk++6oxheTguO9Zv1l2AN1AiBb++FH6xPxnzC1cSa8LZgJfwmrC1vofbwZwm1B4xutUg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":655428},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"8786e6f0ee63aed32428bfcc9bece6d2d7a7bb5a","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.5","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.27.1"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.0.4","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.11.1_1774353520390_0.9957749810618008","host":"s3://npm-registry-packages-npm-production"}},"1.11.2":{"name":"@j0hanz/fetch-url-mcp","version":"1.11.2","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.11.2","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"0e67329eaaa181f49c3eb4c178bd7b9388ce319f","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.11.2.tgz","fileCount":117,"integrity":"sha512-C4IuYu1XfIrN6Jbi9nAOqWt3DzrND3taqyPW8NlHNYAiq6Lw0t9MEYrf7uHq+eM8bq/Kzz7Ai+dRBgvCkhKm7w==","signatures":[{"sig":"MEUCICOXia+0wpci053kqVr1TxJ1+OMHxSOpQ/mQ0useWqEkAiEAzzgjaunEyHk9mZ9reGj5oxizb+81MuAZMRh6HaRQpzw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.11.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":656159},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"62f0e9cf8a9b9f4851803d19122c4e70568a11c7","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.11.2_1774538509625_0.8303908197514718","host":"s3://npm-registry-packages-npm-production"}},"1.11.3":{"name":"@j0hanz/fetch-url-mcp","version":"1.11.3","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.11.3","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"8d6a4a620c954acf217501334224ffff2bcec427","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.11.3.tgz","fileCount":117,"integrity":"sha512-bZhl0A+EOt7aZs85Ah+sZeCN1KhAHihETxYVli8DAK5TdxxZ+M6I8xD9dLWry4tJSXTAC0iJMolA4UQyvXWiiQ==","signatures":[{"sig":"MEUCIA5ND4xgEm9X3PoMuRO13A7IVUQVmYs6gpuRNk/rzpX1AiEA7U1qEauFc23BYxWU3PJtptWd55CoUfQL5et/dAmty4Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.11.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":656128},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"fc2bd8f162f37068172259794951fa7f9823d3bd","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.11.3_1774541038203_0.26330945781537274","host":"s3://npm-registry-packages-npm-production"}},"1.11.4":{"name":"@j0hanz/fetch-url-mcp","version":"1.11.4","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.11.4","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"10efc807efeba67864195c45e79d0b9fa68c151d","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.11.4.tgz","fileCount":114,"integrity":"sha512-8byC2s1+7zmlVH6UKXBw0lYTcM0kxGqQ9W1fD88k2PhFm1J8cgt/tyReYvcOZv0OH/cxwyMPZEoPmzp7dJMs+g==","signatures":[{"sig":"MEYCIQCA6AHNzu/yvnRbCzCHjCs8UE8srHdIPsDdxILA9iKH0QIhAOIMok6BZ0Mdigl8yFq8opPVuOfRgsmblv8wVdh2sxVw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.11.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":666211},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"5e843e01016a653eb62c689c52f5ce830dcdafe1","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.11.4_1774553288743_0.316995466723879","host":"s3://npm-registry-packages-npm-production"}},"1.11.5":{"name":"@j0hanz/fetch-url-mcp","version":"1.11.5","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.11.5","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"c32db4063be6443a3dbd4b62129e517e19ffc519","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.11.5.tgz","fileCount":114,"integrity":"sha512-2e+xB9j/DOv1CKhXkr2X7peDLxVulE6oLmC/tC8oHFiX5YhlMw2V+pXITe9dX42Juk3j2EnBNcd61dRYdodQ7A==","signatures":[{"sig":"MEYCIQCTR3OY0d5ua2EzkcjlQOaNUDl3Hf1WkcDiyFgytBl2+gIhAIySdEh1aiF0EKVbGtOQL+1+uCyeeuiaheDrOhxWJ6n6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.11.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":665399},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"5bf210a0514d715af4f78230ef7a4542f28eda8d","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.11.5_1774560954090_0.08184956821741363","host":"s3://npm-registry-packages-npm-production"}},"1.11.6":{"name":"@j0hanz/fetch-url-mcp","version":"1.11.6","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.11.6","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"3ddc08fe8c3e0dceef771068f31ca4b38d9ebea3","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.11.6.tgz","fileCount":114,"integrity":"sha512-jvdUFsFffVtgYacp1AZ743agg1XJWEnySgw+uAxnBgaPQqH1gSaV2GxqUwX2awj54VwcAvmZNgtfXZfWcF8p2g==","signatures":[{"sig":"MEQCIFpgr6A2kb29r6cudwMbrCIKnVh9iaXLc3nCCVTdPDHmAiBsXDwmKK9/3rCrvu8Vmtf9E5LbOxxiU/OZS2m4nrkuyw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.11.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":661244},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"f0e96887b83066218de7cbe12051e895f958d2f6","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.11.6_1774573126035_0.4964903289562317","host":"s3://npm-registry-packages-npm-production"}},"1.11.7":{"name":"@j0hanz/fetch-url-mcp","version":"1.11.7","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.11.7","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"ed204f8d184575f897fc2dcd79a5cd0401dadb3f","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.11.7.tgz","fileCount":114,"integrity":"sha512-XQLMVylefwyaRGOvWc4dGgTajsMh5AioxBXBjN7zm3nSByL3FiQao7u4wwHaAH7CMcqTPWUYUiqAxAoDifiMiw==","signatures":[{"sig":"MEUCIQCAV/1bqccxRukxLRHytrRv+DqlW7TJsj0AK9+bwmhfcAIgI0QNka+tHo7FjcgqgOa2w4grxdWwr9wCGKERk2zXBLk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.11.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":661067},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"478f3fc8a14ffcaf703008d6e0c99cfc4c02ba08","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.11.7_1774577999691_0.5453464909332817","host":"s3://npm-registry-packages-npm-production"}},"1.11.8":{"name":"@j0hanz/fetch-url-mcp","version":"1.11.8","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.11.8","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"f9c891614325239da5a94acd3589c060473e385e","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.11.8.tgz","fileCount":111,"integrity":"sha512-GlwoCTgRN2XXZBuyp9pd28PCutPiA/1h5O9rObaGwthAc0tbdykH2xBXX6Tdo5KkhBKG2Nx8+AOlLijCCaWr4Q==","signatures":[{"sig":"MEYCIQCsM+LM6m2Go+wiyllpiRrVbuREXuHxe4Z2VO8n5s/0KgIhAMKAnRHX5QHa7OBwghfCG1Nk1YTZ9oF/pTRMMEcId+Em","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.11.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":613771},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"d0dca89771c3a48b0296975b905f442c04aea901","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"A web content fetcher MCP server that converts HTML to clean, AI and human readable markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^5.9.3","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.11.8_1774599536596_0.001572007866874836","host":"s3://npm-registry-packages-npm-production"}},"1.12.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.0","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"c717fe5941f500a3e8d50131662f322cc36d3ba7","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.0.tgz","fileCount":112,"integrity":"sha512-hVJbHHJ193IRwv8JXspSyT0uRG83ntoelZ+wg1pii+tASD7O3IzgI3550baQGpiDvyyHe97iiRQ5DhMo/d+tYA==","signatures":[{"sig":"MEQCIC2kE1oYRdZP0VDrzmKg5xWVrHJZU+euDkvVJe5bPw9KAiBRcVNQ1VrKaLLVEvw2o3bvmht98/4hTdGi4voi76L2Pw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":617051},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"d2903a536621546f9c56b6b7dd16daa3ccf47c20","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.0_1774606160274_0.042714459740114785","host":"s3://npm-registry-packages-npm-production"}},"1.12.1":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.1","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.1","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"2a525c7c3ae50153ce99bc1bea011b0efae85d15","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.1.tgz","fileCount":112,"integrity":"sha512-cnVfsQuyBJmoKrrZT2KBnSBxHrZr+AYmtI+vjI7aOxFwmsG0cv5anMbzRM+Ovz8BXRwJ3IGSS1m3GtTslAqMew==","signatures":[{"sig":"MEUCICSJGmdQLSjP3CVdwRoXqMY4E4zdqnhBXgNFQ5wxexYwAiEAys14XVz/sufXuMgN2p9Gua15ltEcnVzUlJNXup/8eeY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":653702},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"4f7ff0b7110801d3db532efaa93073b561825a84","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.1_1774639884594_0.41366129874649515","host":"s3://npm-registry-packages-npm-production"}},"1.12.2":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.2","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.2","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"f0cc5f97403e5e12de45d46ee963ab5b910d28d9","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.2.tgz","fileCount":112,"integrity":"sha512-KCHHATgrWD3wBufKdkJ7l+MBRWS4yzbxq7yGsdqO1gvUSO1h13ZRu/EVcTOIERIQ+1y/ugQu915m543MOAkMYg==","signatures":[{"sig":"MEYCIQDAuCqRVMUwlFDBHnnckZR1/xuLeft99FLf02aA2RsLFQIhAKiuUdkamRKo4Oj9K3G6rSrA+gjHMzEbQHjJm3FaZ3Nx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":655565},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"95f7aa7e9be46b4cf34cd53aed8dee42db9a9ef8","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.2_1774644109987_0.8770430401706324","host":"s3://npm-registry-packages-npm-production"}},"1.12.3":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.3","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.3","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"1bdfd0ee69653f20ae68213be7bad72cfc15877b","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.3.tgz","fileCount":112,"integrity":"sha512-9JFiMJqZWwkfEcPJ0iNc962y7DrrnI/WieQ3rLi4wQ5JQ2pY6fi2zx9t4ObBHL9bbYtY2ixj39h32PKFlIAQ+A==","signatures":[{"sig":"MEQCIDwbNHJNYlYT4Vzk6t0cUghj1HHs+zacq3gAB0wUo59nAiBiUo6ZtokltKCZxIp3oiVcc8+rRDEYYOudf/S4ZbvVjw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":656147},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"9e86c0930da768f352b9ddbc25bd874320a46b95","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.3_1774645975204_0.72065268477287","host":"s3://npm-registry-packages-npm-production"}},"1.12.4":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.4","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.4","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"977f8d2eebe060b42e4934a67a7324af5098a6fe","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.4.tgz","fileCount":112,"integrity":"sha512-16XVXCjxdHu6mKjkA5CCE8gVMMDj5XuZt4OXD+Av8AQGvzl4jRlyg6o/HZAHLBGhM1ALJUjJvODop7KoO26Q+A==","signatures":[{"sig":"MEUCIESVyOLjw3sdYIXuDSw+pa/O16rUqTq0LnyH+KwOlswZAiEA7pNg1bFipHMDMkztGh171CwJ281TPvoYatJl8gyH7kE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":656032},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"7e360a806d4eb9e47201a34bac5b5d1a402e9207","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.4_1774647530703_0.022269718935500338","host":"s3://npm-registry-packages-npm-production"}},"1.12.5":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.5","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.5","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"fa9c0668e260b2491167582c5a5d70c293ad39c6","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.5.tgz","fileCount":124,"integrity":"sha512-k/pCabKk41SM9AdK3zA73pNtIJlisHsJL2c6xzaqTz9GLYr3WLBDzg99NTQ0DIqm2D3PMKTYhI2pd3btJxQFFw==","signatures":[{"sig":"MEUCIBFG7g5/wRNfNc2m0zR/xEpKYsUdowiLZ5zOMuVXrD/5AiEAnNdBSJCdW8VsAscK6NuPU843GSqWS4L+lE42FIanFeM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":673679},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"2b47baec63185c919dbe7405b0e8b80f838ba608","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.5_1774654817838_0.039547994022734345","host":"s3://npm-registry-packages-npm-production"}},"1.12.6":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.6","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.6","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"5ae6f0dc6a488e195b4b116566b3bfa6a85d3868","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.6.tgz","fileCount":124,"integrity":"sha512-NVkMeKTT0bvBhBfAb8WIwlpXmVL+EKA5hVBchT2rxxbZpCspolzdCnPFQmUF5rd0/aWkdCpD7uX8Sz6k5FLGUg==","signatures":[{"sig":"MEUCIAYvlmMDJvfdxYiuU3IOfcAgDXEILDqlz+E+ChXwJs7YAiEAw68ffH9D3nAYL5YSuoM45w9OSe4/ZfUADaiFT/FZ0Ys=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":673694},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"c3e60f37aa406ee55b40c85803f8ee7b65e18ce5","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.6_1774657346988_0.1931409960710906","host":"s3://npm-registry-packages-npm-production"}},"1.12.7":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.7","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.7","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"5a5efd7fe5bd4f0864ce6b044bbbacf2a08a1879","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.7.tgz","fileCount":124,"integrity":"sha512-wjWV/nVZBO7q/CcEdTIV2yIn4ACsfF97ic0C5vSn5YxSPy0zmKf8k+I7bnF2F9Lx/RhX61Xo9hFosK6c6IPVvQ==","signatures":[{"sig":"MEUCIGfkoylx3IGhsC+RW3bYx5bSm3Zu4OZM3s9+yHxhIj0hAiEAmxNxd7wUYn0oc4hQ8kffBKLVJLLa8VQ9p3h265dQGqI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":673643},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"d7fca13af04327def68706b94d54545928040b09","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.7_1774730130624_0.18140021437584686","host":"s3://npm-registry-packages-npm-production"}},"1.12.8":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.8","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.8","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"ceda3d03d2d77dbc4dd05bdfa33e23f64cc33ef2","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.8.tgz","fileCount":82,"integrity":"sha512-aSosif6h4aj6xpq/nyx00Vn0i1k9hjoGxlHKI8uvzeQQYoIq33SgR7A6n4RoUPfYcvEUErXjdmDFxrdMKplw2Q==","signatures":[{"sig":"MEUCIELMTAbdzRP4/2FvY6L4uJ35NB1Y8z7bm2g6WjQ1TFGMAiEAs3ZC+QpeEQQrpzqCD/QXH3fcymvJdRVZV5tLBLUx64Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":665483},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"1c0d07de812a995149891980c5ddc93717728257","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.1.0","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.8_1774746260968_0.02374054151296856","host":"s3://npm-registry-packages-npm-production"}},"1.12.9":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.9","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.9","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"2a0968ebabda146ba02c13712fd88647c3e219c8","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.9.tgz","fileCount":82,"integrity":"sha512-Y0tipodmMkxwwKqddfn1unpKL1IIEhA2Fz7HqC+UI7sULgqRXCZOB2cX9wrfZtfLSL/SOMHZfNV4EL1hq0JXnQ==","signatures":[{"sig":"MEUCIHxo9KGYcC182T84qmLcoKMlTjdxRiQPoIVqMYq3hnGeAiEAyfF7h/bulC5/keKm+4RsJySaxzd07qZohaw2NOvmjx4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":667605},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"6ea3c1dd09dbeffbf755f79bcc42549ef9056047","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.1.0","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.9_1774747123321_0.07978568166882627","host":"s3://npm-registry-packages-npm-production"}},"1.12.10":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.10","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.10","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"daad64abedfce4b882adf6b2810afdce699294d2","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.10.tgz","fileCount":88,"integrity":"sha512-S0k/u/PbrWVynaIvRwPFL0US9Ayp4nxjFbCjSXfz8p7XkOoosiKuH5I8ibry9oAGX4MHb1bS9j9q5GT06G40FA==","signatures":[{"sig":"MEUCIHlHVQoROybJlJKwmAIN4xcYzr41bfi4iieO5+5KdBy/AiEAph03ANDo6BovoYiUri+jp0QsKqzxFj95Gh+bCZshcTI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":680480},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"470a9775d7ce47a0488f7557fe90ebfc4a584adc","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.1.0","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^64.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.10_1774822941205_0.43917263957288144","host":"s3://npm-registry-packages-npm-production"}},"1.12.11":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.11","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.11","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"fbdba4283300936e6d8a8f77ded0db2b61a8106d","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.11.tgz","fileCount":88,"integrity":"sha512-61k4NiFywip/O0UXgUyoErHpCiXXrNUV/mSv2N0reTCaCiNpwI0n8pWlcfhrcvOeT0h6k1nKrOMtxgdeAQVF0g==","signatures":[{"sig":"MEUCIQCjunANdZ78GXlh/NbngWEjE4yq+ViQUZTagKgnRjb5ZgIgCggMtUQqnij7XOEEtorJ4ktVOt0gG86fkLk8p0liawY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":680637},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"aeaea065574fed8fed8052508412d7a3f8f134a6","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.1.0","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^64.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.11_1774825238593_0.06473327092809655","host":"s3://npm-registry-packages-npm-production"}},"1.12.12":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.12","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.12","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"310ce7602303d52a0b27a29bec379ba6f2c7fc5e","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.12.tgz","fileCount":88,"integrity":"sha512-z5x3f/ibe7KaX3KzB4TYeMbab/3ynIoLSRY3+1ozdPmWKfxKJR6wPvzQ4KD4y+6P1+KpYoGKTjAQYWjtzCnIAw==","signatures":[{"sig":"MEUCIQDrcpJbUlDq2+0w6s1qY6OJoqYeehqAbzp7g8PK4BQuUQIgURtoOmnGo6Ln329GHN8ksUkfcuYkjZWmA9xOZO1OXg8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":681130},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"e628d9d1090a4fe33269dd8eafd9d96748e4e16b","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.1.0","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^64.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.12_1774882109531_0.03471759502779692","host":"s3://npm-registry-packages-npm-production"}},"1.12.13":{"name":"@j0hanz/fetch-url-mcp","version":"1.12.13","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.12.13","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"1f854188635b2aa1f1677775456d1edae6f779ec","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.12.13.tgz","fileCount":88,"integrity":"sha512-dZ8931kD+9GVS/DTxhM9SgjswjAKPBA7mK4Hl4WdrPAMmnDZFGAB0Sa2vfKMjifNbCEYXSdH2CGWze/8kqqJ3A==","signatures":[{"sig":"MEUCIQCE//1UVDr13XWjP5TtyGk2ImN9tydhNDBRLGuNb1V32wIgXLm+4Ch54PavOVfMxVn94CpZ6UdikdMWRuzK659wl9Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.12.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":681303},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"945a93f5cf2a5cf5e6111961aeac8358bced4368","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.9.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^7.24.6","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.28"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.1.0","eslint":"^10.1.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.57.2","eslint-plugin-depend":"^1.5.0","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^64.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.12.13_1774883086281_0.6132701726925698","host":"s3://npm-registry-packages-npm-production"}},"1.13.0":{"name":"@j0hanz/fetch-url-mcp","version":"1.13.0","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@1.13.0","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"96ab4eb1164e9b1c8515d4baa10a5ecf0f2e89a9","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-1.13.0.tgz","fileCount":88,"integrity":"sha512-ifGtao2zz2ea37Pfzi2UGZgGXLYmq9fePnLsPmY9YJ6uovR5s9h0DJOabDBbtgrvQLbq78j9mZsmoZkfgr8rYg==","signatures":[{"sig":"MEUCIQDj4tbjfcalfr9/q+5gko2k1J4zEJxVXTvbOISpbT2EFQIgCcwn2MtNrEYag/9rkZiWRVVi/q6orSS1CVIxumeeqms=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@1.13.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":680680},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"90f5c622db2fb1f998603940ae3ce077594a23cd","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.11.0","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^4.3.6","undici":"^7.24.7","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@modelcontextprotocol/sdk":"^1.29"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.3.0","eslint":"^10.2.0","prettier":"^3.8.1","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.58.0","eslint-plugin-depend":"^1.5.0","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^64.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_1.13.0_1775564585703_0.121595210796698","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@j0hanz/fetch-url-mcp","version":"2.0.1","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"author":{"name":"j0hanz"},"license":"MIT","_id":"@j0hanz/fetch-url-mcp@2.0.1","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"bin":{"fetch-url-mcp":"dist/index.js"},"dist":{"shasum":"586aaa76a19ebb36af73c35728bb979b067f2575","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-2.0.1.tgz","fileCount":94,"integrity":"sha512-DGmQB7olsXBXMBAPH3nDROll5ukgjUI4tJy/RRcNSHHK2jYDpBcs7TF+a/xlTiKmKKh5r8kfCogt3AcCHURLqA==","signatures":[{"sig":"MEQCICEPIaZafBj3zosXyzYZsz/n7AWyH0+FgOLGM6/rO1VTAiB5fqiHncAaym620NmQnkosmXR6YVdjJcyLtGKHzx/qDQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":661949},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=24"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"gitHead":"e21b8a9c08b6c22f98745ae999a02135f9a2346f","mcpName":"io.github.j0hanz/fetch-url-mcp","scripts":{"dev":"tsc --watch --preserveWatchOutput","knip":"knip","lint":"eslint .","test":"node scripts/tasks.mjs test","build":"node scripts/tasks.mjs build","clean":"node scripts/tasks.mjs clean","start":"node dist/index.js","format":"prettier --write .","dev:run":"node --env-file=.env --watch dist/index.js","prepare":"npm run build","knip:fix":"knip --fix","lint:fix":"eslint . --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","lint:tests":"eslint __tests__","type-check":"node scripts/tasks.mjs type-check","copy:assets":"node scripts/tasks.mjs copy:assets","test:coverage":"node scripts/tasks.mjs test --coverage","prepublishOnly":"npm run lint && npm run type-check && npm run build","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics"},"_npmUser":{"name":"j0hanz","email":"golfarenlj@protonmail.com"},"repository":{"url":"git+https://github.com/j0hanz/fetch-url-mcp.git","type":"git"},"_npmVersion":"11.12.1","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"zod":"^4.3.6","undici":"^8.0.2","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","@mozilla/readability":"^0.6.0","@cfworker/json-schema":"^4.1.1","@modelcontextprotocol/node":"^2.0.0-alpha.2","@modelcontextprotocol/server":"^2.0.0-alpha.2"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","knip":"^6.3.1","eslint":"^10.2.0","prettier":"^3.8.2","@eslint/js":"^10.0.1","typescript":"^6.0.2","@types/node":"^24","typescript-eslint":"^8.58.1","eslint-plugin-depend":"^1.5.0","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^64.0.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-unused-imports":"^4.4.1","@trivago/prettier-plugin-sort-imports":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/fetch-url-mcp_2.0.1_1775910271653_0.36064963990178667","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@j0hanz/fetch-url-mcp","version":"2.0.2","mcpName":"io.github.j0hanz/fetch-url-mcp","description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","bin":{"fetch-url-mcp":"dist/index.js"},"exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./package.json":"./package.json"},"repository":{"type":"git","url":"git+https://github.com/j0hanz/fetch-url-mcp.git"},"homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"author":{"name":"j0hanz"},"license":"MIT","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"scripts":{"clean":"node scripts/tasks.mjs clean","build":"node scripts/tasks.mjs build","copy:assets":"node scripts/tasks.mjs copy:assets","prepare":"npm run build","dev":"tsc --watch --preserveWatchOutput","dev:run":"node --env-file=.env --watch dist/index.js","start":"node dist/index.js","format":"prettier --write .","type-check":"node scripts/tasks.mjs type-check","type-check:src":"node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit","type-check:tests":"node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit","type-check:diagnostics":"tsc --noEmit --extendedDiagnostics","type-check:trace":"node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace","lint":"eslint .","lint:tests":"eslint __tests__","lint:fix":"eslint . --fix","test":"node scripts/tasks.mjs test","test:coverage":"node scripts/tasks.mjs test --coverage","knip":"knip","knip:fix":"knip --fix","inspector":"npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js","prepublishOnly":"npm run lint && npm run type-check && npm run build"},"dependencies":{"@cfworker/json-schema":"^4.1.1","@modelcontextprotocol/node":"^2.0.0-alpha.2","@modelcontextprotocol/server":"^2.0.0-alpha.2","@mozilla/readability":"^0.6.0","linkedom":"^0.18.12","node-html-markdown":"^2.0.0","undici":"^8.0.2","zod":"^4.3.6"},"devDependencies":{"@eslint/js":"^10.0.1","@trivago/prettier-plugin-sort-imports":"^6.0.2","@types/node":"^24","eslint":"^10.2.0","eslint-config-prettier":"^10.1.8","eslint-plugin-de-morgan":"^2.1.1","eslint-plugin-depend":"^1.5.0","eslint-plugin-sonarjs":"^4.0.2","eslint-plugin-unicorn":"^64.0.0","eslint-plugin-unused-imports":"^4.4.1","knip":"^6.3.1","prettier":"^3.8.2","tsx":"^4.21.0","typescript":"^6.0.2","typescript-eslint":"^8.58.1"},"engines":{"node":">=24"},"gitHead":"80cdf30f099c4102d15e52c45cdf84b00052d376","_id":"@j0hanz/fetch-url-mcp@2.0.2","_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-TpPSpwZFP3E4zUEeTrYUKEwIQA3IVfZnwpF76KkEkqM7gsIHBIGWiEY6LFQk4e0KLLvaEpHPOPs52FYdKdWOOg==","shasum":"04138d6be1ab5aa78e42b6fb8b2045db0e468795","tarball":"https://registry.npmjs.org/@j0hanz/fetch-url-mcp/-/fetch-url-mcp-2.0.2.tgz","fileCount":94,"unpackedSize":660885,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@j0hanz%2ffetch-url-mcp@2.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBLa4ZFNWb9f5UzCHD1XTHZ1SNWsr6A0B6dCQKux9T69AiEAqzPk/1dpAXurIJgzmiLCQA2tYKVLIyPe63k1gHlA/Pw="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:1592e0dc-c770-4832-8d69-54341778e473"}},"directories":{},"maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/fetch-url-mcp_2.0.2_1775910603034_0.8251621158785887"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-11T11:57:44.500Z","modified":"2026-04-11T12:30:03.498Z","0.0.1":"2026-02-11T11:57:44.818Z","0.0.2":"2026-02-11T12:24:12.271Z","1.0.0":"2026-02-11T12:30:59.219Z","1.0.1":"2026-02-11T13:48:35.872Z","1.1.0":"2026-02-12T11:10:53.507Z","1.1.1":"2026-02-12T12:21:48.786Z","1.1.2":"2026-02-13T12:35:56.774Z","1.1.3":"2026-02-13T13:17:56.237Z","1.2.0":"2026-02-15T21:16:47.493Z","1.3.0":"2026-02-23T08:30:28.727Z","1.3.1":"2026-02-25T07:27:00.227Z","1.4.0":"2026-02-26T13:05:05.857Z","1.5.0":"2026-03-01T18:52:51.142Z","1.5.1":"2026-03-02T10:18:11.260Z","1.6.0":"2026-03-06T00:16:53.565Z","1.6.1":"2026-03-06T01:25:37.607Z","1.7.0":"2026-03-11T03:36:14.639Z","1.8.0":"2026-03-11T09:30:16.762Z","1.8.1":"2026-03-11T12:49:34.112Z","1.8.2":"2026-03-11T19:52:15.269Z","1.8.3":"2026-03-11T20:45:12.892Z","1.8.4":"2026-03-11T21:09:30.878Z","1.9.0":"2026-03-13T14:11:01.099Z","1.9.1":"2026-03-13T22:20:01.293Z","1.9.2":"2026-03-14T03:04:47.228Z","1.9.3":"2026-03-14T05:18:07.479Z","1.9.4":"2026-03-14T09:45:22.265Z","1.9.5":"2026-03-15T14:56:05.629Z","1.9.6":"2026-03-15T17:11:19.418Z","1.10.0":"2026-03-16T11:07:07.531Z","1.10.1":"2026-03-17T21:39:33.456Z","1.10.2":"2026-03-18T20:36:16.567Z","1.10.3":"2026-03-20T20:49:39.176Z","1.10.4":"2026-03-21T01:32:16.526Z","1.10.5":"2026-03-21T04:31:59.310Z","1.10.6":"2026-03-21T06:50:41.573Z","1.10.7":"2026-03-21T07:55:44.511Z","1.10.8":"2026-03-21T11:43:33.419Z","1.10.9":"2026-03-21T15:35:18.670Z","1.10.10":"2026-03-21T19:14:00.020Z","1.10.11":"2026-03-22T16:21:28.056Z","1.10.12":"2026-03-22T19:22:19.850Z","1.10.13":"2026-03-22T21:16:48.651Z","1.10.14":"2026-03-22T21:41:15.618Z","1.10.15":"2026-03-22T22:01:58.170Z","1.10.16":"2026-03-23T07:30:51.377Z","1.10.17":"2026-03-23T10:46:38.099Z","1.10.18":"2026-03-23T11:48:47.706Z","1.10.19":"2026-03-23T12:48:08.935Z","1.10.20":"2026-03-23T13:15:02.523Z","1.10.21":"2026-03-23T13:21:24.927Z","1.10.22":"2026-03-23T22:30:53.631Z","1.10.23":"2026-03-23T23:29:27.529Z","1.10.24":"2026-03-24T01:56:21.138Z","1.10.25":"2026-03-24T07:29:05.202Z","1.11.0":"2026-03-24T10:01:13.190Z","1.11.1":"2026-03-24T11:58:40.531Z","1.11.2":"2026-03-26T15:21:49.854Z","1.11.3":"2026-03-26T16:03:58.417Z","1.11.4":"2026-03-26T19:28:08.951Z","1.11.5":"2026-03-26T21:35:54.297Z","1.11.6":"2026-03-27T00:58:46.348Z","1.11.7":"2026-03-27T02:19:59.910Z","1.11.8":"2026-03-27T08:18:56.820Z","1.12.0":"2026-03-27T10:09:20.510Z","1.12.1":"2026-03-27T19:31:24.794Z","1.12.2":"2026-03-27T20:41:50.200Z","1.12.3":"2026-03-27T21:12:55.415Z","1.12.4":"2026-03-27T21:38:50.883Z","1.12.5":"2026-03-27T23:40:18.030Z","1.12.6":"2026-03-28T00:22:27.235Z","1.12.7":"2026-03-28T20:35:30.776Z","1.12.8":"2026-03-29T01:04:21.162Z","1.12.9":"2026-03-29T01:18:43.518Z","1.12.10":"2026-03-29T22:22:21.426Z","1.12.11":"2026-03-29T23:00:38.750Z","1.12.12":"2026-03-30T14:48:29.703Z","1.12.13":"2026-03-30T15:04:46.477Z","1.13.0":"2026-04-07T12:23:05.938Z","3.0.0":"2026-04-11T05:59:13.032Z","3.0.1":"2026-04-11T10:59:19.136Z","2.0.1":"2026-04-11T12:24:31.815Z","2.0.2":"2026-04-11T12:30:03.245Z"},"bugs":{"url":"https://github.com/j0hanz/fetch-url-mcp/issues"},"author":{"name":"j0hanz"},"license":"MIT","homepage":"https://github.com/j0hanz/fetch-url-mcp#readme","keywords":["mcp","mcp-server","model-context-protocol","web-fetching","content-extraction","readability","markdown","html-to-markdown","web-scraper","llm-context","ai-tools","fetch-url-mcp","typescript","nodejs","stdio","streamable-http","structured-output","metadata-extraction","url-rewriting","worker-threads","content-cleanup"],"repository":{"type":"git","url":"git+https://github.com/j0hanz/fetch-url-mcp.git"},"description":"An MCP server that fetches web pages and converts them to clean, readable Markdown.","maintainers":[{"name":"j0hanz","email":"golfarenlj@protonmail.com"}],"readme":"# Fetch URL MCP Server\n\n[![npm version](https://img.shields.io/npm/v/%40j0hanz%2Ffetch-url-mcp?style=flat-square&logo=npm)](https://www.npmjs.com/package/%40j0hanz%2Ffetch-url-mcp) [![License](https://img.shields.io/badge/license-MIT-blue?style=flat-square)](#contributing-and-license)\n\n[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install_Server-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=fetch-url&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40j0hanz%2Ffetch-url-mcp%40latest%22%5D%7D) [![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install_Server-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=fetch-url&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40j0hanz%2Ffetch-url-mcp%40latest%22%5D%7D&quality=insiders) [![Install in Visual Studio](https://img.shields.io/badge/Visual_Studio-Install_Server-C16FDE?logo=visualstudio&logoColor=white)](https://vs-open.link/mcp-install?%7B%22fetch-url-mcp%22%3A%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40j0hanz%2Ffetch-url-mcp%40latest%22%5D%7D%7D)\n\n[![Add to LM Studio](https://files.lmstudio.ai/deeplink/mcp-install-light.svg)](https://lmstudio.ai/install-mcp?name=fetch-url&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBqMGhhbnovZmV0Y2gtdXJsLW1jcEBsYXRlc3QiXX0%3D) [![Install in Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en/install-mcp?name=fetch-url&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBqMGhhbnovZmV0Y2gtdXJsLW1jcEBsYXRlc3QiXX0%3D)\n\nAn MCP server that fetches web pages and converts them to clean, readable Markdown.\n\n## Overview\n\nThis server takes a URL, fetches the page, and strips away everything you don't need — navigation, sidebars, banners, scripts — leaving just the main content as Markdown. It's perfect for feeding into LLMs, giving them the distilled essence of a page without the noise. It also recognizes GitHub, GitLab, Bitbucket, and Gist URLs and rewrites them to fetch the raw content directly.\n\nBy default it runs over stdio. Pass `--http` if you need a proper HTTP endpoint with auth, rate limiting, TLS, and session support.\n\n## Key Features\n\n- **HTML to Markdown** — Turns any public web page into clean, readable Markdown with metadata like `title`, `url`, `contentSize`, and `truncated`.\n- **Smart URL handling** — Recognizes GitHub, GitLab, Bitbucket, and Gist page URLs and rewrites them to raw-content endpoints before fetching.\n- **Task mode** — Big or slow pages can run as async MCP tasks with progress updates, instead of blocking. In HTTP mode, tasks are bound to the authenticated caller rather than a single MCP session, so they can be resumed after reconnecting as the same authenticated subject. Polling task state exposes task summaries; numeric progress remains out-of-band via `notifications/progress`.\n- **Self-documenting** — Includes an `internal://instructions` resource and a `get-help` prompt so clients know how to use it.\n- **HTTP mode** — Optionally serves over Streamable HTTP with host/origin validation, bearer or OAuth auth, rate limiting, health checks, and TLS.\n\n## Web Client\n\nA browser-based client is available if you want to use the server without any MCP setup.\n\n**[Live app](https://fetch-url-client.vercel.app)** · [Source code](https://github.com/j0hanz/fetch-url)\n\n## Requirements\n\n- **Node.js** >= 24\n- **Docker** (optional) — only needed if you want to run the container image\n\n## Quick Start\n\nAdd this to your MCP client config:\n\n```json\n{\n  \"mcpServers\": {\n    \"fetch-url-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\n## Client Configuration\n\n<details>\n<summary><b>Install in VS Code</b></summary>\n\n[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install_Server-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=fetch-url&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40j0hanz%2Ffetch-url-mcp%40latest%22%5D%7D)\n\nAdd to `.vscode/mcp.json`:\n\n```json\n{\n  \"servers\": {\n    \"fetch-url-mcp\": {\n      \"type\": \"stdio\",\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nOr install via CLI:\n\n```sh\ncode --add-mcp '{\"name\":\"fetch-url-mcp\",\"command\":\"npx\",\"args\":[\"-y\",\"@j0hanz/fetch-url-mcp@latest\"]}'\n```\n\nFor more info, see [VS Code MCP docs](https://code.visualstudio.com/docs/copilot/chat/mcp-servers).\n\n</details>\n\n<details>\n<summary><b>Install in VS Code Insiders</b></summary>\n\n[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install_Server-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=fetch-url&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40j0hanz%2Ffetch-url-mcp%40latest%22%5D%7D&quality=insiders)\n\nAdd to `.vscode/mcp.json`:\n\n```json\n{\n  \"servers\": {\n    \"fetch-url-mcp\": {\n      \"type\": \"stdio\",\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nOr install via CLI:\n\n```sh\ncode-insiders --add-mcp '{\"name\":\"fetch-url-mcp\",\"command\":\"npx\",\"args\":[\"-y\",\"@j0hanz/fetch-url-mcp@latest\"]}'\n```\n\nFor more info, see [VS Code Insiders MCP docs](https://code.visualstudio.com/docs/copilot/chat/mcp-servers).\n\n</details>\n\n<details>\n<summary><b>Install in Cursor</b></summary>\n\n[![Install in Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en/install-mcp?name=fetch-url&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBqMGhhbnovZmV0Y2gtdXJsLW1jcEBsYXRlc3QiXX0%3D)\n\nAdd to `~/.cursor/mcp.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"fetch-url-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nFor more info, see [Cursor MCP docs](https://docs.cursor.com/context/model-context-protocol).\n\n</details>\n\n<details>\n<summary><b>Install in Visual Studio</b></summary>\n\n[![Install in Visual Studio](https://img.shields.io/badge/Visual_Studio-Install_Server-C16FDE?logo=visualstudio&logoColor=white)](https://vs-open.link/mcp-install?%7B%22fetch-url-mcp%22%3A%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40j0hanz%2Ffetch-url-mcp%40latest%22%5D%7D%7D)\n\nFor solution-scoped setup, add this to `.mcp.json` at the solution root:\n\n```json\n{\n  \"servers\": {\n    \"fetch-url-mcp\": {\n      \"type\": \"stdio\",\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nFor more info, see [Visual Studio MCP docs](https://learn.microsoft.com/en-us/visualstudio/ide/mcp-servers).\n\n</details>\n\n<details>\n<summary><b>Install in Goose</b></summary>\n\nAdd to `~/.config/goose/config.yaml` on macOS/Linux or `%APPDATA%\\Block\\goose\\config\\config.yaml` on Windows:\n\n```yaml\nextensions:\n  fetch-url-mcp:\n    name: fetch-url-mcp\n    cmd: npx\n    args: ['-y', '@j0hanz/fetch-url-mcp@latest']\n    enabled: true\n    type: stdio\n    timeout: 300\n```\n\nFor more info, see [Goose extension docs](https://block.github.io/goose/docs/getting-started/using-extensions/).\n\n</details>\n\n<details>\n<summary><b>Install in LM Studio</b></summary>\n\n[![Add to LM Studio](https://files.lmstudio.ai/deeplink/mcp-install-light.svg)](https://lmstudio.ai/install-mcp?name=fetch-url&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBqMGhhbnovZmV0Y2gtdXJsLW1jcEBsYXRlc3QiXX0%3D)\n\nAdd to `~/.lmstudio/mcp.json` on macOS/Linux or `%USERPROFILE%/.lmstudio/mcp.json` on Windows:\n\n```json\n{\n  \"mcpServers\": {\n    \"fetch-url-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nFor more info, see [LM Studio MCP docs](https://lmstudio.ai/docs/basics/mcp).\n\n</details>\n\n<details>\n<summary><b>Install in Claude Desktop</b></summary>\n\nAdd to `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"fetch-url-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nFor more info, see [Claude Desktop MCP docs](https://modelcontextprotocol.io/quickstart/user).\n\n</details>\n\n<details>\n<summary><b>Install in Claude Code</b></summary>\n\nUse the CLI:\n\n```sh\nclaude mcp add fetch-url-mcp -- npx -y @j0hanz/fetch-url-mcp@latest\n```\n\nFor project-scoped config, Claude Code writes `.mcp.json` with:\n\n```json\n{\n  \"mcpServers\": {\n    \"fetch-url-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"],\n      \"env\": {}\n    }\n  }\n}\n```\n\nFor more info, see [Claude Code MCP docs](https://docs.anthropic.com/en/docs/claude-code/mcp).\n\n</details>\n\n<details>\n<summary><b>Install in Windsurf</b></summary>\n\nAdd to `~/.codeium/windsurf/mcp_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"fetch-url-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nFor more info, see [Windsurf MCP docs](https://docs.windsurf.com/windsurf/cascade/mcp).\n\n</details>\n\n<details>\n<summary><b>Install in Amp</b></summary>\n\nAdd to `~/.config/amp/settings.json` on macOS/Linux, `%USERPROFILE%\\.config\\amp\\settings.json` on Windows, or `.amp/settings.json` for workspace-scoped config:\n\n```json\n{\n  \"amp.mcpServers\": {\n    \"fetch-url-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nOr install via CLI:\n\n```sh\namp mcp add fetch-url-mcp -- npx -y @j0hanz/fetch-url-mcp@latest\n```\n\nFor more info, see [Amp docs](https://ampcode.com/manual).\n\n</details>\n\n<details>\n<summary><b>Install in Cline</b></summary>\n\nOpen the MCP Servers panel, choose `Configure MCP Servers`, and add this to `cline_mcp_settings.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"fetch-url-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nFor more info, see [Cline MCP docs](https://docs.cline.bot/mcp/configuring-mcp-servers).\n\n</details>\n\n<details>\n<summary><b>Install in Codex CLI</b></summary>\n\nUse the CLI:\n\n```sh\ncodex mcp add fetch-url-mcp -- npx -y @j0hanz/fetch-url-mcp@latest\n```\n\nOr add this to `~/.codex/config.toml` or project-scoped `.codex/config.toml`:\n\n```toml\n[mcp_servers.fetch-url-mcp]\ncommand = \"npx\"\nargs = [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n```\n\nFor more info, see [Codex MCP docs](https://developers.openai.com/codex/mcp/).\n\n</details>\n\n<details>\n<summary><b>Install in GitHub Copilot</b></summary>\n\nAdd to `.vscode/mcp.json`:\n\n```json\n{\n  \"servers\": {\n    \"fetch-url-mcp\": {\n      \"type\": \"stdio\",\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nFor more info, see [GitHub Copilot MCP docs](https://code.visualstudio.com/docs/copilot/chat/mcp-servers).\n\n</details>\n\n<details>\n<summary><b>Install in Warp</b></summary>\n\nOpen `Personal > MCP Servers` in Warp, choose `+ Add`, and either add a CLI server with:\n\n- `command`: `npx`\n- `args`: `[\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]`\n\nOr paste this JSON snippet when using Warp's multi-server import flow:\n\n```json\n{\n  \"mcpServers\": {\n    \"fetch-url-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nFor more info, see [Warp MCP docs](https://docs.warp.dev/features/warp-ai/mcp).\n\n</details>\n\n<details>\n<summary><b>Install in Kiro</b></summary>\n\nUse Kiro's MCP Servers panel or the `Add to Kiro` install flow. Kiro stores workspace-scoped MCP config in `.kiro/settings/mcp.json` and user-scoped config in `~/.kiro/settings/mcp.json`.\n\nFor this server, use:\n\n- `command`: `npx`\n- `args`: `[\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]`\n\nFor more info, see [Kiro MCP docs](https://kiro.dev/blog/unlock-your-development-productivity-with-kiro-and-mcp/).\n\n</details>\n\n<details>\n<summary><b>Install in Gemini CLI</b></summary>\n\nAdd to `~/.gemini/settings.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"fetch-url-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nFor more info, see [Gemini CLI MCP docs](https://google-gemini.github.io/gemini-cli/docs/tools/mcp-server.html).\n\n</details>\n\n<details>\n<summary><b>Install in Zed</b></summary>\n\nAdd to `~/.config/zed/settings.json`:\n\n```json\n{\n  \"context_servers\": {\n    \"fetch-url-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"],\n      \"env\": {}\n    }\n  }\n}\n```\n\nFor more info, see [Zed MCP docs](https://zed.dev/docs/ai/mcp).\n\n</details>\n\n<details>\n<summary><b>Install in Augment</b></summary>\n\nUse the Augment Settings panel and either add the server manually or choose `Import from JSON`:\n\n```json\n{\n  \"mcpServers\": {\n    \"fetch-url-mcp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]\n    }\n  }\n}\n```\n\nFor more info, see [Augment MCP docs](https://docs.augmentcode.com/setup-augment/mcp).\n\n</details>\n\n<details>\n<summary><b>Install in Roo Code</b></summary>\n\nUse Roo Code's MCP Servers UI or marketplace flow.\n\nFor this server, use:\n\n- `command`: `npx`\n- `args`: `[\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]`\n\nFor more info, see [Roo Code docs](https://docs.roocode.com/).\n\n</details>\n\n<details>\n<summary><b>Install in Kilo Code</b></summary>\n\nUse Kilo Code's MCP Servers UI or marketplace flow.\n\nFor this server, use:\n\n- `command`: `npx`\n- `args`: `[\"-y\", \"@j0hanz/fetch-url-mcp@latest\"]`\n\nFor more info, see [Kilo Code docs](https://kilocode.ai/docs).\n\n</details>\n\n## Use Cases\n\n- **Documentation for LLMs** — Grab a docs page, blog post, or reference article as Markdown and pass it straight into a context window.\n- **Repository content** — Hand it a GitHub, GitLab, or Bitbucket URL and it resolves the raw content endpoint. Works with Gists too.\n- **Slow or large pages** — Task mode lets big fetches run in the background while sending monotonic progress updates back to the client, while `tasks/get` exposes the latest task summary fields such as `statusMessage`, `createdAt`, `lastUpdatedAt`, `ttl`, and `pollInterval`.\n\n## Architecture\n\n```text\n[MCP Client]\n  ├─ stdio -> `src/index.ts` -> `startStdioServer()` -> `createMcpServer()`\n  └─ HTTP (`--http`) -> `src/index.ts` -> `startHttpServer()` -> HTTP dispatcher\n       ├─ `GET /health`\n       ├─ `GET /.well-known/oauth-protected-resource`\n       ├─ `GET /.well-known/oauth-protected-resource/mcp`\n       └─ `POST|GET|DELETE /mcp`\n\n`createMcpServer()`\n  ├─ registers tool: `fetch-url`\n  ├─ registers prompt: `get-help`\n  ├─ registers resources:\n  │    - `internal://instructions`\n  ├─ enables capabilities: logging, resources, prompts, tasks\n  └─ installs task handlers, log-level handling, and shutdown cleanup\n\n`fetch-url` execution\n  ├─ validate input with `fetchUrlInputSchema`\n  ├─ normalize URL and block local/private targets unless allowed\n  ├─ rewrite supported code-host URLs to raw endpoints when possible\n  ├─ fetch content via the shared pipeline\n  ├─ transform HTML into Markdown in the transform worker path\n  └─ validate `structuredContent` with `fetchUrlOutputSchema`\n```\n\n### Request Lifecycle\n\n```text\n[Client] -- initialize {protocolVersion, capabilities} --> [Server]\n[Server] -- {protocolVersion, capabilities, serverInfo} --> [Client]\n[Client] -- notifications/initialized --> [Server]\n[Client] -- tools/call {name, arguments} --> [Server]\n[Server] -- {content: [{type, text}], structuredContent?, isError?} --> [Client]\n```\n\n## MCP Surface\n\n### Tools\n\n#### `fetch-url`\n\nTakes a URL and returns Markdown. Read-only, with no JavaScript execution. Supports running as a background MCP task for large or slow pages. In task mode, `tasks/get` and `tasks/list` expose task summaries including `status`, `statusMessage`, `createdAt`, `lastUpdatedAt`, `ttl`, and `pollInterval`; numeric progress remains out-of-band via `notifications/progress`.\n\n| Parameter | Type     | Required | Description                 |\n| --------- | -------- | -------- | --------------------------- |\n| `url`     | `string` | yes      | Target URL. Max 2048 chars. |\n\nYou get text content back by default. If output validation passes, the response also includes `structuredContent` with typed fields: `url`, `resolvedUrl`, `finalUrl`, `title`, `metadata`, `markdown`, `fetchedAt`, `contentSize`, and `truncated`. A `true` value for `truncated` means the content hit a server-side size limit.\n\nTo opt into progress updates, include `_meta.progressToken` in the tool call. The token may be a string or number, and the server may emit monotonic `notifications/progress` updates while the fetch runs.\n\nTo run the tool in task mode, include `params.task = { ttl?: <ms> }`. `tasks/result` waits until the task reaches a terminal status and then returns the stored output or a terminal error payload for cancelled or failed tasks. Task summaries and final results include `_meta[\"io.modelcontextprotocol/related-task\"] = { \"taskId\": \"<server-task-id>\" }`.\n\n```json\n{\n  \"method\": \"tools/call\",\n  \"params\": {\n    \"name\": \"fetch-url\",\n    \"arguments\": {\n      \"url\": \"https://example.com/docs\"\n    },\n    \"task\": {\n      \"ttl\": 300000,\n      \"pollInterval\": 1000\n    },\n    \"_meta\": {\n      \"progressToken\": 7\n    }\n  }\n}\n```\n\n```text\n1. [Client] -- tools/call {name: \"fetch-url\", arguments} --> [Server]\n2. [Server] -- dispatch(\"fetch-url\") --> [src/tools/fetch-url.ts]\n3. [Handler] -- validate(fetchUrlInputSchema) --> normalize / fetch / transform\n4. [Handler] -- validate(fetchUrlOutputSchema) --> assemble content + structuredContent\n5. [Server] -- result or tool error --> [Client]\n```\n\n### Resources\n\n| Resource                     | URI                       | MIME Type       | Description                                  |\n| ---------------------------- | ------------------------- | --------------- | -------------------------------------------- |\n| `fetch-url-mcp-instructions` | `internal://instructions` | `text/markdown` | Guidance for using the Fetch URL MCP server. |\n\n### Prompts\n\n| Prompt     | Arguments | Description                                                                                                                                            |\n| ---------- | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `get-help` | `topic?`  | Return Fetch URL server instructions: workflows, task mode, and error handling. Optional values: `capabilities`, `workflows`, `constraints`, `errors`. |\n\n## MCP Capabilities\n\n| Capability             | Status    | Notes                                                                                                                                  |\n| ---------------------- | --------- | -------------------------------------------------------------------------------------------------------------------------------------- |\n| completions            | confirmed | Advertised in `createServerCapabilities()`.                                                                                            |\n| logging                | confirmed | Advertised in `createServerCapabilities()`.                                                                                            |\n| resources              | confirmed | Static instruction resource is registered during server startup. Subscription and list-changed support are not advertised.             |\n| prompts                | confirmed | `get-help` is registered during server startup.                                                                                        |\n| tasks                  | confirmed | Advertised in `createServerCapabilities()` and backed by registered task handlers plus optional tool task support.                     |\n| progress notifications | confirmed | Opt-in via `_meta.progressToken`. Tool execution reports monotonic `notifications/progress` updates during fetch and transform stages. |\n| task status updates    | confirmed | `notifications/tasks/status` is emitted when task status changes and `TASKS_STATUS_NOTIFICATIONS=true`.                                |\n\n### Tool Annotations\n\n| Annotation        | Value   |\n| ----------------- | ------- |\n| `readOnlyHint`    | `true`  |\n| `destructiveHint` | `false` |\n| `idempotentHint`  | `true`  |\n| `openWorldHint`   | `true`  |\n\n### Structured Output\n\nThe tool declares an `outputSchema` and includes `structuredContent` in the response when validation passes. Clients that support structured output get typed data directly; the rest use the text fallback.\n\n## Configuration\n\nAll configuration is through environment variables. For basic stdio usage, nothing needs to be set.\n\n### HTTP Server\n\n| Variable                              | Default     | Notes                                                                  |\n| ------------------------------------- | ----------- | ---------------------------------------------------------------------- |\n| `HOST`                                | `127.0.0.1` | Bind address. Non-loopback bindings also require `ALLOW_REMOTE=true`.  |\n| `PORT`                                | `3000`      | Listening port for `--http`.                                           |\n| `ALLOW_REMOTE`                        | `false`     | Must be enabled to bind to a non-loopback interface.                   |\n| `ALLOWED_HOSTS`                       | empty       | Additional allowed `Host` and `Origin` values.                         |\n| `SERVER_MAX_CONNECTIONS`              | `0`         | Optional connection cap.                                               |\n| `SERVER_TRUST_PROXY`                  | `false`     | Trust `X-Forwarded-For` / `Forwarded` for client IP resolution.        |\n| `SERVER_HEADERS_TIMEOUT_MS`           | unset       | Optional Node server tuning.                                           |\n| `SERVER_REQUEST_TIMEOUT_MS`           | unset       | Optional Node server tuning.                                           |\n| `SERVER_KEEP_ALIVE_TIMEOUT_MS`        | unset       | Optional keep-alive tuning.                                            |\n| `SERVER_KEEP_ALIVE_TIMEOUT_BUFFER_MS` | unset       | Optional keep-alive tuning buffer.                                     |\n| `SERVER_MAX_HEADERS_COUNT`            | unset       | Optional header count limit.                                           |\n| `SERVER_BLOCK_PRIVATE_CONNECTIONS`    | `false`     | Enables inbound private-network protections when not trusting a proxy. |\n\n### Authentication & OAuth\n\n| Variable                  | Default | Notes                                                       |\n| ------------------------- | ------- | ----------------------------------------------------------- |\n| `ACCESS_TOKENS`           | unset   | Comma- or space-separated static bearer tokens.             |\n| `API_KEY`                 | unset   | Alternate static token source for header auth.              |\n| `OAUTH_ISSUER_URL`        | unset   | Enables OAuth mode when combined with the other OAuth URLs. |\n| `OAUTH_AUTHORIZATION_URL` | unset   | Optional explicit authorization endpoint.                   |\n| `OAUTH_TOKEN_URL`         | unset   | Optional explicit token endpoint.                           |\n| `OAUTH_REVOCATION_URL`    | unset   | Optional OAuth revocation endpoint.                         |\n| `OAUTH_REGISTRATION_URL`  | unset   | Optional OAuth dynamic client registration endpoint.        |\n| `OAUTH_INTROSPECTION_URL` | unset   | Required for OAuth token introspection.                     |\n| `OAUTH_REQUIRED_SCOPES`   | empty   | Required scopes enforced after auth.                        |\n| `OAUTH_CLIENT_ID`         | unset   | Optional introspection client ID.                           |\n| `OAUTH_CLIENT_SECRET`     | unset   | Optional introspection client secret.                       |\n\n### TLS\n\n| Variable               | Default | Notes                                                       |\n| ---------------------- | ------- | ----------------------------------------------------------- |\n| `SERVER_TLS_KEY_FILE`  | unset   | Enable HTTPS when set together with `SERVER_TLS_CERT_FILE`. |\n| `SERVER_TLS_CERT_FILE` | unset   | TLS certificate path.                                       |\n| `SERVER_TLS_CA_FILE`   | unset   | Optional custom CA bundle.                                  |\n\n### Fetching\n\n| Variable            | Default                   | Notes                                              |\n| ------------------- | ------------------------- | -------------------------------------------------- |\n| `ALLOW_LOCAL_FETCH` | `false`                   | Allows loopback and private-network fetch targets. |\n| `FETCH_TIMEOUT_MS`  | `15000`                   | Network fetch timeout in milliseconds.             |\n| `USER_AGENT`        | `fetch-url-mcp/<version>` | Override the outbound user agent string.           |\n\n### Tool Output\n\n| Variable                   | Default | Notes                                          |\n| -------------------------- | ------- | ---------------------------------------------- |\n| `MAX_INLINE_CONTENT_CHARS` | `0`     | `0` means no explicit inline truncation limit. |\n\n### Tasks\n\n| Variable                     | Default | Notes                                                                                |\n| ---------------------------- | ------- | ------------------------------------------------------------------------------------ |\n| `TASKS_MAX_TOTAL`            | `5000`  | Total retained task capacity, including completed/cancelled tasks until they expire. |\n| `TASKS_MAX_PER_OWNER`        | `1000`  | Per-owner retained task cap, clamped to the total cap.                               |\n| `TASKS_STATUS_NOTIFICATIONS` | `false` | Enables status notifications for tasks.                                              |\n| `TASKS_REQUIRE_INTERCEPTION` | `true`  | Requires interception for task-capable tool execution.                               |\n\n### Transform Workers\n\n| Variable                                   | Default   | Notes                                 |\n| ------------------------------------------ | --------- | ------------------------------------- |\n| `TRANSFORM_CANCEL_ACK_TIMEOUT_MS`          | `200`     | Cancellation acknowledgement timeout. |\n| `TRANSFORM_WORKER_MODE`                    | `threads` | Worker execution mode.                |\n| `TRANSFORM_WORKER_MAX_OLD_GENERATION_MB`   | unset     | Optional worker memory limit.         |\n| `TRANSFORM_WORKER_MAX_YOUNG_GENERATION_MB` | unset     | Optional worker memory limit.         |\n| `TRANSFORM_WORKER_CODE_RANGE_MB`           | unset     | Optional worker memory limit.         |\n| `TRANSFORM_WORKER_STACK_MB`                | unset     | Optional worker stack size.           |\n\n### Content Cleanup\n\n| Variable                              | Default        | Notes                                      |\n| ------------------------------------- | -------------- | ------------------------------------------ |\n| `FETCH_URL_MCP_EXTRA_NOISE_TOKENS`    | empty          | Extra noise-removal tokens.                |\n| `FETCH_URL_MCP_EXTRA_NOISE_SELECTORS` | empty          | Extra DOM selectors for noise removal.     |\n| `FETCH_URL_MCP_LOCALE`                | system default | Locale override for extraction heuristics. |\n| `MARKDOWN_HEADING_KEYWORDS`           | built-in list  | Override heading keywords used by cleanup. |\n\n### Logging\n\n| Variable     | Default | Notes                                |\n| ------------ | ------- | ------------------------------------ |\n| `LOG_LEVEL`  | `info`  | `debug`, `info`, `warn`, or `error`. |\n| `LOG_FORMAT` | `text`  | Set to `json` for structured logs.   |\n\n## HTTP Endpoints\n\n| Method   | Path                                        | Auth                                       | Purpose                                                 |\n| -------- | ------------------------------------------- | ------------------------------------------ | ------------------------------------------------------- |\n| `GET`    | `/health`                                   | no, unless `?verbose=1` on a remote server | Basic health response, with optional diagnostics.       |\n| `GET`    | `/.well-known/oauth-protected-resource`     | no                                         | OAuth protected-resource metadata.                      |\n| `GET`    | `/.well-known/oauth-protected-resource/mcp` | no                                         | OAuth protected-resource metadata for the MCP endpoint. |\n| `POST`   | `/mcp`                                      | yes                                        | Session initialization and JSON-RPC requests.           |\n| `GET`    | `/mcp`                                      | yes                                        | Session-bound server-to-client stream handling.         |\n| `DELETE` | `/mcp`                                      | yes                                        | Session shutdown.                                       |\n\n## Security\n\n| Control                    | Status      | Notes                                                                                                                                                                                                   |\n| -------------------------- | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| Host and origin validation | implemented | HTTP requests are rejected unless `Host` and `Origin` match the allowlist built from loopback, the configured host, and `ALLOWED_HOSTS`.                                                                |\n| Authentication             | implemented | HTTP mode supports static bearer tokens locally or OAuth token introspection; remote bindings require OAuth.                                                                                            |\n| Protocol version checks    | implemented | Session-bound MCP HTTP requests validate `MCP-Protocol-Version` and pin it to the negotiated session version.                                                                                           |\n| Rate limiting              | implemented | Requests pass through the HTTP rate limiter before route dispatch. Enable `SERVER_TRUST_PROXY=true` behind a trusted reverse proxy so limits apply to the forwarded client IP instead of the proxy hop. |\n| Outbound SSRF protections  | implemented | Local/private IPs, metadata endpoints, and `.local`/`.internal` hosts are blocked unless `ALLOW_LOCAL_FETCH=true`.                                                                                      |\n| TLS                        | optional    | HTTPS is enabled when both TLS key and certificate files are configured.                                                                                                                                |\n| Stdio logging safety       | implemented | Server logs are written to stderr, not stdout, so stdio MCP traffic stays clean.                                                                                                                        |\n\n## Development\n\n### Essential Commands\n\n| Command              | Description                                       |\n| -------------------- | ------------------------------------------------- |\n| `npm run build`      | Clean, compile TypeScript, copy assets.           |\n| `npm run dev`        | Watch mode TypeScript compilation.                |\n| `npm run dev:run`    | Run the server with `--watch` and `.env` support. |\n| `npm start`          | Start the compiled server.                        |\n| `npm test`           | Run the full test suite.                          |\n| `npm run lint`       | Lint with ESLint.                                 |\n| `npm run lint:fix`   | Auto-fix lint issues.                             |\n| `npm run type-check` | Type-check source and tests.                      |\n| `npm run format`     | Format with Prettier.                             |\n| `npm run inspector`  | Build and launch MCP Inspector.                   |\n\n<details>\n<summary><b>All npm scripts</b></summary>\n\n| Script                   | Command                                                                                                             |\n| ------------------------ | ------------------------------------------------------------------------------------------------------------------- |\n| `clean`                  | `node scripts/tasks.mjs clean`                                                                                      |\n| `build`                  | `node scripts/tasks.mjs build`                                                                                      |\n| `copy:assets`            | `node scripts/tasks.mjs copy:assets`                                                                                |\n| `prepare`                | `npm run build`                                                                                                     |\n| `dev`                    | `tsc --watch --preserveWatchOutput`                                                                                 |\n| `dev:run`                | `node --env-file=.env --watch dist/index.js`                                                                        |\n| `start`                  | `node dist/index.js`                                                                                                |\n| `format`                 | `prettier --write .`                                                                                                |\n| `type-check`             | `node scripts/tasks.mjs type-check`                                                                                 |\n| `type-check:src`         | `node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit`                                                    |\n| `type-check:tests`       | `node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit`                                               |\n| `type-check:diagnostics` | `tsc --noEmit --extendedDiagnostics`                                                                                |\n| `type-check:trace`       | `node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace` |\n| `lint`                   | `eslint .`                                                                                                          |\n| `lint:tests`             | `eslint src/__tests__`                                                                                              |\n| `lint:fix`               | `eslint . --fix`                                                                                                    |\n| `test`                   | `node scripts/tasks.mjs test`                                                                                       |\n| `test:fast`              | `node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts`                                   |\n| `test:coverage`          | `node scripts/tasks.mjs test --coverage`                                                                            |\n| `knip`                   | `knip`                                                                                                              |\n| `knip:fix`               | `knip --fix`                                                                                                        |\n| `inspector`              | `npm run build && npx -y @modelcontextprotocol/inspector node dist/index.js --stdio`                                |\n| `prepublishOnly`         | `npm run lint && npm run type-check && npm run build`                                                               |\n\n</details>\n\n## Build and Release\n\n- `npm run prepublishOnly` runs lint, type-check, and build as a single release gate.\n- CI workflows are under `.github/workflows/`.\n- `Dockerfile` and `docker-compose.yml` are included for containerized runs.\n- Published on npm as [`@j0hanz/fetch-url-mcp`](https://www.npmjs.com/package/@j0hanz/fetch-url-mcp).\n\n## Troubleshooting\n\n| Symptom                                             | Likely Cause                        | Fix                                                                                 |\n| --------------------------------------------------- | ----------------------------------- | ----------------------------------------------------------------------------------- |\n| Server output mixes with MCP traffic on stdio       | Logs going to stdout                | Ensure all logging writes to stderr; the server does this by default.               |\n| HTTP mode returns `403`                             | Host/origin mismatch                | Add the domain to `ALLOWED_HOSTS` or verify loopback bindings.                      |\n| HTTP mode rate limits every request from your proxy | `SERVER_TRUST_PROXY` not enabled    | Enable `SERVER_TRUST_PROXY=true` when the server is behind a trusted reverse proxy. |\n| HTTP mode returns `401`                             | Missing or invalid token            | Set `ACCESS_TOKENS` or configure OAuth env vars for remote bindings.                |\n| Fetch returns private-IP error                      | SSRF protections blocked the target | Set `ALLOW_LOCAL_FETCH=true` if the target is intentionally local.                  |\n| `truncated: true` in response                       | Content exceeded inline limits      | Increase `MAX_INLINE_CONTENT_CHARS` or accept truncated output.                     |\n| Transform timeout or worker crash                   | Large or complex HTML               | Tune `TRANSFORM_WORKER_MAX_OLD_GENERATION_MB` or increase `FETCH_TIMEOUT_MS`.       |\n| Client config not working                           | Wrong config format for the client  | Check the matching `<details>` block above — config keys vary by client.            |\n\n## Credits\n\n| Dependency                                                                                 | Registry |\n| ------------------------------------------------------------------------------------------ | -------- |\n| [@modelcontextprotocol/server](https://www.npmjs.com/package/@modelcontextprotocol/server) | npm      |\n| [@modelcontextprotocol/node](https://www.npmjs.com/package/@modelcontextprotocol/node)     | npm      |\n| [@mozilla/readability](https://www.npmjs.com/package/@mozilla/readability)                 | npm      |\n| [linkedom](https://www.npmjs.com/package/linkedom)                                         | npm      |\n| [node-html-markdown](https://www.npmjs.com/package/node-html-markdown)                     | npm      |\n| [undici](https://www.npmjs.com/package/undici)                                             | npm      |\n| [zod](https://www.npmjs.com/package/zod)                                                   | npm      |\n\n## Contributing and License\n\nPull requests welcome. Please make sure these pass before submitting:\n\n1. `npm run lint` and `npm run type-check`\n2. `npm test`\n3. `npm run format`\n\n## License\n\nMIT License. See [LICENSE](LICENSE) for details.\n","readmeFilename":"README.md"}