github TypeScript re-analysis due

nirholas/extract-llms-docs

github

Extract documentation for AI agents from any site with llms.txt support. Features MCP server, REST API, batch processing, and multiple export formats.

maintainer
nirholas
licence
NOASSERTION
first seen
2026-06-01
last seen
2026-09-15
releases · 30d
0
short id

Drift inferred · capture-to-capture

tool count over time

06-01 15:18 now
6t
6t
capabilities 11 tools
transport stdio · http verified reported listed in the official MCP registry counts 11 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • discover_documentation_urls
  • extract_documentation
  • fetch_llms_txt
  • get_agent_guide
  • get_doc
  • get_document_section
  • get_full_documentation
  • list_docs
  • list_extracted_documents
  • search_docs
  • verify_llms_txt
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit e55dd99 · analyzer v33 · 4d ago

skills & prompt files 4

danger signals1

code evidence vHEAD · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 142

filesystem 1

  • fs (weak) nirholas-extract-llms-docs-e55dd99/public/docs/assets/javascripts/lunr/wordcut.js :1857 var fs = require('fs')

network 29

  • net nirholas-extract-llms-docs-e55dd99/mcp-server/src/extractor.ts :37 const response = await fetch(tryUrl, {
  • net nirholas-extract-llms-docs-e55dd99/src/app/api/batch/route.ts :66 const response = await fetch(tryUrl, {
  • net nirholas-extract-llms-docs-e55dd99/src/app/api/download/route.ts :105 const response = await fetch(tryUrl, {
  • net nirholas-extract-llms-docs-e55dd99/src/app/api/extract/route.ts :113 const response = await fetch(file.url, {
  • net nirholas-extract-llms-docs-e55dd99/src/app/api/sites/health/route.ts :60 const response = await fetch(url, {
  • net nirholas-extract-llms-docs-e55dd99/src/app/api/sites/suggest/route.ts :27 const response = await fetch(llmsTxtUrl, {
  • net nirholas-extract-llms-docs-e55dd99/src/app/api/sites/verify/route.ts :35 const response = await fetch(url, {
  • net nirholas-extract-llms-docs-e55dd99/src/app/api/split/route.ts :95 const response = await fetch(tryUrl, {
  • net nirholas-extract-llms-docs-e55dd99/src/app/api/validate-install/route.ts :25 const response = await fetch(url, {
  • net nirholas-extract-llms-docs-e55dd99/src/app/api/validate/route.ts :108 const response = await fetch(checkUrl, {
  • net nirholas-extract-llms-docs-e55dd99/src/app/batch/page.tsx :49 const response = await fetch('/api/batch', {
  • net nirholas-extract-llms-docs-e55dd99/src/app/directory/health/page.tsx :90 const response = await fetch(`/api/sites/health?${params}`)
show 17 more
  • net nirholas-extract-llms-docs-e55dd99/src/app/directory/page.tsx :52 const response = await fetch('/api/sites/health')
  • net nirholas-extract-llms-docs-e55dd99/src/app/extract/page.tsx :52 const response = await fetch(apiUrl);
  • net nirholas-extract-llms-docs-e55dd99/src/components/Stats.tsx :40 const response = await fetch('/api/analytics')
  • net nirholas-extract-llms-docs-e55dd99/src/components/directory/SiteCard.tsx :143 const response = await fetch(`/api/sites/verify?id=${site.id}`)
  • net nirholas-extract-llms-docs-e55dd99/src/components/install-generator/GitHubTab.tsx :50 const response = await fetch(`/api/generate-install?${params}`)
  • net nirholas-extract-llms-docs-e55dd99/src/components/install-generator/UrlTab.tsx :62 const response = await fetch(`/api/generate-install?${params}`)
  • net nirholas-extract-llms-docs-e55dd99/src/hooks/useExtraction.ts :42 const response = await fetch('/api/extract', {
  • net nirholas-extract-llms-docs-e55dd99/src/hooks/useVerification.ts :76 const response = await fetch(`/api/sites/verify?${params}`, {
  • net nirholas-extract-llms-docs-e55dd99/src/lib/docs-analyzer.ts :398 response = await fetch(url, {
  • net nirholas-extract-llms-docs-e55dd99/src/lib/download.ts :27 const response = await fetch('/api/download', {
  • net nirholas-extract-llms-docs-e55dd99/src/lib/extractor.ts :64 const response = await fetch(url, {
  • net nirholas-extract-llms-docs-e55dd99/src/lib/github-analyzer.ts :172 const response = await fetch(url, {
  • net nirholas-extract-llms-docs-e55dd99/src/lib/html-to-markdown.ts :349 const response = await fetch(url, {
  • net nirholas-extract-llms-docs-e55dd99/src/lib/install-md-parser.ts :303 const response = await fetch(url, {
  • net nirholas-extract-llms-docs-e55dd99/src/lib/sitemap-parser.ts :147 const response = await fetch(url, {
  • net nirholas-extract-llms-docs-e55dd99/src/lib/url-analyzer.ts :29 const response = await fetch(url, {
  • net nirholas-extract-llms-docs-e55dd99/src/lib/url-discovery.ts :364 const response = await fetch(url, {

secrets 2

  • secrets nirholas-extract-llms-docs-e55dd99/src/app/api/cache/route.ts :26 const expectedKey = process.env.ADMIN_KEY
  • secrets nirholas-extract-llms-docs-e55dd99/src/app/api/generate-install/route.ts :85 const anthropicKey = process.env.ANTHROPIC_API_KEY

tool registrations 11

  • extract_documentation nirholas-extract-llms-docs-e55dd99/mcp-server/src/index.ts :41
  • fetch_llms_txt nirholas-extract-llms-docs-e55dd99/mcp-server/src/index.ts :55
  • get_document_section nirholas-extract-llms-docs-e55dd99/mcp-server/src/index.ts :69
  • list_extracted_documents nirholas-extract-llms-docs-e55dd99/mcp-server/src/index.ts :87
  • get_full_documentation nirholas-extract-llms-docs-e55dd99/mcp-server/src/index.ts :101
  • get_agent_guide nirholas-extract-llms-docs-e55dd99/mcp-server/src/index.ts :115
  • verify_llms_txt nirholas-extract-llms-docs-e55dd99/mcp-server/src/index.ts :129
  • discover_documentation_urls nirholas-extract-llms-docs-e55dd99/mcp-server/src/index.ts :143
  • list_docs nirholas-extract-llms-docs-e55dd99/src/app/extract/page.tsx :491
  • search_docs nirholas-extract-llms-docs-e55dd99/src/app/extract/page.tsx :502
  • get_doc nirholas-extract-llms-docs-e55dd99/src/app/extract/page.tsx :524

install hooks 1

  • prepare nirholas-extract-llms-docs-e55dd99/mcp-server/package.json :14 npm run build

declared dependencies 31

  • @anthropic-ai/sdk@^0.71.2
  • @tsparticles/react@^3.0.0
  • @tsparticles/slim@^3.0.0
  • @types/js-yaml@^4.0.9
  • @types/react-syntax-highlighter@^15.5.13
  • clsx@^2.1.0
  • framer-motion@^11.0.0
  • js-yaml@^4.1.1
  • jszip@^3.10.1
  • lucide-react@^0.400.0
  • nanoid@^5.0.0
  • next@^16.3.0
show 19 more
  • react@^19.2.8
  • react-dom@^19.2.8
  • react-markdown@^10.1.0
  • react-syntax-highlighter@^16.1.0
  • tailwind-merge@^2.3.0
  • @testing-library/jest-dom@^6.9.1
  • @testing-library/react@^16.3.1
  • @types/node@^20.14.0
  • @types/react@^19.2.18
  • @types/react-dom@^19.2.4
  • @vitejs/plugin-react@^5.1.2
  • autoprefixer@^10.4.19
  • eslint@^9.39.5
  • eslint-config-next@^16.3.0
  • jsdom@^27.4.0
  • postcss@^8.4.38
  • tailwindcss@^3.4.4
  • typescript@^5.4.5
  • vitest@^4.0.17