{"_id":"@kevinwatt/yt-dlp-mcp","_rev":"39-b75d98f5c6e9972ee5088b2e0b4f391b","name":"@kevinwatt/yt-dlp-mcp","dist-tags":{"latest":"0.10.0"},"versions":{"0.5.1":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.5.1","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.5.1","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"2deda359ee87e89fc62fe72d0f119906375ccaf4","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.5.1.tgz","fileCount":5,"integrity":"sha512-AfkQ6ejBMP++nG2xZ8F090uxxAfKES0uPFGP+oXGX/T284FBt9k8FxEVam4E5n7l0pBbG81qwIqCKaiY3OcGow==","signatures":[{"sig":"MEUCIC/oYP6vmJGBPuTE9MpQWi3YPKuElMMV9idF6ZbgIaHqAiEApAnypSweB3InNTLfIC06WnF0xvVMx8JnsOrCVyAog38=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12187},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"81099a39a77245d5d7b2b002d519d606d1d71dc4","scripts":{"prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"YouTube yt-dlp MCP Server - Download YouTube content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.2","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","ts-node":"^10.9.2","typescript":"^5.6.3"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.5.1_1739213474459_0.15373700293070547","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.0","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.0","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"76069313c03af4826f316bb91b3b0e18127e9410","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.0.tgz","fileCount":5,"integrity":"sha512-JjUATe+s1OMw0/jF5AzMTYDjo0DY5lDyBqx5W73V9EfWL1HuKBr9411v5CqwAAF4RuU5iPuEDS9eHHfKrfacvw==","signatures":[{"sig":"MEYCIQC+4scEr3BU/CKjGaxBWbDBMG2H692YkiRuli/KGLJVaAIhAPZfvBqJtvsMtRugaC6p9deUCl//tC1cz/TZRtJJVmUd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13132},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"3dd7d10dc7c039135135a389f5aa6650f82fca43","scripts":{"prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"YouTube yt-dlp MCP Server - Download YouTube content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.2","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","ts-node":"^10.9.2","typescript":"^5.6.3"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.0_1739213981888_0.09819183804403453","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.1","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.1","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"02f2d642b5174c3019b6ff035c1f1d6ff35db2fa","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.1.tgz","fileCount":5,"integrity":"sha512-3lsqw+uoPHWuw6Lpx+lLf1NgSko1QUVew8Yugq8Pl5EK+t99iCv6Nh+N0wNBAhlvNksns7xUed4FVHXT0Un/Zg==","signatures":[{"sig":"MEUCIQC5TSbeREnZzpu9g3tw+vsnwG+IGgGUcOEErpGM0o5yZgIgI7kq2D8/qCs2hB23HN1a4/hvSnhVS62ZiHiba+z7hMo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13566},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"13dde88d2179ab89659838944b5065e9f19bf764","scripts":{"prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"YouTube yt-dlp MCP Server - Download YouTube content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.2","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","ts-node":"^10.9.2","typescript":"^5.6.3"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.1_1739214510668_0.5265595175247026","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.2","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.2","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"53c5bf0c8f54ca7179e5a3bb54940e3582b8e825","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.2.tgz","fileCount":5,"integrity":"sha512-c3Td7kZkdZOzelD+KksYK5NdAccmG8xrDrP2xFnO0nG5qrIB1JK6GfnxXV3rmZAgYPlAE7XDFDfUB/Fd+96uvw==","signatures":[{"sig":"MEUCIQCM73YC7vw7C9jGwCd4+PQzdVEp2XciuS2q/v/64vfpIwIgedcvaLySqsiFmf7c5ixKbR/HHnabqL2sn3Xgdoi7M6M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13535},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"13dde88d2179ab89659838944b5065e9f19bf764","scripts":{"prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"YouTube yt-dlp MCP Server - Download YouTube content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.2","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","ts-node":"^10.9.2","typescript":"^5.6.3"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.2_1739214863487_0.7514106388672006","host":"s3://npm-registry-packages-npm-production"}},"0.6.3":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.3","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.3","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"b78bd079b1ac549f823491930b458fcd75452d94","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.3.tgz","fileCount":5,"integrity":"sha512-So1HrYkaBbTUeUi6sUDb6Ngdi3BakNhvlAlrhVnmL1KxVK+fs9Sj24vHkvLvdjjv4UwE1/62QxyFi9KS3gKLxQ==","signatures":[{"sig":"MEQCIA/w303U1L5r1GnPgiLM4/b09AHIWs051mF80F4LxBYGAiA8WitBw982a15bAIydPmJXyaqmmFJ3VZ7Td177ex6zdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13648},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"d9ad402a3ddeb72c5086756603fd23a173369d58","scripts":{"prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"YouTube yt-dlp MCP Server - Download YouTube content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.2","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","ts-node":"^10.9.2","typescript":"^5.6.3"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.3_1739215172183_0.13895266849599097","host":"s3://npm-registry-packages-npm-production"}},"0.6.4":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.4","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.4","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"87253a394ce10dff1b44253c1b836dfb9269df0c","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.4.tgz","fileCount":5,"integrity":"sha512-Q5QWjWg8U7nx3bN49uswzZTsxJqMBcF8Bg7QCR/mLXeciBRUv9rMEh/YkXBBYpRPvuAbKqinL8yCbo5pADuh4g==","signatures":[{"sig":"MEUCIQCFMGf+FzFGM17E8gHNLDRdbjAZnN1MfUdvFP6PXUxl0gIgew/XDE1CA6dmoqETEduJWNyZ4JsXZJn4ez3AjAvkoj0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13648},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"a44d758ca69a67a87a8fec30ae8acf596985335c","scripts":{"prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"YouTube yt-dlp MCP Server - Download YouTube content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.2","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","ts-node":"^10.9.2","typescript":"^5.6.3"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.4_1739215308717_0.3561763925168928","host":"s3://npm-registry-packages-npm-production"}},"0.6.5":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.5","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.5","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"2cdfe3fbcd04b4d2682223c4f6a9401b0d953c33","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.5.tgz","fileCount":6,"integrity":"sha512-IzN14ZfBFNIFljF2CUC4FYbQl1K080vyQNSiquTq1ZLLoagXqFVoPCN3EgmC5XOwMuSra5zt7aEQMDE8PVhkPg==","signatures":[{"sig":"MEUCIQCJz/cxB5oF8JQIaJvCKYhPtwm54AeQcYHrfq1onR1mMwIgDDQO8jFrA5YNRdNvXMSq576IjANgfcnY+/zXx17O85s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14714},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"01a139ed5c54fce9f659fe55285e212ded772cca","scripts":{"prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"YouTube yt-dlp MCP Server - Download YouTube content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.2","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","ts-node":"^10.9.2","typescript":"^5.6.3"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.5_1739215478727_0.08857780485942923","host":"s3://npm-registry-packages-npm-production"}},"0.6.6":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.6","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.6","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"219706f061e5373bd233c58dd9436cca2f137f22","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.6.tgz","fileCount":6,"integrity":"sha512-OKeVVCLF7wZ11NdP3EmDwIB17oH9t+vQdbH2FbmZKDhhEoGQDm80De5e7HfgkQzo77n14NF4egWuyy14oEAkzw==","signatures":[{"sig":"MEUCIA25gcnDV2I2aqonRrqIH8wyTfMJtJYi9ssIOLyVBD3TAiEAyX1J9yx/xHusSGIu70KPw3OSqoqOREE3xl9Ah57I47A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14846},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"7d6c7eb862be42eb798c81116b30a939306ac0dc","scripts":{"prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"YouTube yt-dlp MCP Server - Download YouTube content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.3","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","ts-node":"^10.9.2","typescript":"^5.6.3"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.6_1739457981000_0.6729753132482528","host":"s3://npm-registry-packages-npm-production"}},"0.6.7":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.7","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.7","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"90b2905782330c6971ed8448bd75fac24f41cc28","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.7.tgz","fileCount":6,"integrity":"sha512-X3oOaEY5RjwarkN9Nk4DiVw8M6c/5AMKtUutSbBtRbmsyLpBPoZ1cfpvO7qpM+2lBjHvw8+JLES5taUwM4aJzQ==","signatures":[{"sig":"MEUCIQC08DepsLcpM/IIuVQbUhhF+X+++5F6guCovIUE8UJteAIgdZIQ6QkChT7J35t+jIHqy2dkwa3muVkM/+M2YjEoe+4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15117},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"6344f33318381a1a44d8be2c7adf21217569e031","scripts":{"prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"YouTube yt-dlp MCP Server - Download YouTube content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.3","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","ts-node":"^10.9.2","typescript":"^5.6.3"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.7_1739458375447_0.4761917709762422","host":"s3://npm-registry-packages-npm-production"}},"0.6.8":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.8","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.8","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"8869f4e070c3131f90985d6032f05cb406c8c84f","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.8.tgz","fileCount":6,"integrity":"sha512-QPv/fxwvb0ZQE0tAV5eVDk38qC3OHp4ysNIC+EMLQXgDgXX99XASFsJOQoqEz6r+4CLzGvVw97yj6YA1xylqpw==","signatures":[{"sig":"MEQCIGpCuwZmG4zYueMOJZGJbGOnEavAAauNkBrfKMy+auS8AiBo2eXdT16+NuyRXXnp9N5hTgzadmfhwJgNCL3OsMwc6g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15162},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"613d26ddc4a13cdd7e3869053c2e5db1e61021f1","scripts":{"prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"YouTube yt-dlp MCP Server - Download YouTube content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.3","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","ts-node":"^10.9.2","typescript":"^5.6.3"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.8_1739458503658_0.9151728416659985","host":"s3://npm-registry-packages-npm-production"}},"0.6.9":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.9","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.9","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"f07843877ca65acb028ca53602b58662382251e5","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.9.tgz","fileCount":6,"integrity":"sha512-iv37+tWpPK1lAwmJFRlAfZPhLMizHBMX5oc3ReGVfTLAVUx11goGgICrHhE6qq540jB4VisR4W1NPHFFIkGJPw==","signatures":[{"sig":"MEQCICGHyXsSo4EVDZRlurBYvesJecSepHbHa/nT/RM0EpInAiABSozLnb02qDrIPVJ7oAqJpciByH87we6HyhdWv85Nfw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":18991},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"891654dc0887d032aa3b409dc9bc77e7fc4f1d3d","scripts":{"prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"YouTube yt-dlp MCP Server - Download YouTube content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.3","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","ts-node":"^10.9.2","typescript":"^5.6.3"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.9_1739599047561_0.10643269643045916","host":"s3://npm-registry-packages-npm-production"}},"0.6.10":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.10","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.10","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"3ab2820a1ccc95d20cf6fdd77ae61e821e4a8fc9","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.10.tgz","fileCount":6,"integrity":"sha512-79vNhLOZvtjDlZzGfh8y2hZjlBPH7Az1W425a/oQjuDo93Fgg8VtnKebe46AdDAmM37vboTwZNDLwXncUKQcMg==","signatures":[{"sig":"MEYCIQDQ8azvjSreFvUlqFlgSSpKk4MYaSyqllkIUwGUMKBNSgIhAImFiVVJ1nZ4B2L72b8RaFCt/LKE7/1KV9UfYwizoHAX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32497},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"8b1a44d7b4d9b5130241e1e268b0272b5688ba48","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"yt-dlp MCP Server - Download video content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.3","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.10_1740069278477_0.34996471342136415","host":"s3://npm-registry-packages-npm-production"}},"0.6.11":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.11","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.11","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"6095381f49b15a03d3047bc441fa97189b375f4d","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.11.tgz","fileCount":6,"integrity":"sha512-7MoLkH8gcMeWH/nlZbuQR2ie4EVcz7bm72JUCEFhTkvQjiY9TmCiga9zz8HETAfLi0U0G5J8o9mbAFAAIq1N+A==","signatures":[{"sig":"MEUCIQC7rZbwq83/SO6idIM11RDcXksaN2vVQ0sIjj5kWoZ1ZgIgcyfVbyDFvdEBwStPT/wHlaER9bgpTaAKteqQ9PLs9vA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":41156},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"55078b0f8e58c2791e580aaf2294e2fdc9722782","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"yt-dlp MCP Server - Download video content via Model Context Protocol","directories":{},"_nodeVersion":"20.18.3","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.11_1740070667271_0.361774541175093","host":"s3://npm-registry-packages-npm-production"}},"0.6.12":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.12","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.12","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"1d24a49f4c48a128a320fc6a5c235cadc239bd61","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.12.tgz","fileCount":6,"integrity":"sha512-ACQj0nEm/t76Pkz2qV2/YTkDO/QcN+eQyDXu9BAptcnccJ3pGO7kbyKJ6bgbvvWfsnTDHzBlZxZvZOftNnZckg==","signatures":[{"sig":"MEYCIQC45hv3uD/iuBzebUBnHgmKy8P3nASKxVMhuRHBSGxnfwIhAONphOUpUfWVcTwF+ias5u6j20+jL41eVq+PUX8raDHP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33885},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"cbf82eee32dbcb68a157efb4cdc01dd5be7bddd5","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"yt-dlp MCP Server - Download video content via Model Context Protocol","directories":{},"_nodeVersion":"20.16.0","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.12_1740120941594_0.5311475405080799","host":"s3://npm-registry-packages-npm-production"}},"0.6.13":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.13","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.13","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"c6b80b756dc032eddf99fed206cbf40e3044610a","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.13.tgz","fileCount":6,"integrity":"sha512-LsAIwI/rKkCg7PvsBmnhvOjzuIdHiXLAN6rDKDuk641xpWc10aQqEjgQaQiRLQdGD8JXrRD2bkFGHZtyneHXNA==","signatures":[{"sig":"MEUCIHclCveEtFH05ONRuxOBK/FR0ddGFi12Zy/a5gLqlHXrAiEA3YFqoIxf2ZGRGPO9RZRUJP3oeLt46qzNVz+BvR9lX+w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33439},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"c8d219948677b1e5ee858f3e6b301299c4b6664d","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"yt-dlp MCP Server - Download video content via Model Context Protocol","directories":{},"_nodeVersion":"20.16.0","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.13_1740121954818_0.7096589251782397","host":"s3://npm-registry-packages-npm-production"}},"0.6.14":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.14","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.14","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"5cb26a95d55bdb15d8088fbdd7282bdac2efe226","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.14.tgz","fileCount":6,"integrity":"sha512-pKV4oGFnXBdDUx8uWcVhXLnrTzA12KPP0dmSTJhEcK+gWH3LmgSjBEkHudVo2dm2HOPrlWBFszsg/5ZgRRCyqQ==","signatures":[{"sig":"MEUCIQDAvVfdV+zv5imCh1laDDqcHCK5LZGwlnU3qPHZZz53fgIgUul2zLOM3F0I8YV8KUg4eHlBhxEnpi8xhM/AHZ06Z80=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33690},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"614d865b05c314dc53f3fb344f8a054823dc68b3","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"yt-dlp MCP Server - Download video content via Model Context Protocol","directories":{},"_nodeVersion":"20.16.0","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.14_1740123418683_0.5750869874997111","host":"s3://npm-registry-packages-npm-production"}},"0.6.15":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.15","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.15","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"ef9002b6a10824dd6749204cce6cf1588db3d7f5","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.15.tgz","fileCount":6,"integrity":"sha512-COfyXFv+cHWgrMJDJLm09kWF1SLVot0P0dIWAjt6faSAdHcrVezlm0Xceaaq1Az307g7DwG7gRqgZ0BQ6ifnDw==","signatures":[{"sig":"MEQCIEsHnXOdzvOHOmEeoYn/bd7ECGh7EXW+R1DqYwClDZ3WAiB0QiEkTxP9Dr9ShlX96PoLm8wWm5eXXIKJkJL6waz+IA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33075},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"7537cd332619ac7f1b9971d50dc636a2bc22dfba","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"yt-dlp MCP Server - Download video content via Model Context Protocol","directories":{},"_nodeVersion":"20.16.0","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.15_1740123668589_0.6407234248480582","host":"s3://npm-registry-packages-npm-production"}},"0.6.16":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.16","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.16","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"e830f7381d1438feb6ba6838e306d570ad5bcb04","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.16.tgz","fileCount":6,"integrity":"sha512-2QR7Lq9ZWsaduukQ/sjj3EvWLsfZKZU/ncswmZ1o6zYLgB/AttzLDko09f5bcf3HkyNed6PlvMn3m4VBP9ykjg==","signatures":[{"sig":"MEUCIQDYJIlRS4KLdLDzuasmAaA/gzCFqAt0GuQUNqN8RTDcYAIgFpJ9FDzmYiQXzv78WNYP2Ymvaae6Evjxj2PCj6Hc0Ns=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":33164},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"e1d09fc3caeb8b37c0afc46e9a3b8863762b1976","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"yt-dlp MCP Server - Download video content via Model Context Protocol","directories":{},"_nodeVersion":"20.16.0","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.16_1740123789123_0.4719878573159939","host":"s3://npm-registry-packages-npm-production"}},"0.6.17":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.17","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.17","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"30cdc09428ab92733554defd47fe8a90b9012e3b","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.17.tgz","fileCount":6,"integrity":"sha512-FKfoogzafGp+vptvZQIU/Aie35XFeuHrOVl6cqDfUrYiAZFAf767aIuwqurT9HJg2cA8WwEIkMEUWQGLnvwcKg==","signatures":[{"sig":"MEQCIHhRB7lQ9Q6Uhh872EqAYj+wNWGnRxE6MDkvIpzVEGujAiBcJIrTemoZFFeX3c7w8IWa9Xcwjas9KxMxhCC2lprexg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31455},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"f9c93a04635e432d4ec6c8f93c52a9ee5f30889e","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"yt-dlp MCP Server - Download video content via Model Context Protocol","directories":{},"_nodeVersion":"20.16.0","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.17_1740124004999_0.6355244166793117","host":"s3://npm-registry-packages-npm-production"}},"0.6.19":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.19","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.19","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"ef4a6cc28af512bc0621dd5e22bc42322dbf9903","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.19.tgz","fileCount":6,"integrity":"sha512-3psK9YzDyPCEufl9+reVu0LyZvJdtDpFV52HFOJKew/nejO+G4LhUkVq9drI8yNM5h0NLkAgqOHxdqCHToNygg==","signatures":[{"sig":"MEYCIQD/aVkb/u5ceCEN0SMEmqwB4gqLggji9fz6nnRm5ZZAagIhAOf+6EjEcGXICOfpJFPziXdvsUAkVSK46K66rvvyjy+n","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31736},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"b0eeb5f831e5d88c71f5dbb482f7946c0eeb2876","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"yt-dlp MCP Server - Download video content via Model Context Protocol","directories":{},"_nodeVersion":"20.16.0","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.19_1740124344668_0.8352400638267996","host":"s3://npm-registry-packages-npm-production"}},"0.6.20":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.20","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.20","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"5af7b2a663d6c2c8adf1c53c80de7bc24006a5ff","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.20.tgz","fileCount":6,"integrity":"sha512-OyDX4Qxek673UZUThV6SosN3j13T8rQOdlIZcYJzSTk3D29CUUyvCA/ABtSD5tx5RjPHhddwNvLO1ihTToDLoQ==","signatures":[{"sig":"MEQCIEUdmrU+fyJft/5a7SBQLKqRRzM8Z2WRAT/OOZ5AmJ6vAiBV8wj9/qi7lns6+oC+pIXkjNVssAYaI6PrFnx+dCakIQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":31736},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"5523b1dedd2f9269d0f0ae8306f11ad01012e314","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"yt-dlp MCP Server - Download video content via Model Context Protocol","directories":{},"_nodeVersion":"20.16.0","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.20_1740124462434_0.7940749062982322","host":"s3://npm-registry-packages-npm-production"}},"0.6.21":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.21","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.21","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"caaf4d98bb66b32681e7b4fc993a597cebca1abc","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.21.tgz","fileCount":6,"integrity":"sha512-Bj0bYRW1Gy42/HcQMvtYkjET2u3jUWyJy8dTheKr99aceSLqkWOPjEY3O/V+SoLhpE9JADpPyrjeMubyVIwjhQ==","signatures":[{"sig":"MEYCIQCo3VFokTGoCmLh8ortZ6WE7CGmx796EwkU7wpAWQPjkQIhAJGFX4TAq4e3dPWddPSgJRQnUVy+GKDAy87z/lFvdRSp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":32291},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"58384bb1a29723674c65114985cb7af160356f84","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"yt-dlp MCP Server - Download video content via Model Context Protocol","directories":{},"_nodeVersion":"20.16.0","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.21_1740127343999_0.4501215346977372","host":"s3://npm-registry-packages-npm-production"}},"0.6.22":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.22","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.22","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"60f5fc8981b21c4e1273508c13034e8c1cccbafe","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.22.tgz","fileCount":6,"integrity":"sha512-DrZGTFVj3PaFJri+EOmdZ5B8Uvh0sT+JB78sZePnbw7Vs1hecTGY7xgbxkHelhBhsuip6sa8q4AdczEEuoy6ng==","signatures":[{"sig":"MEUCIDOkIyr1lPpXgjthjzj234psTJKRXSBEITHlDBuV+R5wAiEAkVoPPDuYGRAcC92lOnLa6UWvw3gqDth1JlvWMMsj/7Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38317},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"b3e8ed5f58aa33c5f1b834d40cf6dd6aa288bf7e","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.16.0","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.22_1740129280074_0.5336832297967422","host":"s3://npm-registry-packages-npm-production"}},"0.6.23":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.23","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.23","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"6d5781c075deb95b37934c158863235aa533b83f","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.23.tgz","fileCount":6,"integrity":"sha512-9j5rB2IWV4/ied7SDjrcuk5bHxqDhiRzdhHimNq11h/c3bcZMbSTKG5qGCGWghuDn4O6wmziWanUwevO/YOoow==","signatures":[{"sig":"MEQCIG39CfszbDRrxQzjZqZtiXyHsg/KTDJBPHP3HA4RCtz0AiBgWXDwoiuukekihUkfLbupqTchEmHaJ2ec2DrHAIY8bw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":38317},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"c4dcc0eda2fba8d48abe45f5fcaa6eafa15e79b7","scripts":{"test":"node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.2","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.16.0","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.23_1740130029845_0.6737844477074104","host":"s3://npm-registry-packages-npm-production"}},"0.6.24":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.24","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.24","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"ee9632dd1f769669d4fc8d9234fa445ffa505b42","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.24.tgz","fileCount":21,"integrity":"sha512-14W3bb0c4HMKsM/454MaLxVgAIzROaka2VbwqLfzMrN5EUzc08asTV7M4oN4XQIgHtn6lhmvPyifOLnWbS/pCQ==","signatures":[{"sig":"MEUCIBLiItQniPmcIolMNZ8wNFGsDVZmVxCjleZsBQf+j2cQAiEA9ZSB0Ga1BQDe9OIQXdfnqBeYvpknXJgKx+ux0xl+ypQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54699},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"e9a0e557628181714c475a9f055d38dd42aa4da7","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.18.3","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.24_1740156326594_0.45237061266440226","host":"s3://npm-registry-packages-npm-production"}},"0.6.25":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.25","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.25","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"abbd6ffa14c1718e7eb8a718784d9f2fe7c866fa","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.25.tgz","fileCount":21,"integrity":"sha512-0tJpH7z/f4lloKXBbi5D+9WpQl+wNKtM368ncpg5yaYVdRpNRLXIegP/8flee85BnC7s/rE3OXIz6Czk1JdWVw==","signatures":[{"sig":"MEUCIQCMO7LGTl/clxuLJTo4FKD6XbMVK94T/5EJjDeUEtuEygIgKqUj7hdyPxXEkx0sEPwd+9lvkAXvv83kNo73aiUPFQo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":54725},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"c39fd8785c4d16b2087bc567e068bdf766589d8a","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.18.3","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.25_1740165966227_0.32483041910066746","host":"s3://npm-registry-packages-npm-production"}},"0.6.26":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.26","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.26","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"848c92f23e8a0deaa91de9068156c142ee7fd83d","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.26.tgz","fileCount":21,"integrity":"sha512-oUHa05GJ8bMJINQWLZl6w1Vu/g7gWWEDHBBF0v+CVCVe6lFgye6SjLbA5BYwJ2tVd+LFsqedNsCVUP+DeRYUUQ==","signatures":[{"sig":"MEYCIQCcgVVWkyZUWUW/+XY23GalHAenbDC3iIzMY7hEHNMe/gIhAKbnwILJ2Siu1HAwQ2Odr/FN1rrtSKZZgBUd8f15JHDi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":56180},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"944b0211c67a4d57f810d2a72f426d46a5a663c4","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc && shx chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.8.2","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.18.3","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.26_1740261273040_0.7617243622073901","host":"s3://npm-registry-packages-npm-production"}},"0.6.27":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.27","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.27","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"73769266acebd2de061ea5bf853d287983b01e6b","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.27.tgz","fileCount":24,"integrity":"sha512-Mfeqbvj+vObwb5RGFvV+OMxmGIrS347HSroU3WCxUeSWUg8mFIm6XqbkdjbjIuSubk4ukxEqlk0XAnkd4YcxXA==","signatures":[{"sig":"MEYCIQDoW9WlsCPmBRsgrOsTllkKzy2C9YRX0gti6zw0gGU9CgIhAIVwRK1Y9GaBc2Koqf7qXAvy1t5ocwDyrke50IAfRCM4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76651},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"5aecaa3b201bed0965a2731a4dc9c66dcfe07ed9","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc --skipLibCheck && chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"11.4.2","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.19.1","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.27_1753649173260_0.11929351053987136","host":"s3://npm-registry-packages-npm-production"}},"0.6.28":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.6.28","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.6.28","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"a5c7b5cc117e93802f1771f52f8f8a668d08ea3d","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.6.28.tgz","fileCount":27,"integrity":"sha512-csrurauVwJUMN8GaL8e3jWbaSRG+/C6yOcV7iIMsUBULx3ADgJcqcVApQ2ONFH2lSuxu6UV+ANml5Kud7wQYtA==","signatures":[{"sig":"MEYCIQDcBQibepvoC8K2KLgeADzP5SS+SVsA4IrhO1+VO7kEUAIhAKYcAVMhko4iiIYqeHMVYRvlMNsQZ8DfWs0BcIVdt2WB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95348},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"c5e84c326e93b74ed5a1ec2321f1ca0f34ac9fec","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc --skipLibCheck && chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"11.4.2","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.19.1","dependencies":{"rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.6.28_1755071607477_0.5323923065353446","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.7.0","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.7.0","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"51f594fdf8b72f9f40ba2975f5116c42ff9bafc9","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.7.0.tgz","fileCount":27,"integrity":"sha512-W/sO6rSMUrtMZLyr0IS7M9/JoTaXfIzmEHriowc9mmwUNiEDLOm268PllXRW8bzx9/uqShTMJBpPkRnrGqsGfg==","signatures":[{"sig":"MEQCIHAmrsUmnuorxiVkn68C0TsOd79APxd4SUSSGiKRw7mpAiB9NsqVmR7A6AnGfSKhfAugOe2Q2vrY6M4LTRyXIw9PEA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":131499},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"c5e84c326e93b74ed5a1ec2321f1ca0f34ac9fec","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc --skipLibCheck && chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"11.4.2","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.19.1","dependencies":{"zod":"^4.1.12","rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.7.0_1760809695796_0.34424155460703276","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.8.0","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.8.0","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"4d51833e662729d01818a888774540cf050cf0f3","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.8.0.tgz","fileCount":27,"integrity":"sha512-4PVTYCS9wBuUV/eThq6jqN17l//a0rVaoI8PCNxmnc3UI9wq5aa31kdGN4/54dsOsw9aF2WM/FcQoX/a8p0Y7A==","signatures":[{"sig":"MEUCIQDATG4IFc4QCIaQupCxqMKf6xcbtR0WdEWbv2DagC75TwIgCnZIxMeGQ+vnAw9BG+rLtXLke9F9ISKqgj+KMr85IOY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":138530},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"72409c7e828dab0f65c6fec38cbb945efe948d1f","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc --skipLibCheck && chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"9.2.0","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.19.4","dependencies":{"zod":"^4.1.12","rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.8.0_1765016899347_0.13771595506935252","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.8.1","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.8.1","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"ffa8210e2120a63f8b65cbf24b16bf38a55572d8","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.8.1.tgz","fileCount":27,"integrity":"sha512-crTmyoS5JKDh34gCZwZg6k/zPC6UT9hS4/LzpxBVBvMpk7B/CEUTHGVFSdmWCRRD/yILUgCLUSADtTvUzY9VJw==","signatures":[{"sig":"MEYCIQDKIXZAo2EuthDg/MwWiFgfVDsMipcSMOYgXACfLO2kLgIhAKBUpY4QP7FhQCv7BTyOAaVEW7OU4XbYUwhrYyTMvNk0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":138565},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"11464c6c24b7a1c53d0918c89f22dbe112be1013","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc --skipLibCheck && chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"9.2.0","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.19.4","dependencies":{"zod":"^4.1.12","rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.8.1_1765139881570_0.5708027626873151","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.8.2","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.8.2","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"104d9a5d7076993ef20aa71b46b7ed62a99a020f","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.8.2.tgz","fileCount":27,"integrity":"sha512-z9jTrT4WQ1DqkuCyVA04seKg/067Bdh637yZSHJfa9mclXyLyhUJpLcTdBViCMCZuwYjgx/ek4C2xPFezBQkfg==","signatures":[{"sig":"MEYCIQCGTlHYVlKeoLHm7/FtOlUnwmjDtoyfrt4bhqbILNKhOgIhAOows4ap58Ylmu3t5vOzHEWWZe30TakjbihYCA93EtOX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":140770},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"748255fe01ee79b3d77557967e1fd492cf218902","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc --skipLibCheck && chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"9.2.0","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.19.4","dependencies":{"zod":"^4.1.12","rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.8.2_1765827299960_0.6158686112352976","host":"s3://npm-registry-packages-npm-production"}},"0.8.3":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.8.3","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.8.3","maintainers":[{"name":"kevinwatt","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"daeebe5972ce3dcebd9276636b1ca0bac6bce5a2","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.8.3.tgz","fileCount":30,"integrity":"sha512-YRW+giUiRoSQ8q4rHJOHL7fCOxfi38HT/dt79vgqEEnFBizR+o/wbM0zdeXeQSvpzHfCgty2CWjdb/yqykeVog==","signatures":[{"sig":"MEQCIBL+aHCfk0kUeA5y4/NOaUIMQTcuwNjqE/rD++MOk2DOAiApPDXQvpemLVy7mxg87/sI0XA8EILCUGElORjVS99vVA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":169468},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"910133f3821d548ac99c443b2dc8f17f38978ef5","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc --skipLibCheck && chmod +x ./lib/index.mjs"},"_npmUser":{"name":"kevinwatt","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"9.2.0","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.19.4","dependencies":{"zod":"^4.1.12","rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.8.3_1766607063581_0.4655190828506168","host":"s3://npm-registry-packages-npm-production"}},"0.8.4":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.8.4","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.8.4","maintainers":[{"name":"funmulakevin","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"d3bfe6fc8a4d338b6a46b4b1385c8cf7e1c70836","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.8.4.tgz","fileCount":30,"integrity":"sha512-TE8mjrA8Lb6mdedqlfpKnEz3xLwf0jhGzykyQcB1WVr8y7s3euzb1FNyTH798ON54nx8/HUUtcnni0/gFXxGJg==","signatures":[{"sig":"MEUCIE20mKWuD+Vf9B4/9MzbZiFkxWGkGarp9Fe5zUV6LgaDAiEAqjhC2PrtuGDxw3hGPdUw8sCBODqqspHzo+v4VCnFBKo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":171086},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"0e5a30d10c0062a008cc122feaf93b4d753662d9","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc --skipLibCheck && chmod +x ./lib/index.mjs"},"_npmUser":{"name":"funmulakevin","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"9.2.0","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"20.19.4","dependencies":{"zod":"^4.1.12","rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"0.7.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.8.4_1767549472955_0.4864352742714022","host":"s3://npm-registry-packages-npm-production"}},"0.8.5":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.8.5","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.8.5","maintainers":[{"name":"funmulakevin","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"c4f689aad0b4eed1875e87777b0c8ef204575307","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.8.5.tgz","fileCount":30,"integrity":"sha512-e0b00TAOZwjkPY3cepYsILR8k/Bqx5Y1Q96Kj6VOZEh0admaaACkqr+5V7eJFDfFAlTIwNwYClTm1j8VHajsyg==","signatures":[{"sig":"MEUCIQD+UtsOAHjw74O5S3GXGJkQW4fLQiMQ0axYINdaqoVe2QIgF6hWwEhCveLBpabkv9eiE5tC3nYZ8qoHyeBoa7JA/O4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":165830},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"5b14a47f83ce9cb28b268645e191e25d2fc118a8","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc --skipLibCheck && chmod +x ./lib/index.mjs"},"_npmUser":{"name":"funmulakevin","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.7","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.12","rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.8.5_1779295882737_0.9390041493383072","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.9.0","keywords":["mcp","youtube","yt-dlp","dive","llm"],"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","_id":"@kevinwatt/yt-dlp-mcp@0.9.0","maintainers":[{"name":"funmulakevin","email":"k@funmula.com"}],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"dist":{"shasum":"cc4d72afc713a30c580c054e046485e195e9ab52","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.9.0.tgz","fileCount":45,"integrity":"sha512-B6aH/ndYNJV84mYvYtWEusug8gSfVPfoWMaPegsJBqz1ZOgMxAraqIHC7GuDhLF/f/fDsv1+/nHgnjxyRZQeSw==","signatures":[{"sig":"MEYCIQD5gKG+c7msN4ieJbD8PSKMgommlymNKLcbnMXL7uNcQwIhAIu/7U1TIhEQ7hoyQQkBEcZ85qzy1vNvscZFcajmqepd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":206949},"main":"./lib/index.mjs","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"gitHead":"f480d27eace227ab68a301155c604d811c50d4f5","scripts":{"test":"PYTHONPATH= PYTHONHOME= node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit","prepare":"tsc --skipLibCheck && chmod +x ./lib/index.mjs"},"_npmUser":{"name":"funmulakevin","email":"k@funmula.com"},"repository":{"url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git","type":"git"},"_npmVersion":"10.9.7","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^4.1.12","rimraf":"^6.0.1","spawn-rx":"^4.0.0","@modelcontextprotocol/sdk":"^1.29.0"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.3.4","jest":"^29.7.0","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3","@types/jest":"^29.5.14","@jest/globals":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/yt-dlp-mcp_0.9.0_1779297282010_0.5735403779630293","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@kevinwatt/yt-dlp-mcp","version":"0.10.0","description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","keywords":["mcp","youtube","yt-dlp","dive","llm"],"homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"repository":{"type":"git","url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git"},"bin":{"yt-dlp-mcp":"lib/index.mjs"},"main":"./lib/index.mjs","scripts":{"prepare":"tsc --skipLibCheck && chmod +x ./lib/index.mjs","test":"PYTHONPATH= PYTHONHOME= YTDLP_IGNORE_CONFIG=1 node --experimental-vm-modules node_modules/jest/bin/jest.js --detectOpenHandles --forceExit"},"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","type":"module","exports":{".":{"import":"./lib/index.mjs"}},"dependencies":{"@modelcontextprotocol/sdk":"^1.29.0","rimraf":"^6.0.1","spawn-rx":"^4.0.0","zod":"^4.1.12"},"devDependencies":{"@jest/globals":"^29.7.0","@types/jest":"^29.5.14","jest":"^29.7.0","shx":"^0.3.4","ts-jest":"^29.2.5","ts-node":"^10.9.2","typescript":"^5.6.3"},"_id":"@kevinwatt/yt-dlp-mcp@0.10.0","gitHead":"9c98bcbac091889d5c8f39e485b32ab040085ae8","_nodeVersion":"22.22.1","_npmVersion":"10.9.2","dist":{"integrity":"sha512-LfGEUNru6SYYhpnG/1wRSV+enTgYREbTDfhv5o07Q8gZ98pARwvyFzHoDm5QiC2gKZHOjlqi/stTRyclmKtANA==","shasum":"44245e6329fc0dce2f4e99f9e0e4e71efd1366c7","tarball":"https://registry.npmjs.org/@kevinwatt/yt-dlp-mcp/-/yt-dlp-mcp-0.10.0.tgz","fileCount":45,"unpackedSize":220323,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCuVIQN0bz7WHhZBK/v1XgauGLFPVTw1YTcQmqM3oGoUgIhAO92Nrc8j+MGdhKl0m9f661m5ZF682ZEgM94Dy1BTfUO"}]},"_npmUser":{"name":"funmulakevin","email":"k@funmula.com"},"directories":{},"maintainers":[{"name":"funmulakevin","email":"k@funmula.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/yt-dlp-mcp_0.10.0_1786446958036_0.3380861086810818"},"_hasShrinkwrap":false}},"time":{"created":"2025-02-10T18:51:14.377Z","modified":"2026-08-11T11:15:58.358Z","0.5.1":"2025-02-10T18:51:14.628Z","0.6.0":"2025-02-10T18:59:42.087Z","0.6.1":"2025-02-10T19:08:30.953Z","0.6.2":"2025-02-10T19:14:23.666Z","0.6.3":"2025-02-10T19:19:32.347Z","0.6.4":"2025-02-10T19:21:48.877Z","0.6.5":"2025-02-10T19:24:38.906Z","0.6.6":"2025-02-13T14:46:21.190Z","0.6.7":"2025-02-13T14:52:55.624Z","0.6.8":"2025-02-13T14:55:03.822Z","0.6.9":"2025-02-15T05:57:27.765Z","0.6.10":"2025-02-20T16:34:38.619Z","0.6.11":"2025-02-20T16:57:47.456Z","0.6.12":"2025-02-21T06:55:41.830Z","0.6.13":"2025-02-21T07:12:35.004Z","0.6.14":"2025-02-21T07:36:58.845Z","0.6.15":"2025-02-21T07:41:08.835Z","0.6.16":"2025-02-21T07:43:09.284Z","0.6.17":"2025-02-21T07:46:45.225Z","0.6.19":"2025-02-21T07:52:24.936Z","0.6.20":"2025-02-21T07:54:22.581Z","0.6.21":"2025-02-21T08:42:24.222Z","0.6.22":"2025-02-21T09:14:40.294Z","0.6.23":"2025-02-21T09:27:10.024Z","0.6.24":"2025-02-21T16:45:26.857Z","0.6.25":"2025-02-21T19:26:06.404Z","0.6.26":"2025-02-22T21:54:33.265Z","0.6.27":"2025-07-27T20:46:13.457Z","0.6.28":"2025-08-13T07:53:27.647Z","0.7.0":"2025-10-18T17:48:15.985Z","0.8.0":"2025-12-06T10:28:19.487Z","0.8.1":"2025-12-07T20:38:01.707Z","0.8.2":"2025-12-15T19:35:00.094Z","0.8.3":"2025-12-24T20:11:03.712Z","0.8.4":"2026-01-04T17:57:53.126Z","0.8.5":"2026-05-20T16:51:22.966Z","0.9.0":"2026-05-20T17:14:42.174Z","0.10.0":"2026-08-11T11:15:58.191Z"},"bugs":{"url":"https://github.com/kevinwatt/yt-dlp-mcp/issues"},"author":{"name":"Dewei Yen","email":"k@funmula.com"},"license":"MIT","homepage":"https://github.com/kevinwatt/yt-dlp-mcp#readme","keywords":["mcp","youtube","yt-dlp","dive","llm"],"repository":{"type":"git","url":"git+https://github.com/kevinwatt/yt-dlp-mcp.git"},"description":"An MCP server implementation that integrates with yt-dlp, providing video and audio content download capabilities (e.g. YouTube, Facebook, Tiktok, etc.) for LLMs.","maintainers":[{"name":"funmulakevin","email":"k@funmula.com"}],"readme":"# 🎬 yt-dlp-mcp\n\n<div align=\"center\">\n\n**A powerful MCP server that brings video platform capabilities to your AI agents**\n\n[![npm version](https://img.shields.io/npm/v/@kevinwatt/yt-dlp-mcp.svg)](https://www.npmjs.com/package/@kevinwatt/yt-dlp-mcp)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Node.js Version](https://img.shields.io/badge/node-%3E%3D18-brightgreen)](https://nodejs.org/)\n[![TypeScript](https://img.shields.io/badge/TypeScript-5.6-blue)](https://www.typescriptlang.org/)\n\nIntegrate yt-dlp with Claude, Dive, and other MCP-compatible AI systems. Download videos, extract metadata, get transcripts, and more — all through natural language.\n\n[Features](#-features) • [Installation](#-installation) • [Tools](#-available-tools) • [Usage](#-usage-examples) • [Documentation](#-documentation)\n\n</div>\n\n---\n\n## ✨ Features\n\n<table>\n<tr>\n<td width=\"50%\">\n\n### 🔍 **Search & Discovery**\n- Search YouTube with pagination\n- JSON or Markdown output formats\n- Filter by relevance and quality\n\n### 📊 **Metadata Extraction**\n- Comprehensive video information\n- Channel details and statistics\n- Upload dates, tags, categories\n- No content download required\n\n### 📝 **Transcript & Subtitles**\n- Download subtitles in VTT format\n- Generate clean text transcripts\n- Multi-language support\n- Auto-generated captions\n\n</td>\n<td width=\"50%\">\n\n### 🎥 **Video Downloads**\n- Resolution control (480p-1080p)\n- Video trimming support\n- Platform-agnostic (YouTube, Facebook, etc.)\n- Saved to Downloads folder\n\n### 🎵 **Audio Extraction**\n- Best quality audio (M4A/MP3)\n- Direct audio-only downloads\n- Perfect for podcasts & music\n\n### 🛡️ **Privacy & Safety**\n- No tracking or analytics\n- Direct downloads via yt-dlp\n- Zod schema validation\n- Character limits for LLM safety\n\n</td>\n</tr>\n</table>\n\n---\n\n## 🚀 Installation\n\n### Prerequisites\n\n**Install yt-dlp** on your system:\n\n<table>\n<tr>\n<th>Platform</th>\n<th>Command</th>\n</tr>\n<tr>\n<td>🪟 <strong>Windows</strong></td>\n<td><code>winget install yt-dlp</code></td>\n</tr>\n<tr>\n<td>🍎 <strong>macOS</strong></td>\n<td><code>brew install yt-dlp</code></td>\n</tr>\n<tr>\n<td>🐧 <strong>Linux</strong></td>\n<td><code>pip install yt-dlp</code></td>\n</tr>\n</table>\n\n### Getting Started\n\nAdd the following config to your MCP client:\n\n```json\n{\n  \"mcpServers\": {\n    \"yt-dlp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@kevinwatt/yt-dlp-mcp@latest\"]\n    }\n  }\n}\n```\n\n### MCP Client Configuration\n\n<details open>\n<summary><strong>Dive</strong></summary>\n\n1. Open [Dive Desktop](https://github.com/OpenAgentPlatform/Dive)\n2. Click **\"+ Add MCP Server\"**\n3. Paste the config provided above\n4. Click **\"Save\"** and you're ready!\n\n</details>\n\n<details>\n<summary><strong>Claude Code</strong></summary>\n\nUse the Claude Code CLI to add the yt-dlp MCP server ([guide](https://docs.anthropic.com/en/docs/claude-code/mcp)):\n\n```bash\nclaude mcp add yt-dlp npx @kevinwatt/yt-dlp-mcp@latest\n```\n\n</details>\n\n<details>\n<summary><strong>Claude Desktop</strong></summary>\n\nAdd to your `claude_desktop_config.json`:\n\n- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`\n- Windows: `%APPDATA%\\Claude\\claude_desktop_config.json`\n- Linux: `~/.config/Claude/claude_desktop_config.json`\n\n```json\n{\n  \"mcpServers\": {\n    \"yt-dlp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@kevinwatt/yt-dlp-mcp@latest\"]\n    }\n  }\n}\n```\n\n</details>\n\n<details>\n<summary><strong>Cursor</strong></summary>\n\nGo to `Cursor Settings` -> `MCP` -> `New MCP Server`. Use the config provided above.\n\n</details>\n\n<details>\n<summary><strong>VS Code / Copilot</strong></summary>\n\nInstall via the VS Code CLI:\n\n```bash\ncode --add-mcp '{\"name\":\"yt-dlp\",\"command\":\"npx\",\"args\":[\"-y\",\"@kevinwatt/yt-dlp-mcp@latest\"]}'\n```\n\nOr follow the [MCP install guide](https://code.visualstudio.com/docs/copilot/chat/mcp-servers#_add-an-mcp-server) with the standard config from above.\n\n</details>\n\n<details>\n<summary><strong>Windsurf</strong></summary>\n\nFollow the [configure MCP guide](https://docs.windsurf.com/windsurf/cascade/mcp#mcp-config-json) using the standard config from above.\n\n</details>\n\n<details>\n<summary><strong>Cline</strong></summary>\n\nFollow [Cline MCP configuration guide](https://docs.cline.bot/mcp/configuring-mcp-servers) and use the config provided above.\n\n</details>\n\n<details>\n<summary><strong>Warp</strong></summary>\n\nGo to `Settings | AI | Manage MCP Servers` -> `+ Add` to [add an MCP Server](https://docs.warp.dev/knowledge-and-collaboration/mcp#adding-an-mcp-server). Use the config provided above.\n\n</details>\n\n<details>\n<summary><strong>JetBrains AI Assistant</strong></summary>\n\nGo to `Settings | Tools | AI Assistant | Model Context Protocol (MCP)` -> `Add`. Use the config provided above.\n\n</details>\n\n### Manual Installation\n\n```bash\nnpm install -g @kevinwatt/yt-dlp-mcp\n```\n\n---\n\n## 🛠️ Available Tools\n\nAll tools are prefixed with `ytdlp_` to avoid naming conflicts with other MCP servers.\n\n### 🔍 Search & Discovery\n\n<table>\n<tr>\n<th width=\"30%\">Tool</th>\n<th width=\"70%\">Description</th>\n</tr>\n<tr>\n<td><code>ytdlp_search_videos</code></td>\n<td>\n\nSearch YouTube with pagination and date filtering support\n- **Parameters**: `query`, `maxResults`, `offset`, `response_format`, `uploadDateFilter`\n- **Date Filter**: `hour`, `today`, `week`, `month`, `year` (optional)\n- **Returns**: Video list with titles, channels, durations, URLs\n- **Supports**: JSON and Markdown formats\n\n</td>\n</tr>\n</table>\n\n### 📝 Subtitles & Transcripts\n\n<table>\n<tr>\n<th width=\"30%\">Tool</th>\n<th width=\"70%\">Description</th>\n</tr>\n<tr>\n<td><code>ytdlp_list_subtitle_languages</code></td>\n<td>\n\nList all available subtitle languages for a video\n- **Parameters**: `url`\n- **Returns**: Available languages, formats, auto-generated status\n\n</td>\n</tr>\n<tr>\n<td><code>ytdlp_download_video_subtitles</code></td>\n<td>\n\nDownload subtitles in VTT format with timestamps\n- **Parameters**: `url`, `language` (optional)\n- **Returns**: Raw VTT subtitle content\n\n</td>\n</tr>\n<tr>\n<td><code>ytdlp_download_transcript</code></td>\n<td>\n\nGenerate clean plain text transcript\n- **Parameters**: `url`, `language` (optional)\n- **Returns**: Cleaned text without timestamps or formatting\n\n</td>\n</tr>\n</table>\n\n### 🎥 Video & Audio Downloads\n\n<table>\n<tr>\n<th width=\"30%\">Tool</th>\n<th width=\"70%\">Description</th>\n</tr>\n<tr>\n<td><code>ytdlp_download_video</code></td>\n<td>\n\nDownload video to Downloads folder\n- **Parameters**: `url`, `resolution`, `startTime`, `endTime`\n- **Resolutions**: 480p, 720p, 1080p, best\n- **Supports**: Video trimming\n\n</td>\n</tr>\n<tr>\n<td><code>ytdlp_download_audio</code></td>\n<td>\n\nExtract and download audio only\n- **Parameters**: `url`\n- **Format**: Best quality M4A/MP3\n\n</td>\n</tr>\n</table>\n\n### 📊 Metadata\n\n<table>\n<tr>\n<th width=\"30%\">Tool</th>\n<th width=\"70%\">Description</th>\n</tr>\n<tr>\n<td><code>ytdlp_get_video_metadata</code></td>\n<td>\n\nExtract comprehensive video metadata in JSON\n- **Parameters**: `url`, `fields` (optional array)\n- **Returns**: Complete metadata or filtered fields\n- **Includes**: Views, likes, upload date, tags, formats, etc.\n\n</td>\n</tr>\n<tr>\n<td><code>ytdlp_get_video_metadata_summary</code></td>\n<td>\n\nGet human-readable metadata summary\n- **Parameters**: `url`\n- **Returns**: Formatted text with key information\n\n</td>\n</tr>\n</table>\n\n### 💬 Comments\n\n<table>\n<tr>\n<th width=\"30%\">Tool</th>\n<th width=\"70%\">Description</th>\n</tr>\n<tr>\n<td><code>ytdlp_get_video_comments</code></td>\n<td>\n\nExtract comments in flat JSON, threaded JSON, or AI-friendly Markdown\n- **Parameters**: `url`, `maxComments`, `sortOrder`, `view`, `responseFormat`, `maxParents`, `maxReplies`, `maxRepliesPerThread`, `maxDepth`\n- **Views**: `flat` (default) or `threaded`\n- **Formats**: `json` (default) or `markdown_tree` (`markdown_tree` requires threaded view)\n- **Returns**: Comment objects with `depth`, `reply_count`, `root_threads`, `reply_comments`, `orphan_comments`\n- **Graceful Degradation**: On platforms without parent metadata, threaded mode falls back to root-only comments\n\n</td>\n</tr>\n<tr>\n<td><code>ytdlp_get_video_comments_summary</code></td>\n<td>\n\nGet a human-readable summary of comments\n- **Parameters**: `url`, `maxComments`, `view`\n- **Views**: `flat` (linear summary) or `threaded` (grouped reply trees)\n- **Returns**: Readable comment digest with author badges, time, likes, and grouped replies\n\n</td>\n</tr>\n</table>\n\n---\n\n## 💡 Usage Examples\n\n### Search Videos\n\n```\n\"Search for Python programming tutorials\"\n\"Find the top 20 machine learning videos\"\n\"Search for 'react hooks tutorial' and show results 10-20\"\n\"Search for JavaScript courses in JSON format\"\n```\n\n### Get Metadata\n\n```\n\"Get metadata for https://youtube.com/watch?v=...\"\n\"Show me the title, channel, and view count for this video\"\n\"Extract just the duration and upload date\"\n\"Give me a quick summary of this video's info\"\n```\n\n### Get Comments\n\n```\n\"Get the top 20 comments for https://youtube.com/watch?v=...\"\n\"Get comments as threaded JSON for this video\"\n\"Extract comments as markdown_tree so the reply branches stay intact\"\n\"Get newest comments with maxDepth 1 and maxRepliesPerThread 0\"\n\"Summarize comments in threaded view\"\n```\n\n### Download Subtitles & Transcripts\n\n```\n\"List available subtitles for https://youtube.com/watch?v=...\"\n\"Download English subtitles from this video\"\n\"Get a clean transcript of this video in Spanish\"\n\"Download Chinese (zh-Hant) transcript\"\n```\n\n### Download Content\n\n```\n\"Download this video in 1080p: https://youtube.com/watch?v=...\"\n\"Download audio from this YouTube video\"\n\"Download this video from 1:30 to 2:45\"\n\"Save this Facebook video to my Downloads\"\n```\n\n---\n\n## 📖 Documentation\n\n- **[API Reference](./docs/api.md)** - Detailed tool documentation\n- **[Configuration](./docs/configuration.md)** - Environment variables and settings\n- **[Cookie Configuration](./docs/cookies.md)** - Authentication and private video access\n- **[Error Handling](./docs/error-handling.md)** - Common errors and solutions\n- **[Contributing](./docs/contributing.md)** - How to contribute\n\n---\n\n## 🔧 Configuration\n\n### Environment Variables\n\n```bash\n# Downloads directory (default: ~/Downloads)\nYTDLP_DOWNLOADS_DIR=/path/to/downloads\n\n# Default resolution (default: 720p)\nYTDLP_DEFAULT_RESOLUTION=1080p\n\n# Default subtitle language (default: en)\nYTDLP_DEFAULT_SUBTITLE_LANG=en\n```\n\nSee the [Configuration Guide](./docs/configuration.md) for the full list.\n\n### Proxy and yt-dlp Config File\n\nAll tools read your yt-dlp config file (`~/.config/yt-dlp/config`), so any\n`--proxy`, `--cookies` or other options set there apply automatically. This is\nthe only channel available to MCP clients that cannot pass environment\nvariables to the server process.\n\nThese are alternatives — set only the one you need:\n\n| Setting | Effect |\n|---------|--------|\n| `YTDLP_PROXY=socks5://127.0.0.1:1080` | Route all requests through this proxy |\n| `YTDLP_PROXY=` (empty) | Force a direct connection, overriding a proxy in the yt-dlp config file |\n| `YTDLP_IGNORE_CONFIG=1` | Skip all yt-dlp config files |\n\nSupported proxy schemes: `http`, `https`, `socks4`, `socks5`, `socks5h`.\n\n> `YTDLP_IGNORE_CONFIG=1` is not a straight revert to 0.9.x. The search,\n> metadata and comments tools always read the config file, so this setting\n> stops them from doing so as well.\n\n**MCP Configuration with a proxy:**\n\n```json\n{\n  \"mcpServers\": {\n    \"yt-dlp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@kevinwatt/yt-dlp-mcp@latest\"],\n      \"env\": {\n        \"YTDLP_PROXY\": \"socks5://127.0.0.1:1080\"\n      }\n    }\n  }\n}\n```\n\nIf your MCP client cannot pass environment variables to the server, put the\noptions in `~/.config/yt-dlp/config` instead — every tool reads that file:\n\n```\n--proxy socks5://127.0.0.1:1080\n--cookies /path/to/cookies.txt\n```\n\n> **Note**: Your config file applies to downloads as well. Options that change\n> the output format (`-x`, `--remux-video`, `--recode-video`) change what the\n> download tools produce; the tools report the file yt-dlp actually wrote, so\n> the reported name stays correct. Output-location options (`-o`, `-P`) have no\n> effect, because the tools always pass an absolute `--output` on the command\n> line, which takes precedence.\n>\n> **Note**: yt-dlp config files can contain options that execute commands\n> (`--exec`, `--postprocessor-args`, `--ffmpeg-location`). These now run on\n> tool invocations too, including ones triggered by an AI assistant. Set\n> `YTDLP_IGNORE_CONFIG=1` if you would rather the server ignore your config\n> file entirely.\n\n### Cookie Configuration\n\nTo access private videos, age-restricted content, or avoid rate limits, configure cookies:\n\n> ⚠️ **Important**: Cookie authentication requires a JavaScript runtime (deno) to be installed. When using cookies, YouTube uses authenticated API endpoints that require JavaScript challenge solving. Without deno, downloads will fail with \"n challenge solving failed\" error.\n>\n> Install deno: https://docs.deno.com/runtime/getting_started/installation/\n\n```bash\n# Extract cookies from browser (recommended)\nYTDLP_COOKIES_FROM_BROWSER=chrome\n\n# Or use a cookie file\nYTDLP_COOKIES_FILE=/path/to/cookies.txt\n```\n\n**MCP Configuration with cookies:**\n\n```json\n{\n  \"mcpServers\": {\n    \"yt-dlp\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@kevinwatt/yt-dlp-mcp@latest\"],\n      \"env\": {\n        \"YTDLP_COOKIES_FROM_BROWSER\": \"chrome\"\n      }\n    }\n  }\n}\n```\n\nSupported browsers: `brave`, `chrome`, `chromium`, `edge`, `firefox`, `opera`, `safari`, `vivaldi`, `whale`\n\nSee [Cookie Configuration Guide](./docs/cookies.md) for detailed setup instructions.\n\n---\n\n## 🏗️ Architecture\n\n### Built With\n\n- **[yt-dlp](https://github.com/yt-dlp/yt-dlp)** - Video extraction engine\n- **[MCP SDK](https://github.com/modelcontextprotocol/typescript-sdk)** - Model Context Protocol\n- **[Zod](https://github.com/colinhacks/zod)** - TypeScript-first schema validation\n- **TypeScript** - Type safety and developer experience\n\n### Key Features\n\n- ✅ **Type-Safe**: Full TypeScript with strict mode\n- ✅ **Validated Inputs**: Zod schemas for runtime validation\n- ✅ **Character Limits**: Automatic truncation to prevent context overflow\n- ✅ **Tool Annotations**: readOnly, destructive, idempotent hints\n- ✅ **Error Guidance**: Actionable error messages for LLMs\n- ✅ **Modular Design**: Clean separation of concerns\n\n---\n\n## 📊 Response Formats\n\n### JSON Format\nPerfect for programmatic processing:\n```json\n{\n  \"total\": 50,\n  \"count\": 10,\n  \"offset\": 0,\n  \"videos\": [...],\n  \"has_more\": true,\n  \"next_offset\": 10\n}\n```\n\n### Markdown Format\nHuman-readable display:\n```markdown\nFound 50 videos (showing 10):\n\n1. **Video Title**\n   📺 Channel: Creator Name\n   ⏱️  Duration: 10:30\n   🔗 URL: https://...\n```\n\n### Comment Markdown Tree\nUseful for LLM analysis when reply context matters:\n```markdown\n# AI-Ready Comment Threads\n\nsource_title: \"Sample Video\"\ncomments_detected: 20\nroot_threads: 6\nreply_comments: 14\n\n## Threads\n\n### Thread 1\n\n- comment_id: \"abc123\"\n  parent_id: \"root\"\n  depth: 0\n  reply_count: 2\n  text:\n    | Root comment text\n  - comment_id: \"reply456\"\n    parent_id: \"abc123\"\n    depth: 1\n    reply_count: 0\n    text:\n      | Reply text\n```\n\n### Comment Limits\nYouTube comment extraction supports the full extractor tuple:\n```text\nyoutube:comment_sort=<sort>;max_comments=<total>,<parents>,<replies>,<repliesPerThread>,<depth>\n```\n\nExamples:\n- Default behavior: `maxComments=20` yields `max_comments=20,20,20,20,2`\n- Root-only comments: `maxDepth=1`, `maxRepliesPerThread=0`\n- Limited branching: `maxReplies=40`, `maxRepliesPerThread=5`, `maxDepth=2`\n\n---\n\n## 🔒 Privacy & Security\n\n- **No Tracking**: Direct downloads, no analytics\n- **Input Validation**: Zod schemas prevent injection\n- **URL Validation**: Strict URL format checking\n- **Character Limits**: Prevents context overflow attacks\n- **Read-Only by Default**: Most tools don't modify system state\n\n---\n\n## 🤝 Contributing\n\nContributions are welcome! Please check out our [Contributing Guide](./docs/contributing.md).\n\n1. Fork the repository\n2. Create a feature branch (`git checkout -b feature/amazing-feature`)\n3. Commit your changes (`git commit -m 'Add amazing feature'`)\n4. Push to the branch (`git push origin feature/amazing-feature`)\n5. Open a Pull Request\n\n---\n\n## 📝 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n---\n\n## 🙏 Acknowledgments\n\n- [yt-dlp](https://github.com/yt-dlp/yt-dlp) - The amazing video extraction tool\n- [Anthropic](https://www.anthropic.com/) - For the Model Context Protocol\n- [Dive](https://github.com/OpenAgentPlatform/Dive) - MCP-compatible AI platform\n\n---\n\n## 📚 Related Projects\n\n- [MCP Servers](https://github.com/modelcontextprotocol/servers) - Official MCP server implementations\n- [yt-dlp](https://github.com/yt-dlp/yt-dlp) - Command-line video downloader\n- [Dive Desktop](https://github.com/OpenAgentPlatform/Dive) - AI agent platform\n\n---\n\n<div align=\"center\">\n\n[⬆ Back to Top](#-yt-dlp-mcp)\n\n</div>\n","readmeFilename":"README.md"}