{"_id":"@frontmcp/plugin-approval","_rev":"113-8b7b6743830aba54914cfd9b554efe75","name":"@frontmcp/plugin-approval","dist-tags":{"beta":"1.1.2-beta.1","rc":"1.12.0-rc.1","latest":"1.12.2"},"versions":{"0.0.1":{"name":"@frontmcp/plugin-approval","version":"0.0.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.0.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"6577c5a10cd421aee7ab094fbaa2d06e5fbc9ccd","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.0.1.tgz","fileCount":3,"integrity":"sha512-FOpa5HD9ZUAsfwh+Ci/d6cxUldKCkRSVctjc+Ft3ueMujEk5eJ8oG6tya5g1FBXmbRQjrQK4ZSeoOulfXmlHFg==","signatures":[{"sig":"MEUCIQDgT8h80vPbdX7LzqsVPL3UQ2HQNYySHyPW1brBCnQhbAIgdN1ljvq7nVv1WdYKoLOPGm6OdxkzO0qGnNcfF/bM5to=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16846},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"fc02b892914f583f870bf19a15be7c91ff30bbde","_npmUser":{"name":"davidfrontegg","email":"david@frontegg.com"},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.6.2","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.7.0","@frontmcp/utils":"0.7.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.0.1_1767927648293_0.4567045995319432","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@frontmcp/plugin-approval","version":"0.7.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.7.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"a631f49024340be7fa8b6212c9434ef34d8bca9f","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.7.0.tgz","fileCount":48,"integrity":"sha512-SeWgBwzEKaJWT2wI7tnXTtoDuV5esSPtfe1WRNGo69zmXXq4o2zBpWAfgX7wQ8N23BamohG4wXj1uBQqquN9lQ==","signatures":[{"sig":"MEQCIH8NOi6lzJ0Xtk1x3ssD9E4339H20sRHSA7ICwlaTTbCAiBIsrFF02cd4YmaFXrZsPgN95tVZAp1exyX4EUN1s3fZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180659},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"61ab9a53b9b39fdd7d79c373f6d35fe289815e14","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:16c7ecc8-c401-4a2a-850f-3db57c8a9a7f"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.7.0","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.7.0","@frontmcp/utils":"0.7.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.7.0_1767928400566_0.450737642186271","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@frontmcp/plugin-approval","version":"0.7.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.7.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"d86f562d4403732c600ad98301f0364f6bb2625c","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.7.1.tgz","fileCount":48,"integrity":"sha512-eqtG5n0T1vnXNw7PAPiiIavCcE/GxbKMG/sC5cBBc/R3hjjIBSRfpvKpKtgzqPy1qNfZoqF/BOqme3P3tWw5zA==","signatures":[{"sig":"MEUCIHnbCBZAuUIpJ7D/hcymgRttYYFQBAFzW2VRD3Dd2gIJAiEAlz2u4iTVibyMgbQXo26wjjxyj4zr2Yrhqri6lRf+J+w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180659},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"db68a86169b6671bdfefa89e333a7fed997642df","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:16c7ecc8-c401-4a2a-850f-3db57c8a9a7f"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.7.0","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.7.1","@frontmcp/utils":"0.7.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.7.1_1767930397627_0.671186794727139","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"@frontmcp/plugin-approval","version":"0.7.2","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.7.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"673976eefc896aa2edc1aa9551f9faebe4a4d7b7","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.7.2.tgz","fileCount":48,"integrity":"sha512-gYNZj1VoOX+UZNZwuEm/QJie57wcTBub1tJ/yNkVt6+fRHLep8De5d6XiDxhAbNG4GQkq2pvCykEahSJAYuclw==","signatures":[{"sig":"MEUCIAQ6lUMwRx4w7kcqDlqeM9tLmwnrCEmCKeQ/sxMSjI/OAiEAoOSWeijjQ3oZZ9KXBoAIQ59M+4/FZMvl9BEXu0nhYO8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.7.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180659},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"4591b588f35a60f837bdf738e5f49124e5cf1577","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:16c7ecc8-c401-4a2a-850f-3db57c8a9a7f"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.7.0","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.7.2","@frontmcp/utils":"0.7.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.7.2_1767985651413_0.5333927098728084","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@frontmcp/plugin-approval","version":"0.8.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.8.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"ef52f78f4fafaaa96f67a88fe050150189db5458","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.8.0.tgz","fileCount":48,"integrity":"sha512-rjbNBm52wZEyiCnE//kRZQPMkUR7gnCeez5m0WtFE/XgcQMlB/ZQoBEM02eLxa5idwnHm+Whi79KWBc512z1Zw==","signatures":[{"sig":"MEUCIQDg8JRDXlKGU2viwvvVpaX6ZbO2E7Ly1zmNDzyHTaQpmQIgMgBqi8NjaCbfeCluY+Sg7u5WZ7PIRxnIlhfR5kLiUjo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180659},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"84eddc1d81e39a22a2f87efb9c6d3a6e6c3f5389","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.8.0","@frontmcp/utils":"0.8.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.8.0_1770050226996_0.5291986849040333","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@frontmcp/plugin-approval","version":"0.8.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.8.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"bc48d47880b9e7ab3ca42bdc32d1ebd01b1e617f","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.8.1.tgz","fileCount":48,"integrity":"sha512-xgNBgaJj7ed0s1can9L4tBXcoEHAvR+JQoBVN10jR7yblFMqx+S4qHVEhthKbsHD6WDryxFp0pTmtCZBRSDGCg==","signatures":[{"sig":"MEYCIQDl6oRHdVIjlvgFmjuK6ozHqT+NDPx6AT0WkMePdoZlOAIhAJtHvIwKnAebmHgKQYoyv9WH+qPBR4TTmvWrr9CoA1la","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180659},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"763c49531b43651ce2bf83c4967940e9850557d6","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.8.1","@frontmcp/utils":"0.8.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.8.1_1770101438140_0.8989633341508836","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@frontmcp/plugin-approval","version":"0.9.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.9.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"4842a639a24df40a797b49a0d75af45c6495d03d","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.9.0.tgz","fileCount":48,"integrity":"sha512-zkBG1EHRVfV7NXi92EXHG3+8lfOi0zfqvrvyqkcftEWttBDPztFyaj3IDWk1Qb3n/gvrl7TSkBT/U8xpFSHQKQ==","signatures":[{"sig":"MEYCIQDFO9IocLAtOGIvZTcwyCkF/ndWB6iqOQ619mqzTdZ3VwIhAPZyhtKo06ogAOhOhREER6Oe6Gis4FQQTiUzRlTfZXav","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180659},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"82716014888d1cc3f49bc9ec2c2bd48cd76b201e","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.9.0","@frontmcp/utils":"0.9.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.9.0_1770335768946_0.4919083379995002","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@frontmcp/plugin-approval","version":"0.10.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.10.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"f5f8d5ff46d18365059884a0c057c49d10c05c1a","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.10.0.tgz","fileCount":48,"integrity":"sha512-sHw3Vi8hQzNCdDB19XS0QDi5u4KZWZcusxY6frj1toKQFQkrWJR9NNcAilYjNhASKYMa9L3q5qXBtOeOkfD82Q==","signatures":[{"sig":"MEUCIDZNxwzF/jBCWwg6wAxljpaGPTuqUQbNVn0ramOVq4gNAiEAt/9jR07HeLGfeSeXasFmoujjo005SDYF2W3+utuSbJA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180665},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"c5b74ec80c3a9dac9f635370fe53879e34e8c71d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.10.0","@frontmcp/utils":"0.10.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.10.0_1771018597448_0.5376900884728415","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@frontmcp/plugin-approval","version":"0.11.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.11.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"d655d993aea1f5d4688425251d4879c3aa98b1ad","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.11.0.tgz","fileCount":48,"integrity":"sha512-IcfG+fRr+8O8pf3qCAHQyK5zYkKsKCE3pDz3hN9goJZP3GV9WTr9WHt1RbLf798qWUKsPE9uk0ERStehA75+Vg==","signatures":[{"sig":"MEUCICf59s+3pxV3KEFOB0tZidyFR+Ye2QMW1KF2XVKkvwmuAiEAvMGVbpc+tfIm6CpVTYKVoLbqe5GDEQ31d21sLEYwCM0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180665},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"00c428c1186dc86ca8e4ddfec3bd4be4b5e89bd3","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.11.0","@frontmcp/utils":"0.11.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.11.0_1771532217205_0.552628705960698","host":"s3://npm-registry-packages-npm-production"}},"0.11.1":{"name":"@frontmcp/plugin-approval","version":"0.11.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.11.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"2b37ffb7e0dbbb5829784a709f7a34745a5a8dc4","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.11.1.tgz","fileCount":48,"integrity":"sha512-kvK6a8Sm9z8qlHDc7hWb96HW66THPffQQSWUpAY8T5Ljg13bNR404rRVUp62/X5xFbdw+Tse3Sg6ZS5z2br5Kw==","signatures":[{"sig":"MEQCIGdmIyNEVXP6v8eazI0GtBmpGT2z2/2h/PDXoqMGh8FEAiA1Ph0l0ZQnqsWRt+0e1HpLHSkDiCufgiy/GYGE/dn/Kg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180665},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"48f522641dc11d7e541eb8126c59169ec8289748","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.11.1","@frontmcp/utils":"0.11.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.11.1_1771613980615_0.4053353727299276","host":"s3://npm-registry-packages-npm-production"}},"0.11.2":{"name":"@frontmcp/plugin-approval","version":"0.11.2","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.11.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"4392846704ce87019b353c1b7557c06d53570f04","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.11.2.tgz","fileCount":48,"integrity":"sha512-m1R/IUNNS6DFGNG4kjmjWWgGWfq5a1O3tXrTaM/jPnr80dwYf28cw+hTHGkx2jaxZkFXX/LskNxbls7/J4uflw==","signatures":[{"sig":"MEYCIQDBww5pDXXAlQllyVzlCFUU39ml5GozqeCFFicq1lYXEQIhAPwUeAnZDDRXedh+vIa6MzLtI7wu2Mati3XN5m4vVEYk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.11.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180665},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"ae92f4b7b24108d9154237e2c3c587fb023ba521","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.11.2","@frontmcp/utils":"0.11.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.11.2_1771709977315_0.33070152564977495","host":"s3://npm-registry-packages-npm-production"}},"0.11.3":{"name":"@frontmcp/plugin-approval","version":"0.11.3","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.11.3","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"79ac813748a6470a6e7c6abb6dfe1ec8fde8b052","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.11.3.tgz","fileCount":48,"integrity":"sha512-sY51oQCqA4U0zGroJCj7VXSfPhcK7Sew3bUQEPHE0Lltld+V91ruiZIWDIq9nJXMncsHSoh312PAK3qegciKNw==","signatures":[{"sig":"MEUCIQDxzmlqOXOEDi4uBRdN/lelITKpIFe2zqJc6RWVN6AL5QIgZS5OKIhEPkLcYaCQ8/cKvsUuZOMa5fsU2cRDP8AsED8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.11.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180665},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"5ce23e5743b3cb4f5276a48a556931032fa2c9e1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.11.3","@frontmcp/utils":"0.11.3","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.11.3_1771793325085_0.36406651649962507","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@frontmcp/plugin-approval","version":"0.12.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.12.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"4a227bdc6ed5074a00ed9c5d56e4d6d9d17c1f4c","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.12.0.tgz","fileCount":48,"integrity":"sha512-+TScjya5LurX2+zFguSJdOPOTgVIShnLc5vsF/2sw8PJVYeEGvwcq7ImgEnZnY5Hh680WRNfVJTRjMwP9FvAAg==","signatures":[{"sig":"MEUCIG/o/sKRhOtv2hbJHxRXGoCZusKTEc71wNxkw6C2TuugAiEAzh255k2T+lk3yldIOxGIWPCiom809STPsOF0N9ALu6k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180665},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"49e6d8928019536af9e9f848bdb4be427bc642c9","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.12.0","@frontmcp/utils":"0.12.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.12.0_1771979471728_0.7195272059438758","host":"s3://npm-registry-packages-npm-production"}},"0.12.1":{"name":"@frontmcp/plugin-approval","version":"0.12.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.12.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"b43ee291acc7ea5bdf46ebe37b65657b9ffa62d7","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.12.1.tgz","fileCount":48,"integrity":"sha512-9BtF5IA0HR64b17Ka60S0kRixL38++HoqOjoIzl2pi4SAEI04PXcHr8xYWQLX6Pzc1jwuWdOn19b0cSAxBDwbg==","signatures":[{"sig":"MEUCIQCKIYOLd5C14HNvRCaA0U8DTWEeyi9AA6U88z1aKeMOzgIgXhQZ7wc6waNP4ivhAvWFQle7MEf8alHqYx6yljxsCD0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.12.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180665},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"e5a79996cf90f6d05d069b7b466b9ffad485c2b9","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.12.1","@frontmcp/utils":"0.12.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.12.1_1771981704261_0.3074281488083803","host":"s3://npm-registry-packages-npm-production"}},"0.12.2":{"name":"@frontmcp/plugin-approval","version":"0.12.2","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@0.12.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"c5ca1658dc890ee50dc90ff69124da390425837c","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-0.12.2.tgz","fileCount":48,"integrity":"sha512-x8tKfSl8NUkX0cz3GkO8aDYdSlILq0yKX/7mIkUZwzii+8WRi8XOiPYM3E6ccC4+51pFaaz7CB934to23CH+oQ==","signatures":[{"sig":"MEYCIQCZeFt6sXVIK8yuCsFZJWBArwbEPuQC+WmcgjvIszSBlQIhAJ/Gb0lpkC+LnXXtzWhIix3d6Ndp30EEfP7Hv7p+vMzl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@0.12.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180665},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"c6adc7eb0487c0a7d0cee78f29d62a4e291de917","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"0.12.2","@frontmcp/utils":"0.12.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_0.12.2_1772066733826_0.21390563600005752","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.1":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"7a84e9fbc3a8595dec028bf2c8485285212c1edb","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.1.tgz","fileCount":48,"integrity":"sha512-hQ2+Tiqiz2OXqRtmwad4968nnjodMws31V7kBy07Cb2wAuXuuv6e4AlR5vv8nmdtKt8j+4kaFxkKpsLSG3ZrVA==","signatures":[{"sig":"MEUCIBt73QTU5Ns92+JAYZVTutDMSa/MGbyW/sA5qGrRIM+5AiEAv8NbfCfm9QnS2ZLkzNuu9RyDW7O5FxCAJsFCUHDY/qI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180698},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"3c9393dd4ba4a49e9aca9759f519af2bdb0fd41e","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.1","@frontmcp/utils":"1.0.0-beta.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.1_1773684300472_0.960445298805884","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.2":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.2","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"ed7d382ca30054e7978fc3e59c14b49176f8ee79","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.2.tgz","fileCount":48,"integrity":"sha512-Wd8FE2bdKVwTuGgcQ9XYNYbtsfoc1NA2F4WDXF9xZOL9X0yLCz1MGprB5T+DaxUew8DVbcrAK7uTpaTJqy6j6Q==","signatures":[{"sig":"MEUCIBbVIebfATwRXpz2AmGtC6MixEY0uvGvNGdI6lailuF9AiEAlncbx/QWjqwpgPY5jGisG/da/9McuDyghW4wESBJK1w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180698},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"f44f8f9e7641996858f6e76a9a3825e511b5e25c","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.2","@frontmcp/utils":"1.0.0-beta.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.2_1773849325270_0.007772693806984199","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.3":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.3","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.3","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"79b200103e701a07652f51dd7629505edb661fe5","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.3.tgz","fileCount":48,"integrity":"sha512-nQAnDX3RCPfFJoZ2XSpuGKXvaeikAel/jYHJpitcrLP8b/KM+ryhhJbc/QSdaOwfC4GwghSJ0YFZcWrrVOYItQ==","signatures":[{"sig":"MEQCIAxti9O6pemuWy8iE5LdH3moQu7Q9+OSTYhnibAAw2KiAiBC7O9hQrHxmgfqbmOPKYpVnCNBt2LtLC8W2TLxbkX3vA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180698},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"c1cf59f2783280910d026973937999146e64c290","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.3","@frontmcp/utils":"1.0.0-beta.3","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.3_1773866630495_0.931164426700098","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.4":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.4","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.4","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"94c7ea51ba480281e01ea43bbf61e2acb3875c5a","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.4.tgz","fileCount":48,"integrity":"sha512-YnVlyrDSlgg93cQMa/OAFSi4Io/0jjTKboAD5MlWWGRYpwi5I+kbg88luoQEz/AJBeA7pOpATLOEZdUIUWTWXQ==","signatures":[{"sig":"MEQCICKSBS207ateYHKxZofXUFelTElNyD5qs1P+mer3Ix9WAiAvmI1jyQqo0O4yPhd2Z1CNqE2JFOeNQNEDfJ30Bhf5kA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180698},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"4f885065b1555bd19a5424b9d501119c9ec05862","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.4","@frontmcp/utils":"1.0.0-beta.4","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.4_1773873514620_0.6944744335008515","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.5":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.5","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.5","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"a1d6864ae6eb3ef96071f9651a41c7c1c3c5c5ca","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.5.tgz","fileCount":48,"integrity":"sha512-NfDdG9vH7i6RJ9iEAQonB9xB5d5ap8Bj1o4LQQT/ZuwIt3kITwfrmmGQrZK94FAhzk4JRcDfUZRlk8HTO+nz+g==","signatures":[{"sig":"MEQCIFqHYUYvlN8nD1p+fRxmDIumO5iR8YgQX5CeQHSMTzFmAiBYCh8t0fsnil8g8N3h3fsp5FzisA8HNJCQw5ecM6ec9A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180698},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"7e3d3fd444488ca036201146aac81bf51527ad94","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.5","@frontmcp/utils":"1.0.0-beta.5","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.5_1773884896542_0.038316193094222184","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.6":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.6","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.6","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"767d2d26026a4dc9d344df96f18a75143c5e3dbc","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.6.tgz","fileCount":48,"integrity":"sha512-Urv8Z2Runda3Ai6RpXwLOykjPQHZVXt8X6pJ+qxoQfGLswV4/elPfnWpFv7wF9/GN3fXPYXc/3yaGsrh7iX1WA==","signatures":[{"sig":"MEQCIGVXSQ4CyXhu/E9LgPFXsFxMF4ccGarRoF24lgSg/drPAiBaOY3Pb8pguqGK7LAD/VwXYS2zLjqa0k34IWa/ZH4iTA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180698},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"6f7b9bfd071e3bee2107bd860825cb36ce4bfc58","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.6","@frontmcp/utils":"1.0.0-beta.6","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.6_1774026560580_0.034151942820836556","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.7":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.7","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.7","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"12f1c34649c663f12b1a7ee25e69482221519a8a","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.7.tgz","fileCount":48,"integrity":"sha512-BGkF2r3DQsCixBOfzWWDb5w8Vz6LKSRCNkSf2dyT/uVL/5dLdkSk++Zc2yShiYFXbjgkiRVj9JAejUW3cC6Kkw==","signatures":[{"sig":"MEUCIFWBoLwO2FcV2/Btkk/hQqHEjkk/MDqIQ3RKOa4nRZ+OAiEA3ZeX5pMD8lLYbXV1MBc6IvnrA/JvXgBGjW76aX8tD40=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180698},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"a6eef41dd0700d433c9767322c6dcd2d64b9cec4","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.7","@frontmcp/utils":"1.0.0-beta.7","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.7_1774295088063_0.9168203674955366","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.8":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.8","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.8","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"cab5d9d7c5844defaace70036edf6f621eaea5ae","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.8.tgz","fileCount":48,"integrity":"sha512-Szp5kHxIqt/K1ND9z1q85SlW5G2zmDeapTHheclVYZB8dxS5vFTDOyqXrTpOZoCI9kJ5pVsUxuBF6Ruvrq3paw==","signatures":[{"sig":"MEUCIAGg5QWNIoy6J+wcfh4DF2QIb8iph3BYoS2zKcMu87b7AiEAomHyTPAGKjB9l0CaLOonF1WKbjecfDdyNFVuSNjnKXU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180698},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"fd7e2a78eab01cd99bb2054ff775dfaaae91612e","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.8","@frontmcp/utils":"1.0.0-beta.8","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.8_1774385273661_0.5687024004211032","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.9":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.9","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.9","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"ac366fae9a351ec6180ac8812f6cdd36dcd62e3f","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.9.tgz","fileCount":48,"integrity":"sha512-r6ODij07y+RbIBo1LrWjcMwfHcD/Oekg574XIzMN3IjvKpnFRN1C9I0q6mV7kS5tXTrc/nRBAB2MdfjSy2PpNw==","signatures":[{"sig":"MEUCIDrkrwrekpJnkXw18ygrxw9HEOUhOHe9ZFtioiZWzrfRAiEA8vNwpws5Xb/PP59ALVBxgxabUDgBgthHof7EPHtmzcE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180698},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"1c4062065549efa3128ed75c88812957a62b1fb2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.9","@frontmcp/utils":"1.0.0-beta.9","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.9_1774651862140_0.7019785293983367","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.10":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.10","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.10","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"648962444f32069a793ebf4abf4b11440dd24952","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.10.tgz","fileCount":48,"integrity":"sha512-zS4SzMGuxP9q+Blo8l83ImFfrI9S/pNLYqiYy2ISZRp5nNAGsFdXKo80Ag4c02vvkaQovRA+/+kk54Lk9Di7vw==","signatures":[{"sig":"MEYCIQDY4mwNuhbPHEr8dBqduf65oF8ZaIJYAut3USMugjhUDAIhAIuCbHZ+ONOw0T0vqsjIkuJiTPPhhGVr1BShkv5F+VtY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180704},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"cd2a8d0522150ffb8d38656bdc61e7808aa6c93b","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.10","@frontmcp/utils":"1.0.0-beta.10","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.10_1774721252032_0.3865452599465642","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.11":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.11","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.11","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"a292e83a7f0ff5de55e6713e8327c3eb6856f584","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.11.tgz","fileCount":48,"integrity":"sha512-iA4WaQ8+wcfwReBnt3tTNvnE2SRwgKp6MeGfCATD1ZbLiq0eK7bCHgm3Jg50z5kWIwb53wskFWvtGj18GzvQ9A==","signatures":[{"sig":"MEYCIQCqlsrbxFmJ4OVeMgRrVkQ0dz0UoFtcM6teCkIAT2wWLQIhANAweWLZlgakecNqjSoJ2u2Uw8s1PgCde+roYBPB+vdE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180704},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"b0b83f8be8012798b9e3739260881eacfaffb27a","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.11","@frontmcp/utils":"1.0.0-beta.11","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.11_1774751083117_0.6874312888493668","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.12":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.12","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.12","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"e6ecf1e07e412b7e17ed4a4fb649063dfa165aec","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.12.tgz","fileCount":48,"integrity":"sha512-56WHNEwH8SEgFyZK3zHm17xBY0VyQKGbSnWFMWP89H4YvTxJhOYyRQFeRsnhVkYjH3zHUnWEGGUSUK3ejV6r8Q==","signatures":[{"sig":"MEUCIQC9QBiHQ/nKCkWCrpdzr2sPXeejb7A716HsQveKW3Ib9wIgQlE3JlyR3EjABcdFYqrD9NieKjcdC6cUVp5IG6ZGVIg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180704},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"00cc626b9b7c09464ab0757a299e7251126df736","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.12","@frontmcp/utils":"1.0.0-beta.12","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.12_1774756312844_0.02189435101224313","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.13":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.13","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.13","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"7b3dea44ac5e41ced424ca6842ddeef8690e527b","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.13.tgz","fileCount":48,"integrity":"sha512-i++nLDqe2qazgagmJdk7Z4W55F1/OY+mrjQl1ephDoDYhIU5uocMD48fOVF8LsTzsuyinSLQDIya/df9EjECEw==","signatures":[{"sig":"MEQCIGeuCk0fsgnCHE89KR+bYuqQwEKVhgqvb8HKmaL97k/SAiAnFIO48XWOJGn57erjw51YbUHicxroTq++S++R81qmDw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180704},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"4e06ff207b82809bfaba3dd0919a8a445d2d80b2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.13","@frontmcp/utils":"1.0.0-beta.13","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.13_1774766912386_0.8222523795719743","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.14":{"name":"@frontmcp/plugin-approval","version":"1.0.0-beta.14","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-beta.14","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"8a5e8a692b3e1e0db1268e444938c71efdac5eb4","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-beta.14.tgz","fileCount":48,"integrity":"sha512-PIlQcC2oywPwiidY7618radAkHgKYUJju5hlXcmvbNcGwM98nI43Rmj6fnEovm0fc/B6xdyEkzVlL/xCa1IkVA==","signatures":[{"sig":"MEYCIQDw5kzrQF2UzSBvlf+E21Qnio/B/cc40WRD5Pnu6/V9/QIhAKFFZs3AnzqhbvIv4gnJ3IIiJARnsZJ3CnnG6VXApjA2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-beta.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180704},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"2452586cf4c01c82e2279cca5764a47abb95899b","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-beta.14","@frontmcp/utils":"1.0.0-beta.14","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-beta.14_1774939668432_0.43494350548322114","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-rc.1":{"name":"@frontmcp/plugin-approval","version":"1.0.0-rc.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0-rc.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"cd390b0955ca00c1f000213055487fe3dd2b92c8","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0-rc.1.tgz","fileCount":48,"integrity":"sha512-AU3vFcEipd4iH8KbNB2rggY+gYmnO4qh/k3C1EGcqo2U+FLDgIuR6eIfTbRgsUMTLEy+XU/yr9s0Pu7P9Q6HuA==","signatures":[{"sig":"MEUCIHs0O5wyQXz5WsShhp1EKkK/RuWbspqX0/b3bV2zTYuDAiEA1cf2gSGs3gwoSwA/niBC4WwUr9PYjuYmqo4epc5DWL8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0-rc.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180686},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"7a56c07964074f967290d7b2a5ffe5c3779dbcd8","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0-rc.1","@frontmcp/utils":"1.0.0-rc.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0-rc.1_1775432900687_0.45010093049853617","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@frontmcp/plugin-approval","version":"1.0.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"ab36ff0e61d438b550b25cf77eb63d8b4e20104e","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.0.tgz","fileCount":48,"integrity":"sha512-qpaTsRxKtunsmhJtF74RkIcs9NQDC8cDXU2ECxXbedH8ZejLIDg058ppOsQkzDGwJSgFFVF/LqkmucmpgJ412w==","signatures":[{"sig":"MEUCIA8tj4M09seCenBxKaAZVt086wMuKGIpJkVVNcdljUzOAiEAqo6LXXsxymK6itk9NQRJ2kVdo07PmrZTx5kbxzIHQqg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180656},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"5c65d9c1ecf47eb0fdd822266e5c736d98d34fed","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.0","@frontmcp/utils":"1.0.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.0_1775434619829_0.17981733973957814","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@frontmcp/plugin-approval","version":"1.0.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"620b1af1e0f5faf7086254bfbbca02b146a0be6a","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.1.tgz","fileCount":48,"integrity":"sha512-uQcmoYJqVbM2XRw8Xkv/CEJe9vcEUehnJen9D2ecTWXSsQz/cbb8UrAP9k9ZgKU3dB/9O5+azvEVz+Yu71o5kQ==","signatures":[{"sig":"MEQCIHEPaf+KJKT9pa5pphp3YZLksSZyy7ZucULXSauws+SDAiAo2Z62vxkGQLKwyB2/fQKinsgAjlXngyQm6A3f+cmpDw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180656},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"26467ab04590678ce21e3312aaad623c5c9f03d9","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.1","@frontmcp/utils":"1.0.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.1_1775453351000_0.9032157298736729","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@frontmcp/plugin-approval","version":"1.0.2","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"8fc46bbe76130a7c38d373c88127c9062c3cdb35","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.2.tgz","fileCount":48,"integrity":"sha512-qD9vud+iqBTQ5PAbMBbZ5Jj0VPExQL++2xaq7QR7fvsKLHO92FxfM6wZXKkE4cp3hG9Pl43ouL5ac4WdbhzTSA==","signatures":[{"sig":"MEUCIQCHWm+QTLsvTtvfjFJEArPai5lSfWoOoJi4xM7/QNaxEQIgApmlruC4src8CoEGh18XRaEkM0nrhZH1uOQBoxRL/DI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180656},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"628cc317ea15344d04b97d5e7ab9cc0f74f6b6d2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.2","@frontmcp/utils":"1.0.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.2_1775489955055_0.816190535693214","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@frontmcp/plugin-approval","version":"1.0.3","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.3","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"8f56c961d06d2672a5524f59e59d007e228cfd8f","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.3.tgz","fileCount":48,"integrity":"sha512-SpaiMcymH3aabu7rPZUe1IkqZ+BGbMDMdT1fnXsG2NT0HhHUA9ebPETOcoEjt+ar0XJpapgxnWX+0ETRz3RnuA==","signatures":[{"sig":"MEUCIGTWRtUzflgZ3kp4z+gYG1itVTvcZCoE3GipFZopVdj+AiEAtSWK9x2Wl36NJjAn9TbLLoc6jG1Xi/HuOhcN9FAWMHw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180656},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"b12d5b505b565f77e395c0902f6f5a02c2b5f5b8","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.3","@frontmcp/utils":"1.0.3","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.3_1775500840562_0.3907235487925822","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@frontmcp/plugin-approval","version":"1.0.4","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.0.4","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"37ce993c57849e8bbc71ce678d2fa06c4f031642","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.0.4.tgz","fileCount":48,"integrity":"sha512-0O8urR3nmRQs6S3g6YdYn2oHmsSVZIStXUQI4rxVqPjxfJoYw/htQmUbnGETvnRnynTYXxl79pbOW1NaK7c9uA==","signatures":[{"sig":"MEUCIBTrLQnvmR2wXFX313Wr0LVnqQpiRtqtESVAzD+GrJacAiEAk6oiwJx6FwYVGmQsgjW/0+PeYyLvA5SMJstLpB9TmEc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.0.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":180656},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"b69f4d8ed3edc7de3e85ddbdcc78910339510d53","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"zod":"^4.0.0","ioredis":"^5.8.0","@frontmcp/sdk":"1.0.4","@frontmcp/utils":"1.0.4","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.0.4_1775615331558_0.13765995992970748","host":"s3://npm-registry-packages-npm-production"}},"1.1.0-beta.1":{"name":"@frontmcp/plugin-approval","version":"1.1.0-beta.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.1.0-beta.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"143adb5120df686b961c5bedd31d031a0f77a19d","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.1.0-beta.1.tgz","fileCount":48,"integrity":"sha512-GtXS5bhulBin4hU5TT4+KPH6sSUAPdJfAPkRzMf999EG/ZgOXmVRzGHdBtEXjlh3p0gLUeaiuPwzQbV0xnutMg==","signatures":[{"sig":"MEUCIQDxH2CKUdtaGpr+J3jTCnmhGDWlVMn+fmsMl2+npFvPVwIgXLxE/TvOZxDPzxSfBhUmVVS3Wt3CvzjAGL3j2TGM7WA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.1.0-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185627},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"4de7f504846f76cac3f88dfd4216ec042827ab3e","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.1.0-beta.1","@frontmcp/utils":"1.1.0-beta.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.1.0-beta.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.1.0-beta.1_1777653575944_0.3021890597993466","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@frontmcp/plugin-approval","version":"1.1.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.1.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"ab2782a396e3cca26ed877da561a072aafc67ee2","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.1.0.tgz","fileCount":48,"integrity":"sha512-hNLK5fj+Y7j1S31xalILHpvg6qo30U0V7ZTCdx9N0DY9qa2VxEDC2Fqibk8KiMZydigv616jy6yieKHgHkTjkA==","signatures":[{"sig":"MEQCIHKGgP/BteHwyu10CbrtE/g+CMS9F7UxrkCxsX57NSy0AiBXqELbbJNXk9YBxOGkPCTgxIb6nBs35eqFmxLbauX0Uw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185571},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"aa70fe284b2b65d2537bbce0b5392ebfbf805fe5","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.1.0","@frontmcp/utils":"1.1.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.1.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.1.0_1777676560815_0.5205191554479449","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@frontmcp/plugin-approval","version":"1.1.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.1.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"40f5aae44fe0c1000b0570347f87c0990a5ad314","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.1.1.tgz","fileCount":48,"integrity":"sha512-yHqI05rqXk/YIfK+9Mi3LE4B7NCKtxbhfER9zKWAOLwTchgbK66zYY1/dujTLmHot+bohbQExVTzk/2UR8Th2g==","signatures":[{"sig":"MEUCIQCLlQFGB5DG7K+n20H+P1i8Bb66uBswuOCUxgjfljpGTQIgdyk9t1RO/wprg3FAO0J4snw0wJps8z1zwJrJ90rqDio=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185571},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"5c6f287d677179f341b3d895523acbc12eb5c194","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.1.1","@frontmcp/utils":"1.1.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.1.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.1.1_1777769548419_0.9207768186043905","host":"s3://npm-registry-packages-npm-production"}},"1.1.2-beta.1":{"name":"@frontmcp/plugin-approval","version":"1.1.2-beta.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.1.2-beta.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"7e9ace1e2d5c5a6eee48dd215c590a50828a6d11","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.1.2-beta.1.tgz","fileCount":48,"integrity":"sha512-tUjTeC34gGBpy2Zpm/ksHtCrpto5elNwtAyXGE5UREy7xig+KWFWTSOV1vDdRtQXRcvMaxFEpRrq/XlR4l1h1w==","signatures":[{"sig":"MEUCIQDIxEPmI5VUqNBzqoesfk+QuSItTHY9Zuc8rY2wCPkrQwIgcgUFAHXBKecpTuTEF9c+tu8C5jmWSJuwZC3eP9HC04Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.1.2-beta.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185627},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"f144de6ca06683ca5de457de25d07010912fe5dd","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.1.2-beta.1","@frontmcp/utils":"1.1.2-beta.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.1.2-beta.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.1.2-beta.1_1777815150126_0.10121470251827946","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@frontmcp/plugin-approval","version":"1.1.2","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.1.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"cab8cf360d2d0a889fe6dad9d0abd420889c75e1","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.1.2.tgz","fileCount":48,"integrity":"sha512-HiwLNK8QlhkVLngjp4Y924mHN8RNj3UUI3bihQ9VMaQre/H7upu1rFpukaEf/DD6INg7o6j7O9ePNaDT67hIiA==","signatures":[{"sig":"MEUCIQCWOnsvJTNrN7uYI6zTAqKmwCAQoqaYdozsoSX1NKN23gIgd/LN/gJD3Uw96EqrCDEHBxlBW4c/vHlusngRyXKlUx4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185571},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"26ece768380a07d2dd50e5d46e343523c510e919","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.1.2","@frontmcp/utils":"1.1.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.1.2"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.1.2_1777819073659_0.33328527445586387","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@frontmcp/plugin-approval","version":"1.2.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.2.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"eb65fc0ba4d71c1b98f16c7dad2f5c60af24b3a8","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.2.0.tgz","fileCount":48,"integrity":"sha512-QBQmc3Y8r+2JWIaQT5JtUybDk1EeU++8Go4cU9MYN/Rb4HoV63zfx5JUEeWUJcOi3n6SebFPCgvfpayoEFywhw==","signatures":[{"sig":"MEUCIGLpLoERnZ790FPjEtwZ0Dz61gfB5vevHvp+0AFvQmXJAiEAqqm1z3UmuOZCGHL+TH5gIzg0R8gLUEcK2eM8jhepWv8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185571},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"76ebffec7a656de03aa2ccf40378dd2d76a57218","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.2.0","@frontmcp/utils":"1.2.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.2.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.2.0_1778021858768_0.5106757624109162","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@frontmcp/plugin-approval","version":"1.2.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.2.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"57646895caf1df87b665e7875c315e3a3140bc19","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.2.1.tgz","fileCount":48,"integrity":"sha512-PeDlKVSWfCWfZ1N+P5HekjQIEjHeldVA2XShsntPb6Zuhio9mgY4Qkk5YVX87Nu0McoOSb0vYSWzJyqZALWd2g==","signatures":[{"sig":"MEUCIQDuwTp0FQW38L15IQ/SU9m61DsbWDltRC33wj0HsZypJwIgcqPE1Nv6hErVqY4+IUObRO8FPqVs7+Y/6Ju/CtWQImw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185571},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"5bc4d462bb67cae68f17c4eec31149687250cb69","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.2.1","@frontmcp/utils":"1.2.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.2.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.2.1_1778032066786_0.20897374486190268","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@frontmcp/plugin-approval","version":"1.3.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.3.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"19f4c6723b1ab480c3a1ebb0eefa9e7e56ddced0","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.3.0.tgz","fileCount":48,"integrity":"sha512-9/JwNSg4NGHrKx5iqX9oGxU/6vslv0kEFB0TSZDyHWAb4Xvj4wSaRSsnAWgPln8/Om/ib8R4VnHM6PLhKizjkw==","signatures":[{"sig":"MEUCIEwKPnRvDuKGVqrzK1xm/EPZ5l21nTmw6mClV02qRbI5AiEArc9ztjE3KVXTjDZCHekf2aTUJHNwBe0KXhjdG5bTVHc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185571},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"01566f7bc9ac7a71ec22fb81ab1873cb4f965f0d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.3.0","@frontmcp/utils":"1.3.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.3.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.3.0_1779910504068_0.9451455348484619","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@frontmcp/plugin-approval","version":"1.4.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.4.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"a786c43efdf0987af15774efeb8c4952d9e48d5f","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.4.0.tgz","fileCount":48,"integrity":"sha512-ZtOTIXVKNo0d6MeCNqPrGTmevd/ghhozEcUrRNJ6uQz2TeY90jhLWmPVgU1fo/JjOzxkHk4AOVEhhJG4DmijoQ==","signatures":[{"sig":"MEUCIA4wxncBcjfS5oZGowiX1Aie9zS5s1P9bQiX0frntmeuAiEA2Am5m8+FUVKxXXxHIgvdcyv3/NACjerCYq98lclGw4I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185571},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"8dca449db2404a807cbb71d0b83e4b625e8b9854","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.4.0","@frontmcp/utils":"1.4.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.4.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.4.0_1780856696912_0.6794931831301914","host":"s3://npm-registry-packages-npm-production"}},"1.4.1":{"name":"@frontmcp/plugin-approval","version":"1.4.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.4.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"1ab795664516129b2d3926c9549ff3fd027f621b","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.4.1.tgz","fileCount":48,"integrity":"sha512-GKS4lbU6P/Dpuc5gg9Y4jE/7w/9dVdVHdjvy5SlRWNTgYnuPFhAZFrRrJnd0jB0D0PQ8E2y6OSCa1+hwP56MjA==","signatures":[{"sig":"MEQCIDxxLp7Tf2leJRnypdnxKre67mSLWB5zINDjM7twv96xAiBks55GmBXyfvL6RfH7qfD3lXrchtSho/N9uawlGJqhOg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185657},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"bde3bf460484b46323196cdd478c956b7d61c899","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.4.1","@frontmcp/utils":"1.4.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.4.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.4.1_1780926468620_0.8622233060403992","host":"s3://npm-registry-packages-npm-production"}},"1.5.0-rc.1":{"name":"@frontmcp/plugin-approval","version":"1.5.0-rc.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.5.0-rc.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"468ed2a1d316ab52ef44ff412efc9134de376614","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.5.0-rc.1.tgz","fileCount":48,"integrity":"sha512-8J1TyLExLMSp7KqlM++B+T/cKcCuAwLmQY3iqLiMzHtf5N83hN9YwrCYopxjzGdVlr9DyUXVibqX1QFGHyJyIQ==","signatures":[{"sig":"MEYCIQDNalPBJm06RbvGU8cLAepUZpAXVyquf9HPDE/53makagIhAJgqU8cpD9ecnZ4U3Z7hCPVy4VmNk8bSGLHHm4o8D/fE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.5.0-rc.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185965},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"1bc9c89e34a995dc17bd167e99ce102d4a81ed35","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.5.0-rc.1","@frontmcp/utils":"1.5.0-rc.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.5.0-rc.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.5.0-rc.1_1782057595313_0.2301037446505121","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@frontmcp/plugin-approval","version":"1.5.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.5.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"f38aee0dadd074768b980b08652a3f861f07ed6c","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.5.0.tgz","fileCount":48,"integrity":"sha512-tPJ3tsTdLSWdaauG3m7aPbv1gQVA/zupEWg2swARNG4HfL1utduCDcKNnWsFLfzgA28wHXF8DkkgX0z7gaorEg==","signatures":[{"sig":"MEYCIQCWJXv6dTS9CqKTWvRsxTmkogut9A9DC+LAwTfNUwpFgwIhAIVLKfuhKl9CwUGekG9frxdVK5KP1Yxgv6gVca8HWktm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"96a78eaa5c6c4bc51cced557d83d1a03344cb03d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.5.0","@frontmcp/utils":"1.5.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.5.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.5.0_1782082995186_0.5782734789943125","host":"s3://npm-registry-packages-npm-production"}},"1.5.1":{"name":"@frontmcp/plugin-approval","version":"1.5.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.5.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"96a47f4145947e0b5adb1e0e95214e81766198a8","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.5.1.tgz","fileCount":48,"integrity":"sha512-BZrLx3X45ePi4eBuxlUCSQZKp2ZAo/COeBRnAO5wgYa+WX7CcyqUE9n0Xhji/qetu+hU/f+2WXymxVyeoitsZg==","signatures":[{"sig":"MEYCIQCzF+PYBBmDG5qrNsdnt7nWw34qsHUPjNDCmvifazqYMAIhANjufTKZx4khLB+xexMDVsob5sWs26Gmisvf9nBLRMDI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"adaa27684700496a1a8d71c5316f38749fa71a42","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.5.1","@frontmcp/utils":"1.5.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.5.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.5.1_1782118806645_0.18610724069878692","host":"s3://npm-registry-packages-npm-production"}},"1.5.2":{"name":"@frontmcp/plugin-approval","version":"1.5.2","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.5.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"eab21a1be8b3916f0fbd689e24db03e6d23acee6","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.5.2.tgz","fileCount":48,"integrity":"sha512-1DRM5/oIPdD3HU+yJwqexrnZ/mtKGwhup7yq9Z3DsOMs+Iijgs0JTJw3wXExhCUdA+ZGa2BrO6XjeDI4TfseRw==","signatures":[{"sig":"MEYCIQCWzJnrhQjn1Ko3BpW9ocSUvedOgeVNh5owGeY4jswg1wIhAIcjVMLZBNKIjnX47qJjjHigq0XzcA/SdvLW0XVtJNlG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"68154c5162d8ba004db07ee7a4e567c964c93028","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.11.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.5.2","@frontmcp/utils":"1.5.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.5.2"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.5.2_1782160067592_0.20899815916521103","host":"s3://npm-registry-packages-npm-production"}},"1.5.3":{"name":"@frontmcp/plugin-approval","version":"1.5.3","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.5.3","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"28cd559cadd1e38a3df1043f6ce243d07a4ad86b","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.5.3.tgz","fileCount":48,"integrity":"sha512-cPIr44gk3wN7lidyfOxuxtbRgokQD84rqzNWJrWHu/4Hsmh1AFz3w7gd0Y5ZS6o4AE7AjbcLzDy8CRBXGQfs9A==","signatures":[{"sig":"MEYCIQD4MImvNYVCGYB13iUg/zgQx8VCy/27wRN28vbiOnEfzgIhAMaejaPs/29/dm+IfU8HVMgefA//q9+WS3K3ZG76SVmD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.5.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"5bd23bb96ba3488f7c06e5abb480836d5ed06cea","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.5.3","@frontmcp/utils":"1.5.3","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.5.3"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.5.3_1784418450157_0.027290477559707815","host":"s3://npm-registry-packages-npm-production"}},"1.5.4":{"name":"@frontmcp/plugin-approval","version":"1.5.4","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.5.4","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"6889509db3f36b79b8f5089983816a9679c8829d","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.5.4.tgz","fileCount":48,"integrity":"sha512-ILCCtdeKy9VurwxV8RYefkuQmpV2wgNIVMo1jHITh1bMH0jMnD34FW3vKlz5920L09LJnPwkkYLwiRwvJxLHng==","signatures":[{"sig":"MEUCIQCxgnIC255WsrWWaCT7gfDwLIvOGTqdO4PIwgiHPeXLKAIgVUxrVfu1vaZQfihQqLx/7WbDSHlV1dEkCgx4kjCuug8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.5.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"89b4d3669e84cc5e88e6951fd5ad3595864125e5","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.5.4","@frontmcp/utils":"1.5.4","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.5.4"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.5.4_1784420117426_0.24380430362733452","host":"s3://npm-registry-packages-npm-production"}},"1.5.5":{"name":"@frontmcp/plugin-approval","version":"1.5.5","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.5.5","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"0d13b6d8f54a5a117ed694b327178bd6175a2436","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.5.5.tgz","fileCount":48,"integrity":"sha512-l5pUylaTyTQAePbtFfnpOuJSd0rKew+kIceiT8QmjNxD6fonM7L5Jay8OqGbMz+uwh0GFSp9p0MLUgDmBJlMUA==","signatures":[{"sig":"MEUCIQD2Rp5Z9VZZTtoV0FwLdDHLacUaSLRNHI9FQTvCS6do0wIgZPUED1VQixH5nRu5y2yE6dbiPWzbBOHIdNyhNEEBVG4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.5.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"82f53516ef73c759ac1563e83b68ce89911cd122","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.5.5","@frontmcp/utils":"1.5.5","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.5.5"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.5.5_1784631024804_0.20529256872902635","host":"s3://npm-registry-packages-npm-production"}},"1.5.6":{"name":"@frontmcp/plugin-approval","version":"1.5.6","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.5.6","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"4cb0ba5e70eaf40d34f41e8938c8586c2ebe7098","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.5.6.tgz","fileCount":48,"integrity":"sha512-DBUDo/cnyIkmVq1h4OIyUCbUPRkUgd4YbZ/ULJg2CRGq6AyVlnBsikrvPSDJtbBw+oFowJ/lZYJE2BchYKsLOQ==","signatures":[{"sig":"MEUCIBWU831c9vyG3OX2WXz58vDEC+tyKn0WP9H7GmZdMXmmAiEA5/I7jsoZfqgmAq98SUcI/FKce0o5Nwg0IZFmLfSc3W8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.5.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"077201e109bf6f45dbc85c36d6bd77ded18ab13e","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.5.6","@frontmcp/utils":"1.5.6","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.5.6"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.5.6_1784840540424_0.36948252545280424","host":"s3://npm-registry-packages-npm-production"}},"1.5.7":{"name":"@frontmcp/plugin-approval","version":"1.5.7","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.5.7","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"85776694d840ee2abe29fe2d80ebf5d81aacf584","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.5.7.tgz","fileCount":48,"integrity":"sha512-niBJwXzh2xUBXPKImgELHI41T0bpnhFkI9qbQ2jA3NQ8V3t5+fkMbCzBataoSUr8WgcBPRpOAFyuULyqjnQzrA==","signatures":[{"sig":"MEUCIQDNashr5j/OgZFOaS8p2Dv/SMvebxPxhmWC4ez4HIUECwIgPD2M0oO9flo9asmwjxFrIb0DW40ODXQjoPFjvo6ENjo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.5.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"209cddd19a8d4db0777f725b527818da7df6f67f","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.5.7","@frontmcp/utils":"1.5.7","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.5.7"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.5.7_1785031670464_0.075244713529937","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@frontmcp/plugin-approval","version":"1.6.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.6.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"82b94451e48b8e02a684bf031ba552d55743c026","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.6.0.tgz","fileCount":48,"integrity":"sha512-7B4d9hsOOn6nGsIGWUAikgdXtfPHY+KsjBD2AvKeTSy7Lg1p3ecvyLGq8hR0OaQi+9HsmHLabjSYElJfEDZM9w==","signatures":[{"sig":"MEYCIQCcVtociIgurbHVSIpC2VYLpj9feMlcgzHxbnwjKhJotQIhAPM5K5MfinYlVUh8+vaZEjcXkuMicj2RtmXgLHgwAOYp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"4e8bb124fb826daeee4336073db12ae9b3a394c0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.6.0","@frontmcp/utils":"1.6.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.6.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.6.0_1785634701763_0.8275774706402987","host":"s3://npm-registry-packages-npm-production"}},"1.6.1":{"name":"@frontmcp/plugin-approval","version":"1.6.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.6.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"ea12cb939f92025d29b9eecb2b3b8f9df19b396b","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.6.1.tgz","fileCount":48,"integrity":"sha512-uR7qZQaoJp6u0zb+7bFfkd22CWZWS01TckaE3lmoCwUBgLQIOmBfpBytfX1xlNFRy6hgekq2992wFTNSuW9RiQ==","signatures":[{"sig":"MEUCIQCRnF9zxFdiNKYYIkIWzfaLe140134TerrI89zN24mMvQIgaOPDlxfEN/c5mgcPAp6IkVyX3WhrzDEa6IsfMCrbreY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"6dd9a0792e270af953a222a50406a33feeb69e1c","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.6.1","@frontmcp/utils":"1.6.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.6.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.6.1_1786063579081_0.13427160815360573","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@frontmcp/plugin-approval","version":"1.7.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.7.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"1575306b4de9c2aadbf993b1673350ec05e4a52c","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.7.0.tgz","fileCount":48,"integrity":"sha512-cF609BeypjBvubcxihwcxAv/RVcvcnotbCUBu4IqVhera3aslCyWPXZcuyPwWYkwLsxHVbAOPU+LF21ArT1RTw==","signatures":[{"sig":"MEQCIF5R+AFhsmMhj15xk/lp3i4a/EGiGna0pt6zS5iiDk3pAiAfpNjrTp0cjhzwnYjpiEZqhNRrvW588vu1RrFuYMCElQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"c5c91280a46767aaaeb60b01cfbf35cc7877fefb","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.7.0","@frontmcp/utils":"1.7.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.7.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.7.0_1788281648900_0.015136883929158573","host":"s3://npm-registry-packages-npm-production"}},"1.7.1":{"name":"@frontmcp/plugin-approval","version":"1.7.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.7.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"326aacfefac5db99124d1642c7c0d6ef76d2155a","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.7.1.tgz","fileCount":48,"integrity":"sha512-tW2IP1LcSr18ZB61XCkzCxaJuy6K0ZjZ5JQPZD6KQWaucJ+MADa6Kj3eCBl9GUkNXoLqFcoCSYCyG1riVBUqMg==","signatures":[{"sig":"MEMCIDMteNEls8lyEqH1tAKJ6FxsjVUIjFYP856EDhQ9GVohAh8DaUKSW44Yg2vXb1ADCALSQB9Y1BzBMY9tllnVVVAw","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"4c6bd9fd9929f0c07dcb26c6bba60cb57d9678dc","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.7.1","@frontmcp/utils":"1.7.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.7.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.7.1_1789001861124_0.3483314840492502","host":"s3://npm-registry-packages-npm-production"}},"1.7.2":{"name":"@frontmcp/plugin-approval","version":"1.7.2","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.7.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"598a44a297f9bee5af7a6287427b788f0bbe0d62","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.7.2.tgz","fileCount":48,"integrity":"sha512-1s6N3RYQn7M6puBUATM4lMTH37/TNTkLR2yUxRoSscczHDO+cPCtrGWlaX/nxZeRWDuJ1V+vGaQziCIYyAjGWA==","signatures":[{"sig":"MEUCICPwhb7i814pfpdxZ0t0dTaxp7A0CMYLir+s3wvTxWfgAiEA5PNhy5HG/CocHM881iHd8hLUdIcS5GCCtE5/lLZUb40=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.7.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":185925},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"4c3664bb8725090c377f6b7567184008ff64b6b2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.7.2","@frontmcp/utils":"1.7.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.7.2"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.7.2_1789348965674_0.8461233682619314","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@frontmcp/plugin-approval","version":"1.8.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.8.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"d1f79fdceecd6ca391b597496eb8afff741b700e","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.8.0.tgz","fileCount":48,"integrity":"sha512-4cSXLvIVywb7NDtecxo433flA69KzFxf0geHMfAo1N5wnB6oluxWgZHTiAPm/iO7TtKvsN3kB5SZ1K3gODBM3g==","signatures":[{"sig":"MEUCIC0hEs67e6137Ay7RtM7ixmkWqz1OZ0VubYOL8TvnQ6ZAiEAh+/YpYAy/QcB0U09ZE8Tp6GFCH+VYyEycGmY0nXH/Lw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCdArUn17Fsl9l336XGssUO/AxVmg3abO0relSUFZiotAIhAMhZ5vthdf6YM+4PI38qh8DwZadslUSsrFKg1pWnkaWH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":187106},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"c46a95dd25cac887b92fdb07ab3efd13da3d2636","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.8.0","@frontmcp/utils":"1.8.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.8.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.8.0_1790030542343_0.5325862703329143","host":"s3://npm-registry-packages-npm-production"}},"1.8.1":{"name":"@frontmcp/plugin-approval","version":"1.8.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.8.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"5d13fdc75456872617f8fd4e8be73a7f679c3134","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.8.1.tgz","fileCount":50,"integrity":"sha512-a9t1ib1mid8G1c18ssoLQbkvPLX4rmfY22T5+J/D2x1XJrguGalKYMu0aNe3xB+XPPTmOp/6Mb2NH2x4ZD7KbQ==","signatures":[{"sig":"MEYCIQCiqPUEH1UYjsCiI59Aex+oTcLy05z7xz2F7zGctaeaOAIhAO9b6cGS4D/osSXVoFULTUGzjKQJ9hLM7CNLl49ebLiv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICfYfV4h4Dzhjgk72QqUdx30kvmZdxNqviN84ylwkEbbAiAq/2isNf0Ej/O8usJ5PkfY0izGgMCiXdOzjzjbS7CD0w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":190628},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"9aad47d2c1ed8e1182beb0e89248a4ba6020cbee","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.8.1","@frontmcp/utils":"1.8.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.8.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.8.1_1790437417339_0.2123636987016908","host":"s3://npm-registry-packages-npm-production"}},"1.8.2":{"name":"@frontmcp/plugin-approval","version":"1.8.2","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.8.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"2ddecfb6e15c9969d4a0218f6c4f8f7b95951c09","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.8.2.tgz","fileCount":50,"integrity":"sha512-fzcfP0YP0PWdUtSqbbpPpZz6tjHYa4GG19jGlAblb+CJeA08JjwAVgIHT4iZaN493Luj147dSWu4t1n++OaKNw==","signatures":[{"sig":"MEUCIAM31X5Yx0JZ9SQNOENreQuSjdVlRgCRTBwU/K5wDj0cAiEAiCwT8eHEgJPm1ANAFylgOK/1weNTKKoneTSlVIgh/Yk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC0mnS/myuwYaQlSOiRK35ajYerlPxIZNaj9IQrwXrvvAIgGXZLjkWhS9HiRA0g/sYl0hqQxKGooPemDSENI5eotno=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.8.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":190315},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"9760995ae4cfa28175c716580da45e8c866888a0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.8.2","@frontmcp/utils":"1.8.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.8.2"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.8.2_1790457201068_0.8388833917382095","host":"s3://npm-registry-packages-npm-production"}},"1.8.3":{"name":"@frontmcp/plugin-approval","version":"1.8.3","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.8.3","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"f14025ee2795763cfd2886a8051193aa0820310c","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.8.3.tgz","fileCount":52,"integrity":"sha512-7GoSxzKClXLoAi+mYg9pPJ+XLxjxfznlsKH8QeGtlrqEl8aZN/NKvAbSgk+qSqPUJX1DO2QlCgYJI7NQ634MqA==","signatures":[{"sig":"MEUCICiiVjlrXuowjpzNh9ftPjDrEY9wrLTsImvQXVkKrsySAiEAwawfNnVlnkhWEvEjJ2609KMEyxOSLh8yQAEMpzBoIGA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDbK0BKO9BcEKBTN/i+Zfbd/CNOkDBYJ7K6h42GtHGljAiB/YWJ3lAqPGSuAt/Bd0NWwOkELBM+rNv3W0GPXJhkV6w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.8.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":212270},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"f9731edb2c6f5a475dcc27d56569ae6952d1650d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.8.3","@frontmcp/utils":"1.8.3","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.8.3"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.8.3_1790585700831_0.7548902642478474","host":"s3://npm-registry-packages-npm-production"}},"1.8.4":{"name":"@frontmcp/plugin-approval","version":"1.8.4","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.8.4","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"cb830df01d0abd6d9c5e60788dcee92874344a30","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.8.4.tgz","fileCount":52,"integrity":"sha512-mGaKkvZb/oulWg8oMCqvgS4jJFX90/+8bcf/mNNXCiKlfngxKcHQ41BhP7bE9IqL8yY2N0IvkHpB1AT4jCttkA==","signatures":[{"sig":"MEUCIQDNGlTbC9c2R6UV00zoXt072A407C1ZVFC1EkCrVmJNOQIgFqsrXO/JckY3WEYApAkcuw+c7H8yD/APJRWPyHfWzMo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAKpfKujxbAT0PfCsuAKvMbT7QZ9NwXWvUJEZrv/aw27AiEAkc3UdSiFnx0eCq30Jp0BRY1MNXBeflM9Ws6R7XOWoKA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.8.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":212270},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"032005884f4145bfa4311fc4042c147ba326745c","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.8.4","@frontmcp/utils":"1.8.4","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.8.4"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.8.4_1790611170104_0.7439243048303974","host":"s3://npm-registry-packages-npm-production"}},"1.8.5":{"name":"@frontmcp/plugin-approval","version":"1.8.5","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.8.5","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"d05c3ed6ec8e849a1ad94e425e06868a5e8f7fea","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.8.5.tgz","fileCount":52,"integrity":"sha512-lqshUcVc4vh72mYhL/Atirr+4weASXxDnYbUPxvaHj9/cjUqof1fxK3XTZZSm874ioHZAEbmQJHsOGA8+AN46Q==","signatures":[{"sig":"MEQCIGSsi3xilliVgfc1SN1wSd7CCQrU3uHNCoiUxHwoavF2AiBkcvTHBZnMZd6v8eOc/kpiufQoIegedJL8yegUTjfFtg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCID5JY9M6nMWCXCMqd/XunmOZ8f45HIoJsrNzSe1HybeVAiEA7UyuPLcUQGsXjAsk9viHRPE+2OGDNVvJP7mskfQZor4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.8.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":212270},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"450737a4cd9a0b357a685ee003b7216e14b935e4","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.8.5","@frontmcp/utils":"1.8.5","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.8.5"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.8.5_1790676006902_0.44080991499140065","host":"s3://npm-registry-packages-npm-production"}},"1.8.6":{"name":"@frontmcp/plugin-approval","version":"1.8.6","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.8.6","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"4559330b70b01c6893d6798a031e8b875c3336ce","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.8.6.tgz","fileCount":52,"integrity":"sha512-lwrZsF3cQqv6llkmjddq9qBlAFc9yQdhN9rpOGaIYdkkj3afc0jReaAy0ekt4x5MWe07ADTCujYjVouCz8cayQ==","signatures":[{"sig":"MEUCIERhDgQGa05TEL2ZhWRdle3AsMZS0FdHnXdSaSY9BDAqAiEA++DpUHyVCBe+y9cP2e7CIXEuDwGkIWdJagEGISNBKBk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD/7hiuvRe9gu4HxGN3OvTA6FAAMTThxvHkbLSv1wVa6wIgfebeITN/iFRdz4bVKZYwtYLz41GZM6GMQyy+Nwljvy8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.8.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":216678},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"11dc67d3a954c10d2410b9704a04df2568d82daa","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.8.6","@frontmcp/utils":"1.8.6","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.8.6"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.8.6_1790765828838_0.3477740324495986","host":"s3://npm-registry-packages-npm-production"}},"1.8.7":{"name":"@frontmcp/plugin-approval","version":"1.8.7","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.8.7","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"6fd4d39f6801d574cf64cdfe8465168e198e1a10","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.8.7.tgz","fileCount":52,"integrity":"sha512-mDQ94O8TCSugzOtRAPln/mDmU6iHkeHIBNi35KW+5ChuolQ9TyxdToEQkirxc9/N2QDNpO+x25G9iUu0YupTVQ==","signatures":[{"sig":"MEQCIHRQIIhXXEBZitbBaiH2JZeQQ0meqPojEDRhbB0EALHsAiBUL4Jx+MYdr9i4yKkmmkuv+dmvBldTEfojvhd+cUKxvw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCn+uWkJ+GuF6OeD8feOCiteFh+Ac+WZEe31ghAvhu/NQIhAK9aZw+bFgkGWNF10Dm/7CZ5xEP0AgC+m8rX9sYVZgUj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.8.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":222174},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"0821bcb0b7aa43fcf748fbf9cacd401a2ac90f4f","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.8.7","@frontmcp/utils":"1.8.7","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.8.7"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.8.7_1790816729381_0.7227094799048919","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@frontmcp/plugin-approval","version":"1.9.0","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.9.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"09cb965d99c35a2af9d20aa67e04da945fa42163","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.9.0.tgz","fileCount":52,"integrity":"sha512-D3idyFZcrnDknUSbSql2NNc0nKvfOu5nu4zcr/pJ4UXcswnxpJA8TJzouKF0Z+SwYVTQ/dOb2Qp8bDg0V4J4PA==","signatures":[{"sig":"MEYCIQCV7lzZS2NlwROp7X+aF0Yqciv5B1b/RqLdeiitEXVgSgIhALpjP6JEgBQysiNWqBZVgJrrRzn8+xGcrfddkAG+6SwI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIF9aZb36hPULodWv1P3fv+jV7CsdOx0LMsEcKKchgbHSAiBlzx2/1Ce4r2aUlvirgbJbavHlRwcc/8BNWyrRZSHCNQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231494},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"257eaafd2417629371810b5a8175ce29c7427db9","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.9.0","@frontmcp/utils":"1.9.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.9.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.9.0_1791068076378_0.654233503410955","host":"s3://npm-registry-packages-npm-production"}},"1.9.1-rc.1":{"name":"@frontmcp/plugin-approval","version":"1.9.1-rc.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.9.1-rc.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"6678bd38d73e958060604b9039deab36e4f1aa50","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.9.1-rc.1.tgz","fileCount":52,"integrity":"sha512-i5Ths06i1VDi4Pr0dpT/wBQaGBJK4xebk+DT1cA9hjrx5UqZ4aNcNp1pZ6Jqrz+NzEOlTHqiyUoEtWQTiajTLw==","signatures":[{"sig":"MEUCIQCrfIcxCvHxDAnaWAM6t9oEv8f6nhHq1NcZSmQIeP9e5gIgChj4kibuUUOh4X4ssb93pG24QXHd5aNU0HW8xpzSPW0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCo3AqzSMzUFsFy32Tju/keauJJ5TWFJYI8awlVIA5TYQIhAM20VMYkd274trpKf3Zi/6AhW4B7sJg2ecFNtWey+Gom","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.9.1-rc.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231534},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"308f53d7129356befca21fdbed6792350236b462","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.9.1-rc.1","@frontmcp/utils":"1.9.1-rc.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.9.1-rc.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.9.1-rc.1_1791132207133_0.6324285028531269","host":"s3://npm-registry-packages-npm-production"}},"1.9.1-rc.2":{"name":"@frontmcp/plugin-approval","version":"1.9.1-rc.2","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.9.1-rc.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"b4e300551e75c55d2696e2b31a09ef11abd5443d","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.9.1-rc.2.tgz","fileCount":52,"integrity":"sha512-u3Uloyya5Dmay7/XHo3FFn1b3IqzYOnYJCBLFzLsbD+YeAIv2xQ5DS8vw2buNjmBURD1FCcTy00TEW/Wrpb05A==","signatures":[{"sig":"MEUCIQDqHEi3AwFQHo7gDDlEY79nSOF2YnYuAUuiRnluRvJX+gIgZ3NG5IGQHhPxlv3chtNpmMzzlEedQf5ViKwgcPiKrQ8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDb7AIVCEQQCmIfyldT3vh/UD6bTIKBrX463aPqWti82AIgUdvSvGjLcesXyEqqkZ8VJqqJ/wuzUsY10B9J15HA5Cs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.9.1-rc.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231534},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"477089e1f073e34d2f338e29959acd04b378e355","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.9.1-rc.2","@frontmcp/utils":"1.9.1-rc.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.9.1-rc.2"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.9.1-rc.2_1791205830622_0.6387896238744448","host":"s3://npm-registry-packages-npm-production"}},"1.9.1-rc.3":{"name":"@frontmcp/plugin-approval","version":"1.9.1-rc.3","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.9.1-rc.3","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"335f3d9944145ebfa735ac482e1200b32fead158","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.9.1-rc.3.tgz","fileCount":52,"integrity":"sha512-kaFtUZbqo7rfqu5N+j3dMVnP+1nfSqfKnEd1ccrjsLrECX3bwDnJcmRTdscVuSrCzBQbJDciL3Drat8WrNsgrA==","signatures":[{"sig":"MEUCIQDkv0yu9a/HWkCph4goIDZwfxjtmSGDNRTNy0l3BDPyUwIgQolJ5geBab/JLckZ0utMLFjea5kJG9FW/UClActG5DM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCUprT8x7/1c1rXh0krg1/EOcTlUu8ZTS2zUQjevqZpIwIgJ54Vu/yupA5lBJJpiUu6EXPc4wmvIxQjMne6JRGMpU4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.9.1-rc.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231534},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"8f648c98718b0616db654ea033f56b198bbda601","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.9.1-rc.3","@frontmcp/utils":"1.9.1-rc.3","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.9.1-rc.3"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.9.1-rc.3_1791214798522_0.4407062740516594","host":"s3://npm-registry-packages-npm-production"}},"1.9.1":{"name":"@frontmcp/plugin-approval","version":"1.9.1","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.9.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"ce6993f9ac82e7614711670dc3a542934c88e3e2","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.9.1.tgz","fileCount":52,"integrity":"sha512-hJPdWVsCh+Yd4aNDhCJUIcQmDoRvFDpvBOPrOnZmX2L8KlI/FvONfzfG0tBv4QDfYBRS+YQGbHdKjL4GepL3Yg==","signatures":[{"sig":"MEUCIAxLK0jYtRKxetDFEw09oCXTUI6q44oPdzlvhXiea7iSAiEA/r8/wrLqTberLaIp90Rm56ThMX51GNc6BpHzGWqJbzQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCNSk8u7M7/50NlbIHIwdY11ZY+QKcs7XQpDiDwl5wizwIhAJsix4mTbp9ZkDVJ1PJtNdGS5Kb62D6KCzl8E5x6xPvM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231494},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"c1c92f790a33b89844d29f763a3d14380ce1c825","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.9.1","@frontmcp/utils":"1.9.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.9.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.9.1_1791217427668_0.008722254828158693","host":"s3://npm-registry-packages-npm-production"}},"1.9.2":{"name":"@frontmcp/plugin-approval","version":"1.9.2","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.9.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"5b593283ad12266d5c906708fc83bfc1d7c16995","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.9.2.tgz","fileCount":52,"integrity":"sha512-zmbymjIAffDiXWJCWmegfhYj/LeZMI5GDcgrxAfAFv3bKx7CH2AGojeBRn1Wed8bPb22OKxLqLT4HV4obPEDFQ==","signatures":[{"sig":"MEQCIAt6iqRut2yv/Fq7LMtVJDc7YJSf0ydRnV0Rfkei0PceAiBpQ3iSkuY1Meof3MGYGrA+d9qf2G7cBhEJE5P/PYaUdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDqPjqJaoUs4s4i2wLbNAnnutQGcVF3j0S2r/GhuaLMMQIhAM9F6qIsEeWesoIQbDZou1/geRfNXZA/xT1NDKDbOXS2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231595},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"def4a5b977ee1a51a0b8e6cafeb7e26f78e372b8","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.9.2","@frontmcp/utils":"1.9.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.9.2"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.9.2_1791289358691_0.6137239417699489","host":"s3://npm-registry-packages-npm-production"}},"1.9.3":{"name":"@frontmcp/plugin-approval","version":"1.9.3","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.9.3","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"7c03b9866830cd163b67f2345ac69f82f42cfa03","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.9.3.tgz","fileCount":52,"integrity":"sha512-ZJxEuGZNLrLBa1FiMZM5YEicl2lKGyqjX/xh6mRZ4rA0GJEFUAK6Ma4BEHnhSJQKllZ9152s5u1/AvwWLhf8DA==","signatures":[{"sig":"MEUCIQCA/wVVTITCzDwKQ/fsxMynJO8bzmQR+g/57Ka8ksXG+wIgay0vKZNclPS5UlkpgzjYd9SbZ77Zq31YbtqJsEiJE5g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCPU9yFEPQu6/1YTb1O3SX0TFNZLM2hSyfA2bSg++iXeQIhAKPme60TSPGydPYB67F5Wc3xupmyXpw8TBvUvU1MVcHM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.9.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231813},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"011e339c17d76f9706952a731a144844d3bf376b","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.9.3","@frontmcp/utils":"1.9.3","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.9.3"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.9.3_1791343305983_0.5982301933736536","host":"s3://npm-registry-packages-npm-production"}},"1.9.4":{"name":"@frontmcp/plugin-approval","version":"1.9.4","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.9.4","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://github.com/agentfront/frontmcp/blob/main/plugins/plugin-approval/README.md","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"a33565ab90b52197f82e22abf21a6647359adaad","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.9.4.tgz","fileCount":52,"integrity":"sha512-Wcko3BlfN2rIYb3qAtONCXCKJFT/ld1Iyu2K17ZS84E/nJiVy1iDL/pbKyKoe8Q2tjrNrhGY32/vbhLNgCkraw==","signatures":[{"sig":"MEUCIQC4852BspjOFNz+BKbkRsQ3UdJ2PEh3oRqlPihAlYxb3wIgKPyOwfsgpSKK65ozaD0Qb/pBFsUnIb5KYMSNt6kUUfI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCe0QDV1GKPQDaaV79N13A5xFNIXM0hb0UaUkpWmBpsSQIgGMhh43LFKgpkLN1aBxelkocwe4rhLDIdgfE65/MImr4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.9.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231813},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"b3ed25ad27ae1204c6f023b816f2962a8b77f759","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.9.4","@frontmcp/utils":"1.9.4","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.9.4"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.9.4_1791592755990_0.7514601879678744","host":"s3://npm-registry-packages-npm-production"}},"1.9.5":{"name":"@frontmcp/plugin-approval","version":"1.9.5","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.9.5","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"45d80c746ce6eec6af7ef7744d2975061bd06520","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.9.5.tgz","fileCount":52,"integrity":"sha512-PdRcqsdvCN2mTuH4YQk0Fqh15aRTAr5By4yTyRcpelQCG/wcYy0Q/1uvpqfr3m0dAHRX1dGin4xAHRsAmAVZgQ==","signatures":[{"sig":"MEUCIHbULlmq8hTMMHTK1CX22uBxh97MfnAMxSnikfELH7yiAiEA8ue3bUW6rDcHdKytm1W0BslWmdWm917nKUnIzU2fmuI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIEH0ipFB0gTMBrewGwYH0rjw55TPvZDc9sGIYdrmgr6PAiBaEmHpbmxapB+6COnHb9/0Mzt5BxCcroa4v5xxK2JSXg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.9.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231743},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"40f83cd630c3461173f50b9721c1767031f0e606","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.9.5","@frontmcp/utils":"1.9.5","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.9.5"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.9.5_1791708847427_0.4909887889869966","host":"s3://npm-registry-packages-npm-production"}},"1.9.6":{"name":"@frontmcp/plugin-approval","version":"1.9.6","keywords":["mcp","approval","authorization","pkce","webhook","plugin","frontmcp","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.9.6","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"bd7bce0b18ab655bd6a34473d5d7ef02bbe58ca7","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.9.6.tgz","fileCount":52,"integrity":"sha512-Mpn/ej6Kp31ZG3JoLkvR7WZ2tandShNn1qoPlN5cK9PTTjvcStfXrEtoqk9Db3sMDu0lQaTDhvZpzHCqp+N6nw==","signatures":[{"sig":"MEUCIQDLYidkytsLa6vPDHupTCxMj3eX8I/4Cv1ZhL40CasTmAIgFmvx3wnDVWSCqcvLdx0QVQChopOlTmJYdyhLY2kop2Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDFyRLqPEgy95u16fkRvBoHzJrhov+rng569j50BH/D3AIgXYWdKoxkAniAzSaBJDh/60GV7KKb3fnwlV2zTfd7pGU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.9.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":231743},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"5c50e152f743cd568372dad7143607eea1c0b6b9","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP - tool authorization workflow with PKCE webhook security","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/sdk":"1.9.6","@frontmcp/utils":"1.9.6","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/lazy-zod":"1.9.6"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.9.6_1791740038007_0.4551299277856957","host":"s3://npm-registry-packages-npm-production"}},"1.9.7":{"name":"@frontmcp/plugin-approval","version":"1.9.7","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.9.7","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"37ee1ecf3362614985b4f591be741ada8a0d806e","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.9.7.tgz","fileCount":52,"integrity":"sha512-3+quaOPGq0v6H49rUtKiDYuEFSE9ZPaewIQjsqme4K3GPgKP69Ks4qvqB7ije3v8BDn/o7eSlulI6qf4/GnscQ==","signatures":[{"sig":"MEYCIQCyftH05TwglMAge+2y9yOOy1EfPesBDrK4IvmjrQETjQIhAN9WqpP/3c1P4pcRoXeB4r8+jTDkheFMvqpD4GBswXVy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDvJKRH0OEp1z1tgSvW/ktilDPAON69Xv62C9A3ch3dggIgf+62eMKEX4hloQ9V2290kXaAs4MDfnTxBfHvq24xuAs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.9.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241927},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"2780fbc2ca56a3d2a8f6f49cb8b97b293a8d3626","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.9.7","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.9.7","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.9.7","@frontmcp/lazy-zod":"1.9.7"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.9.7_1791822008384_0.5625432308823215","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@frontmcp/plugin-approval","version":"1.10.0","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"b799823586b3c5d54f392b6cde49f511f66b803e","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.0.tgz","fileCount":52,"integrity":"sha512-r38h/VKkzQLhTtooJZhNyMHlyDQl7W2SERT6noApm6q/0Xe5hd3/4exLYAs44Oov4znWBVQHvXUr/DjejkSNDA==","signatures":[{"sig":"MEYCIQDcapmTjWDMOcBitzIuuYAVzFtlzin2cmFpoNK9S4nO/gIhAIWnFP5n0+fBgwzYnC3IFggSYA/9/x3RWKIpl/HlEvUr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHTzxg25GjH2BjnKsT8ImsUJisBl6oakldfAkSzKYgcuAiBUMnLyPUXxTcb5axw5Y6a6wNBMr88LlWmv34mr4yPWiw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241937},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"ff9ec45ac9b2f922cdf2451349d3392158d1d548","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.0","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.0","@frontmcp/lazy-zod":"1.10.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.0_1791853294947_0.643403363531023","host":"s3://npm-registry-packages-npm-production"}},"1.10.1":{"name":"@frontmcp/plugin-approval","version":"1.10.1","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"39238176cc006590c23545b8c1f7cc1623cc821c","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.1.tgz","fileCount":52,"integrity":"sha512-QnNyGl3FqlCyFYk+45c5B0cEOcGJwVV/E7unOT1NIojNlxQ392nzRhE/KqFks9rBmtCjc10z9CEU9tWLSNY/Zw==","signatures":[{"sig":"MEUCIQCH75D/JajYdZHhZyqO3b3TSrRgbQgaQIHXewEjBY6ILwIgadapS7UmPOrYWZEmkhejGyceHv3L35EOi4uJVnm1pQQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICfiGu3GDFrRKFkbUwjUxfXgWHu0PL9Sqxg0X8E+YR+vAiBJS+VQtdGie9qbPxgN2mb0nOAgTYHZO0qkFO6HI/GvSw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241937},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"50fd932e7d7cfe277d95abf1105fb6c9e10b3d4d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.1","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.1","@frontmcp/lazy-zod":"1.10.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.1_1791861270176_0.49540170677953577","host":"s3://npm-registry-packages-npm-production"}},"1.10.2":{"name":"@frontmcp/plugin-approval","version":"1.10.2","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"3be069925dee51f88a04cd7b38261ff915f45972","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.2.tgz","fileCount":52,"integrity":"sha512-s0HFh5knRDJarGTbfhSXtbUsiQfZrGdHdYjH5DmAt5J8+yQDrIjxGcWuf5L3BOI2cjyFnNPIUZ0ZsmojofkxKQ==","signatures":[{"sig":"MEUCIQCDyJ4qSUm+Pm68RNMa72VZjFTwtq79CwgUkhb77oftegIgHqEJTKGneYQ66M+X1+teuHozN6Gs0u+fWV6HxSqcW5Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDSWoyu2S4SySObufutT12gGVNBSXSjEv1ZVGgYet9ODgIhAJqAC8jb1ZEG8Y63swu7UCMzay92ce/mbqvvu1HeOLI3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241937},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"718bb460a89116caa48f1871537211b15b1e5072","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.2","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.2","@frontmcp/lazy-zod":"1.10.2"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.2_1791873241049_0.9225245299892326","host":"s3://npm-registry-packages-npm-production"}},"1.10.3":{"name":"@frontmcp/plugin-approval","version":"1.10.3","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.3","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"1f7fd017a825a1baa3ff5f625aab813bb0df57af","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.3.tgz","fileCount":52,"integrity":"sha512-f5s1Jgi4zqskuTEzuo/eMzJ6sY4i2ZMnZlZ2JXlGjGfGK+U/mvdTGIhijCGz5B6iWjuxsK0hk0neIvmNAcHwFw==","signatures":[{"sig":"MEUCIQCmpbIGxV1QySY1lLrlQzBqQTRQbdMIsL3HHhJ33zv2zgIgIGUSkYjFyQxj5S6wcpTKXKFZdKTcH102/gVRedIXgI8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGQSNc45McidehNFFCIwCKBzoaCioh838ZBIjbJX/g7FAiBZQM9gKoJ/zxFiu+e1FFuYmVdOXQe/7jpDPUJ5WeWu0w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241937},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"663bfd76a7c7452c748429102e4425c8981afb62","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.3","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.3","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.3","@frontmcp/lazy-zod":"1.10.3"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.3_1792277450330_0.5071844749496217","host":"s3://npm-registry-packages-npm-production"}},"1.10.4":{"name":"@frontmcp/plugin-approval","version":"1.10.4","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.4","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"8d6d3538d2e40ca67eed4cfb9eb77ecb061805d5","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.4.tgz","fileCount":52,"integrity":"sha512-RU1pHm4sJasRkmNCaeHvro2iLfHhykhx3Dr9LgxQxXoQjeAOl39kIkY27rzd+jWaVjFLsURTN2vjeW4GdteRZA==","signatures":[{"sig":"MEUCIEGTfcTY1sGHH9dHSPFFYk7mTxJEZsZw1oei/Kqdzkp6AiEAk/9pT93yfKwbSUt5RGu5CFo1iqq9rxs84v9yTNk9loo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDI/lVSIaqzE7My+2OiGaGLN2bV/ZnCIkOUOANQeEPuowIhANhS7AWw798ko/xyuF5vb8uIHQKnro4+XB1CgzqeHFiy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241937},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"0d0c2b9d45bd89ff625c519239f2eaa93459d1c2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.4","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.4","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.4","@frontmcp/lazy-zod":"1.10.4"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.4_1792483434963_0.08652319217474846","host":"s3://npm-registry-packages-npm-production"}},"1.10.5":{"name":"@frontmcp/plugin-approval","version":"1.10.5","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.5","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"67fcb1bf108ad9a51464108896786ec9db673337","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.5.tgz","fileCount":52,"integrity":"sha512-TmGBcjn9msPLIoBOTef3fTXszLnZMQe9ppmyN90hqMewOLadxjGu6FRZQBlAy6D2BfkSElQ+UuIkah+/0sLKkw==","signatures":[{"sig":"MEYCIQCZVUfprJMao6Xr1aAN4FsEm7FKVfBSL6OpfUGHP/D/YQIhAJi1dGJ2pB8grNaPIsHLfWBrN59SJW3XZOaWEkUxVTYB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHZRZg44o7sDhZ6hQ6VCpOXZuQAcUIP4gtJZqF5MjsvsAiAwq5kcSbTc1LAfywLVKQDCXl+yVFW5q3qNYs/C9e9lfg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241937},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"36f4d8585fc16258b728bc683b225fc194fd5c92","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.5","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.5","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.5","@frontmcp/lazy-zod":"1.10.5"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.5_1792486079516_0.5315093554715242","host":"s3://npm-registry-packages-npm-production"}},"1.10.6":{"name":"@frontmcp/plugin-approval","version":"1.10.6","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.6","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"044cda426038e039771d4c72e1cda3c367257368","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.6.tgz","fileCount":52,"integrity":"sha512-IXpUukntGgXlXhMgxuUZuHZEZ0ikrxwhXVVStq2xrLAOMOlatZizatEjMPzkRrmPu39r1vYep6Mf8X7KD1UbGw==","signatures":[{"sig":"MEQCIAjp/0xymYXNixejyAc7prDp/EB+GfT+lNpocI5nT3oDAiA1yg6QVMXgiXkKQjNWA4y4RkPX4mPh2nqRqsgkgQNVpw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDlwnzjbAO2to5a9ezLuKmGSnsTY8uLrTuwTnppTnO5OAiBxiUYERZDm8H87ijTlZZGIYpBF39mdO3iIgf2CZ7/ung==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241937},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"30b31110fed8d5d55ba931df2cac6489f41f76b3","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.6","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.6","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.6","@frontmcp/lazy-zod":"1.10.6"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.6_1792500302605_0.9775372270146299","host":"s3://npm-registry-packages-npm-production"}},"1.10.7":{"name":"@frontmcp/plugin-approval","version":"1.10.7","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.7","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"166f00b9150d02c8da690403674286c8c7b2d996","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.7.tgz","fileCount":52,"integrity":"sha512-SruL0m6hV1S31yg/W96NiaNNiWJxfJGuD+b4heg6n5PoLOvdtO8Gu2ENkxSZKcIlgQA+3wc2TcWgyMsyOS8AWA==","signatures":[{"sig":"MEUCIQCx4Y06W8Z2gtRAebTOAPFeH+wobn+P5TY5MahGtjHWQwIgE08mlnR1gKvPDi0z5mfV8p78NtMWvxMhEaVZz0TpX8w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBeyKsAFXswEu2RXlAuCDcBxPnMXSFZHwunS22+lIS4mAiASKD99ilrqCx3hC6a8KKlAjM6dbkwad/jfnrCgdGBbcw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241937},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"7ac4684f37a13d3c74caff03575d747fea343479","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.7","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.7","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.7","@frontmcp/lazy-zod":"1.10.7"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.7_1792508532662_0.235049754729447","host":"s3://npm-registry-packages-npm-production"}},"1.10.8":{"name":"@frontmcp/plugin-approval","version":"1.10.8","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.8","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"ac54e0d35bc565c584a3ce4baa056a6989983bb2","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.8.tgz","fileCount":52,"integrity":"sha512-LtfxqyqVmXnJEJRzAVyYGaXs8UXOwkChn+nOiuWf35dC08ky9paDAzi9lZ3dMVhiVEir0jJiMxLz944QaJfTxw==","signatures":[{"sig":"MEUCIQC8I3zCl8wPR4xsBwOTl3OoopffM1/rDnfuxhEyCRxmOwIgUoiTF/pvHuDwpPMq98ZJaUb0PpuRsuw3SEncOJHIx0M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGtcpySfGQimILbSLxfxDDLH5xAX5Wlxeu/GpGW8cS5dAiBORjrXspcfKR5YvrDEY42ZcOLFrGNXD9gkmESlLqGFUQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241937},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"022c8cacbbb0d3f9e848c35c69acff31876711af","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.8","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.8","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.8","@frontmcp/lazy-zod":"1.10.8"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.8_1792533614203_0.2773536897168585","host":"s3://npm-registry-packages-npm-production"}},"1.10.9-rc.1":{"name":"@frontmcp/plugin-approval","version":"1.10.9-rc.1","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.9-rc.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"6ac4281c8010bc817c2dfef94e3bbaf7ce29b49f","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.9-rc.1.tgz","fileCount":52,"integrity":"sha512-024HIVfHOgQ0IIhFEeO67j4xNYowBdjtet6gJnIoIdZIxesfaJDTahNwExUj4irFmRTTfi5c3BxwglPbeqC+GQ==","signatures":[{"sig":"MEUCIQCGquu0YxB9CG6wOWzwmz4RhUeiPd/Cwefa7YxGM1xQVgIgRJLyH6BIDHCqVAGSTsmR6Ax8xDw5Oq80gwwdMK7hsn8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDIXbYGejyrA9fFtoqnoMWCHkC/IP4wg2YL/RySjvx7CwIhAJVEGpnb3WVGWa7ehts7oGESxBgkvA5u2lq0F0clvUAP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.9-rc.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":241987},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"9a1d017f519a772463ea34d9d3503b2d7356864d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.9-rc.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@frontmcp/sdk":"1.10.9-rc.1","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.9-rc.1","@frontmcp/lazy-zod":"1.10.9-rc.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.9-rc.1_1792536679533_0.21422364352847656","host":"s3://npm-registry-packages-npm-production"}},"1.10.9-rc.2":{"name":"@frontmcp/plugin-approval","version":"1.10.9-rc.2","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.9-rc.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"ac40321a8a9df58a40e2cbf49e51291f2f3f3dd5","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.9-rc.2.tgz","fileCount":52,"integrity":"sha512-FI515AlNdsqckN5JJ66Mn8I0Utlr4L5+SdmwNuvN56H3Jzry81LyxW8WK3VloPkstJxZ+gF8z3WCSdOsN7pVWA==","signatures":[{"sig":"MEYCIQCVmBLvAn1MTuM2480vO8/x1vJuNLaZa1A12/JtWyVHtgIhANB8KSynWoKPKp1IudtKsghKIVR7v8i6xrrMgL0A58hc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGNOV//rRskpgvU/50RZfQXRZyxJfbfcbdjNZDmzoecNAiEA3QmHZVqHl3hCKu+XNwF6YJjBRlFtWDZUjMGhTkOAPnA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.9-rc.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205411},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"f9bf70ce6d1fd560fa50f97d3aae9eba166615d4","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.9-rc.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@frontmcp/sdk":"1.10.9-rc.2","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.9-rc.2","@frontmcp/lazy-zod":"1.10.9-rc.2"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.9-rc.2_1792586823416_0.038780227498694586","host":"s3://npm-registry-packages-npm-production"}},"1.10.9-rc.3":{"name":"@frontmcp/plugin-approval","version":"1.10.9-rc.3","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.9-rc.3","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"f438ba64a9c4061c4b3a8271c2f815316deae9c6","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.9-rc.3.tgz","fileCount":52,"integrity":"sha512-+lOG/lmZD4A94bjfGitoywx9zADjVIiUYichNkaEzQkXnAoAfT78UGXCZ60laLS+fPextBN/m0yUoMbN0Z8A5A==","signatures":[{"sig":"MEQCIH/puhh8jAYf4YhfNzG0Hh8VuVHs0LpwE1O6oaf39YQfAiBmttNl07SeGC+GWOSkS14EVHjBzdi/mU7HpdyVxbK5zw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDvBWetAUy/Ba0zPCfZIeguOGZf8xkDdWyyQVAuB2UNuAiA4DgXD6S03E+gq7CJYl86vBduOgHsWfe/Fykw7L1HOLQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.9-rc.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205411},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"26a3aabad00bb0e653f2ede0e624cd18742f95c6","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.9-rc.3","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@frontmcp/sdk":"1.10.9-rc.3","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.9-rc.3","@frontmcp/lazy-zod":"1.10.9-rc.3"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.9-rc.3_1792590801063_0.09873728725989173","host":"s3://npm-registry-packages-npm-production"}},"1.10.9-rc.4":{"name":"@frontmcp/plugin-approval","version":"1.10.9-rc.4","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.9-rc.4","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"55d3700358fd5a5e228126b2ce9d89383493fd96","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.9-rc.4.tgz","fileCount":52,"integrity":"sha512-Vxz0wx21vnibu+4zs5OVwxxjxQ2+VA8dBWToHPOIel143FIBDwdC08FMp+HrxQZaCVTEfmTKb8h/11zUEojkmQ==","signatures":[{"sig":"MEQCIBAOXsuvdk32hmuZXBOBtz0k/hYIGPZ9AXEM+bYxmZvNAiB1Lm9hEOtUkqU1jEPmQdq+EwJB9rit8pEGX3qefM7Adg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCPLCo/AEcbJaF06lzoUUpTTHJ/u0o+7kiuDd49o3a1vQIhAOlaNTppTd38zv6Xissfs7Hrb3EEJE92tk2p70j6IP+H","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.9-rc.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205411},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"f13b8af46c505c2dbcb817c15192e25280ae491c","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.9-rc.4","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@frontmcp/sdk":"1.10.9-rc.4","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.9-rc.4","@frontmcp/lazy-zod":"1.10.9-rc.4"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.9-rc.4_1792600144661_0.23965718688012627","host":"s3://npm-registry-packages-npm-production"}},"1.10.9-rc.5":{"name":"@frontmcp/plugin-approval","version":"1.10.9-rc.5","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.9-rc.5","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"51e14aa79e1776f9e05454f2468fc7122a7f1291","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.9-rc.5.tgz","fileCount":52,"integrity":"sha512-Jwio0GUSnle29c3+m+N0qfZ6Ae/tdhDJxL0dRFGmeGyQRsjL8Ys0fF04H+NgeCXk/VTqpDR3IB2pLzck8Rve8Q==","signatures":[{"sig":"MEUCIQDFtidtPMfXCkbZzE5FGO2P3jiJR9UIzi76eYvwBA8NWAIgNX785wuYk6Goys6eQtARgMTeTYl6w4kzedKMZNieUyU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEMCIDB+6ye+Li+DvWZslDuUyGb1oblV9gUlHAODA0BMMlMmAh8bqBtNo9EX0UJr2quvFe44QegQsNMeFgV/umUvF6PM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.9-rc.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205411},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"71df5d8dccff3dad0a1c02f051667da28c616fa4","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.9-rc.5","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@frontmcp/sdk":"1.10.9-rc.5","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.9-rc.5","@frontmcp/lazy-zod":"1.10.9-rc.5"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.9-rc.5_1792604026190_0.11256421020696328","host":"s3://npm-registry-packages-npm-production"}},"1.10.9":{"name":"@frontmcp/plugin-approval","version":"1.10.9","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.9","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"8aeaff826e5e719fea6558fc0e58314f96b6bc53","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.9.tgz","fileCount":52,"integrity":"sha512-EYydN0k6aqrkloDZMrWdC8jlE04WW50FSBvPqANF5x7nKb+pTItJSGiedXZ9lUN3UieceYD0xZWXLxbS2OO24Q==","signatures":[{"sig":"MEUCIQDyGcL3WxG+rGRW/tb3WmJAgd5fEAPFDC/YzPohR0oqOgIgVhBIpiMzgLPqre3kcEgFMugQoiJhG97LM353Qs75xlg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIHg0nhn15ALxfNdAEGzGPb5Eh/rPIS1H3QZmo/GzFSkpAiEA96CnchRGjEf2jqob1cfA3pQYOlNVma4PooKRDeNoLgM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205361},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"2e1bbeff9cf15f2bf1ff623662295395f604e28f","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.9","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.9","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.9","@frontmcp/lazy-zod":"1.10.9"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.9_1792607092364_0.6527788261652816","host":"s3://npm-registry-packages-npm-production"}},"1.10.10":{"name":"@frontmcp/plugin-approval","version":"1.10.10","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.10","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"66db72757878cea8cd8ab91a9384b895cb1686f7","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.10.tgz","fileCount":52,"integrity":"sha512-MghmRy+mz/DZNwVvObL5namROsOJBf9tat8SF6jY08kZvbvndo8fwfNiJ68FJ92jc9MHNMhqOM0IMRoncC4yjw==","signatures":[{"sig":"MEUCIFRZeTTCInkqvK1R/idUdGQQtkOtv2gwGQw1eB86a9goAiEA/AF8rLBwyjQ3HnKlGTw3mB1dIBgDiolkEGY10Dr9RvI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIDrDuoh7QIoiiUdsFRn4dnbH2d+ydMe2FiUPAbKHc+UDAiAhRlXzOAJ0SaydGDFdoP4uoHnACBDFVibxLKHpC5uuPw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205371},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"cef3cc4ee2dcc41ee163c438f8571a97bfc6a057","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.10","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.10","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.10","@frontmcp/lazy-zod":"1.10.10"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.10_1792609345298_0.9911434155588394","host":"s3://npm-registry-packages-npm-production"}},"1.10.11":{"name":"@frontmcp/plugin-approval","version":"1.10.11","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.11","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"e9a930a185a16539f50cdcf21a5bfb28457dd503","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.11.tgz","fileCount":52,"integrity":"sha512-pzKKmTPjaJ+OkBBQStRA718vAi2qOqG+4txKO1latUNWmY1f7jxM/vrcvg5tEmdG+93XNOAHFOjZb+4x7c3GxQ==","signatures":[{"sig":"MEYCIQCMljMTK4s7dX/8IlFx93mmCruvFuKTKX+tohWmOM4UBAIhAIpOZlYPmfmfXLW/IGc9jJwnIlCr7Vr3ZnpGkkY39QB5","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDv6uH4lc1jWmI+jOQ1BLgN33OrzMQRDcZL8PtpgieQWQIhANIeJOd/MCeNnQ0G4hZb7KZFyb94YtkyfoDNUHgAOj9D","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205371},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"fed248b1a78eb8c89a7adc16ab9cf31f5f75c3ed","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.11","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.11","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.11","@frontmcp/lazy-zod":"1.10.11"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.11_1792971304018_0.3199717485322069","host":"s3://npm-registry-packages-npm-production"}},"1.10.12":{"name":"@frontmcp/plugin-approval","version":"1.10.12","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.12","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"c421d2f810c584aa46a9114160f9ab2eeb5f6f56","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.12.tgz","fileCount":52,"integrity":"sha512-InO1EGPIa04siNAL7Do3Zjk8rIc0JcspwyLlycaTUB3eHL4VR0f9FM+lIcM8grf7F7hQP+gyyfg/0BlX5Ck7SQ==","signatures":[{"sig":"MEUCIQCMr0JtD2visuVgx1Wlme5m7XxWFF+lDje2qhWJOJsjRAIgCWrLmNQB03iaoYCLUu2sFZBL9ZI93pEI/G+Xx1FxWm4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGs5CObQbSpcA5863VvtU0YE1psdCtGPxxlvaTeiYlU4AiEAmLMNXoNSxEK7Xc/Y4R7toSuiz0dnDUTeltW7eYZlPXM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205371},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"35dc71be52f6447ca7715e6d921d48bdac30445a","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.12","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.12","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.12","@frontmcp/lazy-zod":"1.10.12"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.12_1793201798857_0.8537432896686763","host":"s3://npm-registry-packages-npm-production"}},"1.10.13":{"name":"@frontmcp/plugin-approval","version":"1.10.13","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.13","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"97f677cbeb4a4818a71e1946dc0e0fbe79ad2edf","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.13.tgz","fileCount":52,"integrity":"sha512-fKJYmU6y/qNbVOZHaV+KQY2kESWDnFgDCuhbTwuQgsGOOIjSJzxmsxqZof8XO8yFmLfG/wxH7veMa5flf9007Q==","signatures":[{"sig":"MEUCICz7SLQoyCP+AeYcCzssiA1nMmXCDttUKJ02bzry9mKnAiEAqw6gYF0FONclFmDxD5y+BQ+XIZSIoxQDTyaPeMACz6g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGoSr193lMMGVttfgiyQ1Xgnl1yeRS8D7hOtiIwsC2BrAiEA1xjXvXyQxYjXOo8zFXA6oQiZqbuhtdqcL24KMdYKYjU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205371},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"cd91cc340285cbc36e612a6a6d31fec1bc9fd735","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.13","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.13","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.13","@frontmcp/lazy-zod":"1.10.13"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.13_1793218511121_0.508578352336237","host":"s3://npm-registry-packages-npm-production"}},"1.10.14":{"name":"@frontmcp/plugin-approval","version":"1.10.14","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.14","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"088e4a2a8fe8cc6390269a5130012d20f5c1dd38","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.14.tgz","fileCount":52,"integrity":"sha512-oPt6MlKjVFZPk3nJH8OoPtuMF1utBs/ZysD6pRLCokQsZi5QYQVBNcGWQ7BrQUbmA7J6MquoDmSoMhwVHQmvbQ==","signatures":[{"sig":"MEYCIQCRyqHKwrhfaC+w0TViBJwHpAE9hN+HwNwvQ8meRPFg1AIhAJOGbgUNmqOSEdlTQDmKYsjbkVzwtZHG50KArzH0yp6q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDPGB5JhM0zT++xBpNqnPyvpIqkC079MBroXQ1iexGdwgIgd8PCdmvHTLBSt81tPe7xtyFjXiDo+eMVr80i+oGu3vk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205371},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"b3f1dd18069a4191c404b67b0be7a0429de6e07e","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.14","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.14","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.14","@frontmcp/lazy-zod":"1.10.14"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.14_1793552722255_0.30625268353936597","host":"s3://npm-registry-packages-npm-production"}},"1.10.15":{"name":"@frontmcp/plugin-approval","version":"1.10.15","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.15","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"2838e31961a16766aa79968ac0c7646094bcdfa6","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.15.tgz","fileCount":52,"integrity":"sha512-xaPp4ZzhcJO64hkGlj4dGfSXX4uwVX2avcEJLw+mEBvwtM2mKII/Fmp/FpqKNv+gbfYu9DpQX7aivE/CdpEeSQ==","signatures":[{"sig":"MEYCIQDHANCcF8XsiHL32LNRjOsclKlnZR8U7yps3pMCajcdrAIhANPBfYdLYC2SA20DEzbSmjmJ2BhyRnj7Q8urlzCYem7L","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDG1TB9dzz/H+j2R+7xJBFmvvlbFzKHgYfFikMStF+NeAIhAMNX+2w8/rFpLXt7y93h4RGsgtbPvWA/3DMrMkUeUAh/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205371},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"2275cbfde1b665892c111786464b6a89c1a495bd","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.15","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.15","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.15","@frontmcp/lazy-zod":"1.10.15"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.15_1793559027925_0.11671955012658575","host":"s3://npm-registry-packages-npm-production"}},"1.10.16":{"name":"@frontmcp/plugin-approval","version":"1.10.16","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.10.16","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"2a874fea8fb9ca293c9bbbef7f907ce238e0ff9e","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.10.16.tgz","fileCount":52,"integrity":"sha512-ehLfbzXXHZhKsTQrTKVPoqVeP2zwh5UAq1h5uVERgrkvWvbz8za+0oGufSJKQHZhDFzTKfARLU4VB3Vw2l1l7g==","signatures":[{"sig":"MEUCIQDEtHUMLGSzg7qkRLge/95rJ36OxqFoF9og/S/EWouAwwIgTfefEtj81Ge95G70/POlnS1kVnF9++rKrQ2W5A+hBrI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDeDGNlrRd2QNEjRcH0xdsitqkQbl1zpGPOuh7nC1tWcgIhALoo3wkvRb3S+oDX1ER1yj6TyizLFnvJPLaKzpRn5U+k","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.10.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":205371},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"e4001693d46d17b350748d83d01b9a1f8dc0040e","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.10.16","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.10.16","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.10.16","@frontmcp/lazy-zod":"1.10.16"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.10.16_1793615205502_0.3035931141234258","host":"s3://npm-registry-packages-npm-production"}},"1.11.0-rc.1":{"name":"@frontmcp/plugin-approval","version":"1.11.0-rc.1","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.11.0-rc.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"fe6e4057004bc07343720a84dc85bda907a851ac","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.11.0-rc.1.tgz","fileCount":52,"integrity":"sha512-1qyRrpIShaGF+XXYxlOL2wwrjNQMhvXg2qsnmLYrGjyfwQDpiWEY3gk7RpoWUC7r/KnLDSRAMi51mmj/uG4udw==","signatures":[{"sig":"MEQCIBg/BN/02EVZ3D84nT1Li9Sav39xBF+eDUU/o859rQ55AiAbqJgxhqvE10B8s9u+YQaI7Dn3gGMvZMa1M9h1RL3fJg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBrRLmE8AF9FeapxrRBcF09p0fqkKFo78ZeKddaL6l6FAiBKpG63Bkkywp5vDRPIbB+0OmA9PlIAYBNtT/qxD+5mdQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.11.0-rc.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":206683},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"ec31e9faf34751ff0f4a399136aff673ba8fc4ba","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.11.0-rc.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@frontmcp/sdk":"1.11.0-rc.1","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.11.0-rc.1","@frontmcp/lazy-zod":"1.11.0-rc.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.11.0-rc.1_1793730097926_0.8716756506655267","host":"s3://npm-registry-packages-npm-production"}},"1.11.0-rc.2":{"name":"@frontmcp/plugin-approval","version":"1.11.0-rc.2","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.11.0-rc.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"961c62a12f2659d213044f005bef97cb84e16ecf","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.11.0-rc.2.tgz","fileCount":52,"integrity":"sha512-ZdsWo3RpATzI0CBcnFYqYPPbS75G4xj/GTRTX4QQEQFb6EcCfdeVSm4DUyb+KlTFLD94Il4JTi7vtl6RqyIUyQ==","signatures":[{"sig":"MEQCIHroVKqlOxhk2OIDI2P2qwg2jJCWB/KRVO3H12BSySoHAiAEKzb1RVlLb2F3dJTsWAD8nNaNcLikYaP/AX4wlDJY8A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIC8OZiMFKp8p0N6GAuKoPfdXBETknPyYEP1I7UP8UiGiAiEAzIayz4qGQ/7VNOT9sRtGtMoosuGJSjOqTCYN2Zd3fuU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.11.0-rc.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":206683},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"f34b5a5a3623c66aed8976f450bcd36c00cad8c2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.11.0-rc.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@frontmcp/sdk":"1.11.0-rc.2","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.11.0-rc.2","@frontmcp/lazy-zod":"1.11.0-rc.2"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.11.0-rc.2_1793744325060_0.1929814477718922","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@frontmcp/plugin-approval","version":"1.11.0","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.11.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"9fd876ce0d4bee403068745db436c7959b953983","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.11.0.tgz","fileCount":52,"integrity":"sha512-HcqxLHhHnNmN+OZYVYw1sVuUe3UbtUFYOtAiYIOJx2SrCfMJpO9ljU02B+ZbPB5Key8I+rRWsUeyIRWi9V1U2A==","signatures":[{"sig":"MEUCIQD3K7/HHhoBH+HviENGEqO1IQA9YqPVn61aRKGe4ehVKwIgJNY8RF9DC3ltlLvVJh6zJWuzyPFdRZzCduT+Jksx/8M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDrNEZ6RRA7Xb6bgEPVXcqwM9CIyFHqPqEWLII7SXs+cQIhAI4rRM7hkxpCSspBkP4SaS9ksebrLA4SPirwN9VGIQkh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":206633},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"8108a08929bdc0ebc4c79d7a4f0cab9b260469de","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.11.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.11.0","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.11.0","@frontmcp/lazy-zod":"1.11.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.11.0_1793746571798_0.8613895825081002","host":"s3://npm-registry-packages-npm-production"}},"1.11.1-rc.1":{"name":"@frontmcp/plugin-approval","version":"1.11.1-rc.1","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.11.1-rc.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"834db8f94b625d46bd4061ec0a780f399b9b6d25","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.11.1-rc.1.tgz","fileCount":52,"integrity":"sha512-mVXQt1j9KgxyMUFHz4HPwHZkcQYrmD0yvkXWdIwa9N/c7dz/UHC6JZtcOs4RY6pHeMl9TFKMUCyuhohfCf2JkA==","signatures":[{"sig":"MEUCIAP0qpc8UGjymUYHaWcwxtIVjcjSB6UTHB5sMXU7I3wKAiEAutmWlsL47ruKyLKK5HRrab7a02x+vfMHE4dxaQ+jWYc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC1tEsePlE8AOoNHV92L5sSxLdQAxRdOcO4t8dpha+o/gIhALDDlqt5J7LS+FCS6MwUX0q5NjQnnZXkl1NvEhE5FjTg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.11.1-rc.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":206683},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"bbf139f23edf30e23dec4d2f4defd598a775d5ca","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.11.1-rc.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@frontmcp/sdk":"1.11.1-rc.1","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.11.1-rc.1","@frontmcp/lazy-zod":"1.11.1-rc.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.11.1-rc.1_1793842144067_0.365196543506632","host":"s3://npm-registry-packages-npm-production"}},"1.11.1-rc.2":{"name":"@frontmcp/plugin-approval","version":"1.11.1-rc.2","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.11.1-rc.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"506d9b77ec8f73796674b30496df9c79aa9ab53d","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.11.1-rc.2.tgz","fileCount":52,"integrity":"sha512-ieUArbM8750sXPQL5f3N/u+DnIgXAoKEtqDmTrkV5GTe7bB9alK1SXXVshtfS5CD4Pivae/XHpwwcBNdccT/6A==","signatures":[{"sig":"MEUCIQC/c4qUOXOsmegK1Sfia6IbR4rjpDp8jVmAvoEBqcC2SQIgYEtNVHgiAAeQon92nXC79cK2YcouCvIrSD9jkqQMVak=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBY36DQea9WwFkGqkpLOd28L1iwrGMmgzYB6CEjR6m1RAiBzvQJpOtUlE0D9uABp3PRUbddzVTOMJ9W3/PLEQIIUSQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.11.1-rc.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":206683},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"f502e5a9af9b8a20ef69be8297d9ad6aa544f9cd","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.11.1-rc.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@frontmcp/sdk":"1.11.1-rc.2","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.11.1-rc.2","@frontmcp/lazy-zod":"1.11.1-rc.2"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.11.1-rc.2_1793905286001_0.3842107122768521","host":"s3://npm-registry-packages-npm-production"}},"1.11.1":{"name":"@frontmcp/plugin-approval","version":"1.11.1","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.11.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"0344d9fd6a4262706e8c588bb1f0eeee2990c4d1","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.11.1.tgz","fileCount":52,"integrity":"sha512-4lwt8pUjpwRyy26V2JvFecPg7ogWUdIEbEKNqZj3sXCz15+/gMMGyBqHk/PmAbeRgJUNmAaxiiZBz4J9NTBLGg==","signatures":[{"sig":"MEYCIQDzQS1gTXxFZeGeGQqMX/reshmRsT109M8XMLo+ajO5RQIhANehX54r7GO4REkISUOkGT7zPl+DtU0s9U7sL+5mogBB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC0vOnhesDnTAbQb9zlMtCWB+DOCikOa/o8o1bMEbswtwIhAPMwmurtQm1+Sn34umWexHOT56CA3co2zi5Up9xLo+ky","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.11.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":206633},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"e643a41d5343c553f1416fc4c67022830017e60b","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.11.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.11.1","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.11.1","@frontmcp/lazy-zod":"1.11.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.11.1_1794133041699_0.9167030483813413","host":"s3://npm-registry-packages-npm-production"}},"1.11.2":{"name":"@frontmcp/plugin-approval","version":"1.11.2","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.11.2","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"4c4045cdd60edadae356fceb720f096bed3df8ac","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.11.2.tgz","fileCount":52,"integrity":"sha512-Rnaw1zHYgNH9o7FTtbXmrY82X2makhO/mRspBZzjKKPBsK/kaFJI62ki1kFKVLZjcKbaBmKonFWcRQ8akOBjiA==","signatures":[{"sig":"MEUCIQD5sgx8EQyqYbExQIZ5hXtM19njEdRqCzCBynuKYyCqfQIgbMNWKnZlCoRLxzGVXlIpQfRGnQZt6oEXgG1BzZtGHtk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDtKt0G8hDWx4Tf1hTb1OSSHdjgJaoLK7Rn7+b073E9XQIhAJZ/VS++7wuxj0MZU9e14XXHPOl8i1NkGeY7RNFoVx77","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.11.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":206633},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"1502559231d1c3e1299aef5f2d3c299fcd042856","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.11.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.11.2","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.11.2","@frontmcp/lazy-zod":"1.11.2"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.11.2_1794185787431_0.15463892070027085","host":"s3://npm-registry-packages-npm-production"}},"1.11.3":{"name":"@frontmcp/plugin-approval","version":"1.11.3","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.11.3","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"ae911d288b3a8e76b06019e5df52a1b1a4545e8e","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.11.3.tgz","fileCount":70,"integrity":"sha512-ZgY3HDlMc9wPz4CaeEKZgtQ0HaecMVQVZ/Q2bm0HGtQAG+2Y3/pLBPVyO78oBhor6utFdrSp2pLn0QVTceQOyQ==","signatures":[{"sig":"MEUCIQDveBMKPeJtaa/bF0EtT8KuOIuq6hil63D5J08Au/svBgIgdkz7FiML92xewmlnDYXIWGYAs2/mmd3R45V6AGwOlhg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGLNDADxEbNoQTzwGTwb2GBEKgnB+/uxxBjJCajLEnXFAiAkgUz+5nsySerGq+q/uB8zESj9ObBjVctlYBTdDArpyg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.11.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":317444},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"4704a658adb1139f111d661a3313a3101dc0455d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.18.0","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.11.3","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.11.3","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.11.3","@frontmcp/lazy-zod":"1.11.3"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.11.3_1794254179633_0.036117539424994405","host":"s3://npm-registry-packages-npm-production"}},"1.12.0-rc.1":{"name":"@frontmcp/plugin-approval","version":"1.12.0-rc.1","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.12.0-rc.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"a83348e4c26bfb49bbe87ffb1d69b1891e469caa","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.12.0-rc.1.tgz","fileCount":70,"integrity":"sha512-QG2nJnwjDEd5pCBRQAewuPzhlQt18gU6nEi77Ql+aJxYUElBLemyZVlyiqIrBsOYYg4XN/z498jaxBAS303C1A==","signatures":[{"sig":"MEUCIAFSgIlamI7hrNBGbj49C5L8sAts8T6JmW4ivmGI3yxIAiEAyCpFNcl+Hk1+d39UWwlQP1/fNHqigmX5K47FTXxbhP8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIC1xfFMnMjjFzhUmJ/XOL+XQx3m9wpcJELEqp7ELi4OjAiEAweJ6JlQzJxP9sMr0TR7uhelEquHQXALfCmo2Pkkm8n8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.12.0-rc.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":314015},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"aa0ad4c9bb60982b2296df50d32973bbed441013","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.22.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.12.0-rc.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@frontmcp/sdk":"1.12.0-rc.1","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.12.0-rc.1","@frontmcp/lazy-zod":"1.12.0-rc.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.12.0-rc.1_1794405031235_0.4328925477216481","host":"s3://npm-registry-packages-npm-production"}},"1.12.0":{"name":"@frontmcp/plugin-approval","version":"1.12.0","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.12.0","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"134f855d7b22a2115a301192c40ab7b3d68088fa","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.12.0.tgz","fileCount":70,"integrity":"sha512-gUKmmvKT8UGIttbDmhCAShjN5izgGBrGvSLM4k+HsMYygL73579PpRNJfDGPxbyNxa5d71hdpWUmMF1FUUFKtg==","signatures":[{"sig":"MEQCIGA8DgsUbJ/ZxLnpaFV1ubJmLRLFIrnUCQmBW3HkuwL1AiAui0b3cVqUSw0r34W0ljR212ykVoqaEL4UCd/qhQqNiw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDSm3mkoMplk6ACAU/YztEapfqk4+Fw16r+FOh9CU0GegIgHlZB8OKwbBniUQbyEztgKR++FqENsjncWEMlg9gsX78=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.12.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":313965},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"2b00e7c02fd1547b8071e07470469380bda25abe","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.22.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.12.0","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.12.0","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.12.0","@frontmcp/lazy-zod":"1.12.0"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.12.0_1794409100193_0.9814248593667","host":"s3://npm-registry-packages-npm-production"}},"1.12.1":{"name":"@frontmcp/plugin-approval","version":"1.12.1","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","_id":"@frontmcp/plugin-approval@1.12.1","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"},{"name":"davidmantoon","email":"davidmantoon@gmail.com"}],"homepage":"https://frontmcp.dev/reference/plugins/approval","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"2e06bdf51a7d96bfe9f462daed26d7540605a3ee","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.12.1.tgz","fileCount":70,"integrity":"sha512-pgULauJX8F2EtRynt8xacWgqvslvhjl5zWqt1fZkn/q31unk143eG3IpA4giXuVYevvrepvoUjWuvCo8dxDQ0A==","signatures":[{"sig":"MEUCICr76au7sBCQVKb2sHFVI0gba135TMOJ73x2pfvyDBPWAiEAkXdf8x1Y4ZtxwmuZjs/43fBV1WSjGTRHY8n2uN8ZU3o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCYpjlS4fTvL/j4+jEq1LI+gc7Y7CyhSyBsIg0e7NtpLQIgZhVTxCDnUGNCVHFZvwcTngo/g+Jys1Ki0P4b+A1DSE0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.12.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":318207},"main":"./index.js","type":"commonjs","types":"./index.d.ts","module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"163441ed8e823bc935fea9b776a0c4862406973c","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"sideEffects":false,"_nodeVersion":"24.22.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.12.1","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.12.1","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.12.1","@frontmcp/lazy-zod":"1.12.1"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/plugin-approval_1.12.1_1794562909641_0.08678039396078163","host":"s3://npm-registry-packages-npm-production"}},"1.12.2":{"_id":"@frontmcp/plugin-approval@1.12.2","bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"dist":{"shasum":"9473a8d894eccb5571ea383edc3e7c9c90233f1a","tarball":"https://registry.npmjs.org/@frontmcp/plugin-approval/-/plugin-approval-1.12.2.tgz","fileCount":70,"integrity":"sha512-UsatnO/ixzI4wVmVE6DFn3tia4uzQAegURgVVPKKKm3eIW2KD4Z8HUAob8eLps3fZqs2I9zxuilTPkPmm295SA==","signatures":[{"sig":"MEUCID1OuBH9Wyxx8ZnxwXZaxvYMO4eFQl5WI+0BUSVJ3iikAiEA2gbNKfIY0l4txzxa+f+lYOU4qxNBg8Qg1mHAl9Pv928=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICJZuR0N5RME7CXgDtWSdYITLI1vRt+JgEkSNf+hJSiMAiEA449hGbdLV6EEvwFndFPTI4J8xnHhVmdUXOWJeKtQj/8="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@frontmcp%2fplugin-approval@1.12.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":318207},"main":"./index.js","name":"@frontmcp/plugin-approval","type":"commonjs","types":"./index.d.ts","author":{"name":"AgentFront","email":"info@agentfront.dev"},"module":"./esm/index.mjs","engines":{"node":">=24.0.0"},"exports":{".":{"import":{"types":"./index.d.ts","default":"./esm/index.mjs"},"require":{"types":"./index.d.ts","default":"./index.js"}},"./package.json":"./package.json"},"gitHead":"07a9de63e3c7fee4c7b8c53e4fb3a80f1714ba91","license":"Apache-2.0","version":"1.12.2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"6dad4ce9-c347-45db-a1ab-201bf5c44431"}},"homepage":"https://frontmcp.dev/reference/plugins/approval","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"_npmVersion":"11.5.1","description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","directories":{},"maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"},{"name":"davidmantoon","email":"davidmantoon@gmail.com"}],"sideEffects":false,"_nodeVersion":"24.22.1","dependencies":{"ioredis":"^5.8.0","@frontmcp/utils":"1.12.2","reflect-metadata":"^0.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"@frontmcp/sdk":"1.12.2","reflect-metadata":"^0.2.2"},"peerDependencies":{"@vercel/kv":"^2.0.0 || ^3.0.0","@frontmcp/sdk":"1.12.2","@frontmcp/lazy-zod":"1.12.2"},"peerDependenciesMeta":{"@vercel/kv":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/plugin-approval_1.12.2_1794690585451_0.9880491868546677"}}},"time":{"created":"2026-01-09T03:00:48.115Z","modified":"2026-11-14T21:09:45.863Z","0.0.1":"2026-01-09T03:00:48.430Z","0.7.0":"2026-01-09T03:13:20.714Z","0.7.1":"2026-01-09T03:46:37.786Z","0.7.2":"2026-01-09T19:07:31.587Z","0.8.0":"2026-02-02T16:37:07.146Z","0.8.1":"2026-02-03T06:50:38.297Z","0.9.0":"2026-02-05T23:56:09.098Z","0.10.0":"2026-02-13T21:36:37.710Z","0.11.0":"2026-02-19T20:16:57.346Z","0.11.1":"2026-02-20T18:59:40.771Z","0.11.2":"2026-02-21T21:39:37.451Z","0.11.3":"2026-02-22T20:48:45.232Z","0.12.0":"2026-02-25T00:31:11.870Z","0.12.1":"2026-02-25T01:08:24.445Z","0.12.2":"2026-02-26T00:45:33.981Z","1.0.0-beta.1":"2026-03-16T18:05:00.639Z","1.0.0-beta.2":"2026-03-18T15:55:25.424Z","1.0.0-beta.3":"2026-03-18T20:43:50.641Z","1.0.0-beta.4":"2026-03-18T22:38:34.761Z","1.0.0-beta.5":"2026-03-19T01:48:16.699Z","1.0.0-beta.6":"2026-03-20T17:09:20.710Z","1.0.0-beta.7":"2026-03-23T19:44:48.197Z","1.0.0-beta.8":"2026-03-24T20:47:53.807Z","1.0.0-beta.9":"2026-03-27T22:51:02.287Z","1.0.0-beta.10":"2026-03-28T18:07:32.233Z","1.0.0-beta.11":"2026-03-29T02:24:43.374Z","1.0.0-beta.12":"2026-03-29T03:51:52.984Z","1.0.0-beta.13":"2026-03-29T06:48:32.528Z","1.0.0-beta.14":"2026-03-31T06:47:48.586Z","1.0.0-rc.1":"2026-04-05T23:48:20.830Z","1.0.0":"2026-04-06T00:17:00.109Z","1.0.1":"2026-04-06T05:29:11.130Z","1.0.2":"2026-04-06T15:39:15.220Z","1.0.3":"2026-04-06T18:40:40.744Z","1.0.4":"2026-04-08T02:28:51.733Z","1.1.0-beta.1":"2026-05-01T16:39:36.131Z","1.1.0":"2026-05-01T23:02:40.957Z","1.1.1":"2026-05-03T00:52:28.574Z","1.1.2-beta.1":"2026-05-03T13:32:30.290Z","1.1.2":"2026-05-03T14:37:53.805Z","1.2.0":"2026-05-05T22:57:38.923Z","1.2.1":"2026-05-06T01:47:46.921Z","1.3.0":"2026-05-27T19:35:04.246Z","1.4.0":"2026-06-07T18:24:57.088Z","1.4.1":"2026-06-08T13:47:48.789Z","1.5.0-rc.1":"2026-06-21T15:59:55.437Z","1.5.0":"2026-06-21T23:03:15.326Z","1.5.1":"2026-06-22T09:00:06.772Z","1.5.2":"2026-06-22T20:27:47.729Z","1.5.3":"2026-07-18T23:47:30.286Z","1.5.4":"2026-07-19T00:15:17.562Z","1.5.5":"2026-07-21T10:50:24.943Z","1.5.6":"2026-07-23T21:02:20.585Z","1.5.7":"2026-07-26T02:07:50.613Z","1.6.0":"2026-08-02T01:38:21.914Z","1.6.1":"2026-08-07T00:46:19.249Z","1.7.0":"2026-09-01T16:54:09.039Z","1.7.1":"2026-09-10T00:57:41.263Z","1.7.2":"2026-09-14T01:22:45.810Z","1.8.0":"2026-09-21T22:42:22.439Z","1.8.1":"2026-09-26T15:43:37.425Z","1.8.2":"2026-09-26T21:13:21.162Z","1.8.3":"2026-09-28T08:55:00.914Z","1.8.4":"2026-09-28T15:59:30.187Z","1.8.5":"2026-09-29T10:00:06.991Z","1.8.6":"2026-09-30T10:57:08.987Z","1.8.7":"2026-10-01T01:05:29.481Z","1.9.0":"2026-10-03T22:54:36.463Z","1.9.1-rc.1":"2026-10-04T16:43:27.226Z","1.9.1-rc.2":"2026-10-05T13:10:30.709Z","1.9.1-rc.3":"2026-10-05T15:39:58.622Z","1.9.1":"2026-10-05T16:23:47.765Z","1.9.2":"2026-10-06T12:22:38.777Z","1.9.3":"2026-10-07T03:21:46.060Z","1.9.4":"2026-10-10T00:39:16.122Z","1.9.5":"2026-10-11T08:54:07.505Z","1.9.6":"2026-10-11T17:33:58.116Z","1.9.7":"2026-10-12T16:20:08.489Z","1.10.0":"2026-10-13T01:01:35.036Z","1.10.1":"2026-10-13T03:14:30.277Z","1.10.2":"2026-10-13T06:34:01.152Z","1.10.3":"2026-10-17T22:50:50.448Z","1.10.4":"2026-10-20T08:03:55.041Z","1.10.5":"2026-10-20T08:47:59.614Z","1.10.6":"2026-10-20T12:45:02.724Z","1.10.7":"2026-10-20T15:02:12.773Z","1.10.8":"2026-10-20T22:00:14.315Z","1.10.9-rc.1":"2026-10-20T22:51:19.639Z","1.10.9-rc.2":"2026-10-21T12:47:03.507Z","1.10.9-rc.3":"2026-10-21T13:53:21.166Z","1.10.9-rc.4":"2026-10-21T16:29:04.765Z","1.10.9-rc.5":"2026-10-21T17:33:46.295Z","1.10.9":"2026-10-21T18:24:52.450Z","1.10.10":"2026-10-21T19:02:25.390Z","1.10.11":"2026-10-25T23:35:04.098Z","1.10.12":"2026-10-28T15:36:39.030Z","1.10.13":"2026-10-28T20:15:11.212Z","1.10.14":"2026-11-01T17:05:22.347Z","1.10.15":"2026-11-01T18:50:28.015Z","1.10.16":"2026-11-02T10:26:45.588Z","1.11.0-rc.1":"2026-11-03T18:21:38.034Z","1.11.0-rc.2":"2026-11-03T22:18:45.221Z","1.11.0":"2026-11-03T22:56:11.880Z","1.11.1-rc.1":"2026-11-05T01:29:04.149Z","1.11.1-rc.2":"2026-11-05T19:01:26.126Z","1.11.1":"2026-11-08T10:17:21.790Z","1.11.2":"2026-11-09T00:56:27.541Z","1.11.3":"2026-11-09T19:56:19.735Z","1.12.0-rc.1":"2026-11-11T13:50:31.330Z","1.12.0":"2026-11-11T14:58:20.317Z","1.12.1":"2026-11-13T09:41:49.750Z","1.12.2":"2026-11-14T21:09:45.538Z"},"bugs":{"url":"https://github.com/agentfront/frontmcp/issues"},"author":{"name":"AgentFront","email":"info@agentfront.dev"},"license":"Apache-2.0","homepage":"https://frontmcp.dev/reference/plugins/approval","keywords":["frontmcp","mcp","model-context-protocol","approval","tool-approval","human-in-the-loop","authorization","plugin","agentfront"],"repository":{"url":"git+https://github.com/agentfront/frontmcp.git","type":"git","directory":"plugins/plugin-approval"},"description":"Approval plugin for FrontMCP: refuses to run marked tools until an approval is recorded for the caller","maintainers":[{"name":"davidfrontegg","email":"david@frontegg.com"},{"name":"davidmantoon","email":"davidmantoon@gmail.com"}],"readme":"# @frontmcp/plugin-approval\n\nA FrontMCP plugin that refuses to run a tool until an approval is recorded for the caller. Use it for tools that\nshouldn't run without someone's say-so, like deleting a ticket or refunding a payment. Mark a tool with `approval`,\nand every call to it is refused until your code grants an approval, through `this.approval` or the plugin's store.\nEach approval records who granted it, and can be revoked or set to expire. You decide how a person says yes: with a\nform from `this.elicit()`, or with an external approval system the plugin asks for you, by\n[webhook](#webhook-mode) or by [polling](#recheck-mode).\n\n[![npm](https://img.shields.io/npm/v/@frontmcp/plugin-approval.svg)](https://www.npmjs.com/package/@frontmcp/plugin-approval) [![License](https://img.shields.io/npm/l/@frontmcp/plugin-approval.svg)](https://github.com/agentfront/frontmcp/blob/main/LICENSE)\n\n## Install\n\n```bash\nnpm install @frontmcp/plugin-approval @frontmcp/sdk\n```\n\nRequires Node.js 24 or later. Keep `@frontmcp/sdk` on the same version as this package. Approvals\nare kept in memory unless you configure `storage`. Redis support (`ioredis`) is included; for other stores, install\ntheir client yourself:\n\n- `@vercel/kv`, an optional peer dependency, for `storage: { type: 'vercel-kv' }`.\n- `@upstash/redis` for `storage: { type: 'upstash' }`.\n\nThis plugin isn't part of the [`@frontmcp/plugins`](https://www.npmjs.com/package/@frontmcp/plugins) meta-package.\n\n## Usage\n\nRegister the plugin on `@FrontMcp`, to gate every app's tools, or on an `@App`. Mark the tools that need approval,\nand give the user a way to grant it:\n\n```ts\nimport { ApprovalPlugin, userGrantor } from '@frontmcp/plugin-approval';\nimport { App, FrontMcp, Tool, ToolContext, z } from '@frontmcp/sdk';\n\n@Tool({\n  name: 'delete_ticket',\n  description: 'Delete a support ticket for good. Needs approval: call approve_delete first.',\n  inputSchema: { id: z.string() },\n  approval: {\n    approvalMessage: 'delete_ticket needs the user to approve it. Call approve_delete first.',\n    category: 'delete',\n    riskLevel: 'high',\n  },\n})\nclass DeleteTicket extends ToolContext {\n  async execute({ id }: { id: string }) {\n    return { id, deleted: true };\n  }\n}\n\n@Tool({ name: 'approve_delete', description: 'Ask the user to allow delete_ticket for this session', inputSchema: {} })\nclass ApproveDelete extends ToolContext {\n  async execute() {\n    // The user answers this form in the client. The model can't.\n    const answer = await this.elicit(\n      'Allow the assistant to delete tickets in this session?',\n      z.object({ allow: z.boolean() }),\n    );\n    if (answer.status !== 'accept' || !answer.content?.allow) return { approved: false };\n\n    await this.approval.grantSessionApproval('help-desk:delete_ticket', {\n      grantedBy: userGrantor(this.auth.user.sub),\n    });\n    return { approved: true };\n  }\n}\n\n@App({ id: 'help-desk', name: 'Help Desk', tools: [DeleteTicket, ApproveDelete] })\nclass HelpDeskApp {}\n\n@FrontMcp({\n  info: { name: 'help-desk', version: '1.0.0' },\n  apps: [HelpDeskApp],\n  elicitation: { enabled: true },\n  plugins: [ApprovalPlugin.init()],\n})\nexport default class Server {}\n```\n\n- **Tool ids are `<app id>:<tool name>`**, like `help-desk:delete_ticket`. Granting `'delete_ticket'` records an\n  approval nothing checks.\n- **Approvals belong to the caller**, so use the plugin with signed-in users. An anonymous caller can get a new\n  identity on every request, and an approval granted to them then never applies to their next call.\n- **Don't let the model approve its own calls.** A tool that grants without asking a person makes the gate protect\n  nothing. Grant after a form the user answers, as above, or from a caller with more rights.\n- **A field needs its plugin.** A server where a tool has `approval` and no `ApprovalPlugin` reaches it doesn't start:\n  it fails with `UnenforcedMetadataError`.\n- `ApprovalPlugin.init()` with no argument, and `plugins: [ApprovalPlugin]`, use the defaults.\n\n## What the client sees\n\nA refused call is a tool error the model can read: `isError: true`, `_meta.code: 'APPROVAL_REQUIRED'`, and the text\nof the tool's `approvalMessage`, in production too (the approval errors extend `PublicMcpError`). The default\nmessage, `Tool \"<id>\" requires approval to execute. Allow?`, doesn't tell the model what to do next, so write your\nown. The tool's `category`, `riskLevel` and other fields stay on the server.\n\n## The `approval` field on `@Tool`\n\n`approval: true` means `{ required: true, defaultScope: ApprovalScope.SESSION }`. Any object requires approval unless\nit says `required: false`.\n\n| Field                                   | What it does                                                                                                                                    |\n| --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |\n| `required`                              | `false` turns the gate off. Default `true`.                                                                                                     |\n| `skipApproval`                          | `true` turns the gate off too.                                                                                                                  |\n| `alwaysPrompt`                          | Each approval lets one call run and is used up by it.                                                                                           |\n| `approvalMessage`                       | The text of the refusal.                                                                                                                        |\n| `allowedScopes`                         | The scopes an approval of this tool may have. A grant through `this.approval` of another scope throws `ApprovalScopeNotAllowedError`.           |\n| `maxTtlMs`                              | The longest an approval of this tool lasts.                                                                                                     |\n| `preApprovedContexts`                   | Lets a call run without an approval when `authInfo.extra.approvalContext` matches. FrontMCP's auth modes don't set it, so your own code has to. |\n| `category`, `riskLevel`, `defaultScope` | Kept on the error's `details`, which clients don't see.                                                                                         |\n\n## `this.approval`\n\nThe plugin adds `this.approval` to the tools, resources and prompts of the apps it's registered for. It acts for the\ncurrent caller, and takes tool ids in the `<app id>:<tool name>` form.\n\n| Method                                                                                              | What it does                                                                 |\n| --------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |\n| `isApproved(toolId, context?)`                                                                      | Whether the gate would let the caller run the tool.                          |\n| `grantSessionApproval(toolId, options?)`                                                            | Approves for the caller's session.                                           |\n| `grantUserApproval(toolId, options?)`                                                               | Approves for the caller in every session.                                    |\n| `grantTimeLimitedApproval(toolId, ttlMs, options?)`                                                 | Approves for `ttlMs` milliseconds.                                           |\n| `grantContextApproval(toolId, context, options?)`                                                   | Approves in one context, `{ type, identifier }` (see `preApprovedContexts`). |\n| `revokeApproval(toolId, options?)`                                                                  | Deletes the caller's approvals of the tool, keeping a copy for 24 hours.     |\n| `getRevocations(toolId)`                                                                            | The caller's approvals of the tool revoked in the last 24 hours.             |\n| `getApproval`, `getSessionApprovals`, `getUserApprovals`, `queryApprovals`, `clearSessionApprovals` | Read or clear the caller's records.                                          |\n\nGrant `options` are `{ grantedBy?, reason?, metadata? }`, and revoke options `{ revokedBy?, reason? }`. Without\n`grantedBy`, a grant records the signed-in caller with `method: 'implicit'`, which says nobody was asked:\n`{ source: 'user', identifier: <user id>, method: 'implicit' }`, or `{ source: 'user', method: 'implicit' }` with no\nsigned-in user. After the user says yes, pass a grantor that says so:\n\n```ts\nimport { policyGrantor, userGrantor } from '@frontmcp/plugin-approval';\n\n// { source: 'user', identifier: 'user-123', displayName: 'Jane Doe', method: 'interactive' }\nawait this.approval.grantUserApproval('ops:deploy', { grantedBy: userGrantor('user-123', 'Jane Doe') });\n\n// { source: 'policy', identifier: 'safe-list', method: 'implicit' }\nawait this.approval.grantSessionApproval('ops:deploy', { grantedBy: policyGrantor('safe-list') });\n```\n\nThe other grantor helpers are `adminGrantor`, `systemGrantor`, `agentGrantor`, `apiGrantor`, `oauthGrantor`,\n`testGrantor` and `customGrantor`, with matching revoker helpers (`userRevoker`, `adminRevoker`, `policyRevoker`, and\nothers).\n\nTo grant or revoke for someone other than the caller, like a lead approving a teammate, use the store:\n`this.get(ApprovalStoreToken)` returns it, with `grantApproval({ toolId, scope, userId?, sessionId?, ttlMs?, grantedBy?, ... })`\nand `revokeApproval(...)`.\n\n## Scopes\n\n`ApprovalScope` is a string enum:\n\n| Scope              | Value                | What it does                                                                             |\n| ------------------ | -------------------- | ---------------------------------------------------------------------------------------- |\n| `SESSION`          | `'session'`          | Approves for the session.                                                                |\n| `USER`             | `'user'`             | Approves for the user, in every session.                                                 |\n| `TIME_LIMITED`     | `'time_limited'`     | Needs a `ttlMs`, and approves until it expires.                                          |\n| `CONTEXT_SPECIFIC` | `'context_specific'` | Approves only for calls in that context, which `authInfo.extra.approvalContext` carries. |\n| `TOOL_SPECIFIC`    | `'tool_specific'`    | A label. Nothing in the plugin grants it.                                                |\n\nUnder MCP protocol 2026-07-28, clients have no sessions, so a session approval is kept per user and lasts until it's\nrevoked or expires. Grant time-limited approvals when that matters.\n\n## Options\n\n```ts\nApprovalPlugin.init({\n  storage: { type: 'redis', redis: { url: process.env.REDIS_URL } },\n});\n```\n\n| Option                   | Default            | Description                                                                                                                                                                                                    |\n| ------------------------ | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `storage`                | `{ type: 'auto' }` | Where approvals are kept: `'memory'`, `'redis'`, `'vercel-kv'`, `'upstash'`, `'cloudflare-kv'` or `'auto'`. `'auto'` picks Upstash, Vercel KV or Redis from their environment variables, and memory otherwise. |\n| `storageInstance`        |                    | A storage you made with `createStorage()` from `@frontmcp/utils`. Wins over `storage`.                                                                                                                         |\n| `namespace`              | `'approval'`       | The prefix of the plugin's keys.                                                                                                                                                                               |\n| `cleanupIntervalSeconds` | `60`               | How often expired approvals are deleted. `0` turns it off.                                                                                                                                                     |\n| `mode`                   | `'recheck'`        | `'recheck'` polls `recheck.url` when it is set; `'webhook'` registers a `ChallengeService` and sends requests to `webhook.url` when it is set. Without a URL, neither contacts an external system.             |\n| `recheck`                |                    | See [Recheck mode](#recheck-mode).                                                                                                                                                                             |\n| `webhook`                |                    | See [Webhook mode](#webhook-mode). `webhook.challengeTtl` (default `300`) is how long a challenge lasts, in seconds.                                                                                           |\n| `enableAudit`            | `false`            | Logs an [audit trail](#audit-trail).                                                                                                                                                                           |\n| `maxDelegationDepth`     | `3`                | The deepest [delegation chain](#delegation-chains) a delegated approval may name, 0 to 64.                                                                                                                     |\n\nIn a browser build (`create()` in a web page, WebMCP), `storage: { type: 'redis' }` or `{ type: 'sqlite' }` throws\n`BrowserStoreUnavailableError` from `init()`, naming `storage: { type: 'memory' }`: a page has no TCP socket and no\nfile. `{ type: 'auto' }` picks memory there.\n\n## Audit trail\n\nWith `enableAudit: true`, the plugin logs one `info` line (logger `ApprovalAudit`) per event. The message is\n`<event> <toolId>`, and the first argument holds the fields:\n\n| Event                | When                                                                                                                                              |\n| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `approval.requested` | A call had no approval it could use. `state`: `pending`, `expired`, `denied`, or `approved` by the recheck system; `via`: `webhook` or `recheck`. |\n| `approval.granted`   | An approval was recorded: by `this.approval`, the store, a webhook callback or a recheck answer.                                                  |\n| `approval.denied`    | A denial was recorded.                                                                                                                            |\n| `approval.revoked`   | An approval was revoked (`revokedBy`, `reason`), or a session's approvals were cleared (`count`).                                                 |\n| `approval.expired`   | The cleanup deleted an expired approval or denial.                                                                                                |\n\nThe fields are the tool, scope, user id, context, grantor or revoker, reason and `expiresAt`. A line never carries a\nsession id, a token or a record's `metadata`. A backend that expires keys itself, such as Redis, can delete an expired\nrecord before the cleanup sees it; `approval.granted` carries its `expiresAt`.\n\nIt is off by default: up to 1.11.2 the option did nothing (its documented default was `true`), and turning it on adds\nlines with user ids to your logs. Route them with a log transport.\n\n## Delegation chains\n\nA delegated approval names who authorized whom: `grantedBy.delegationContext`, `{ delegatorId, delegateId, purpose?,\nconstraints?, chain? }`. A delegate can delegate further: `chain` lists the delegations above it, the original\ndelegator's first, and `extendDelegation()` builds the next one.\n\n```ts\nimport { agentGrantor, extendDelegation } from '@frontmcp/plugin-approval';\n\nconst toPlanner = { delegatorId: 'user-123', delegateId: 'planner-agent', purpose: 'release' };\nconst toDeployer = extendDelegation(toPlanner, 'deploy-agent', { purpose: 'deploy step' });\n// { delegatorId: 'planner-agent', delegateId: 'deploy-agent', purpose: 'deploy step',\n//   chain: [{ delegatorId: 'user-123', delegateId: 'planner-agent', purpose: 'release' }] }\n\nawait this.approval.grantSessionApproval('ops:deploy', { grantedBy: agentGrantor('deploy-agent', toDeployer) });\n```\n\n`maxDelegationDepth` (default `3`) bounds the chain, counting the delegation itself: `toPlanner` is 1 deep,\n`toDeployer` 2. A grant whose chain is deeper, broken (a delegator that isn't the previous delegate) or names a party\ntwice throws `ApprovalOperationError`, and a stored approval like that doesn't let a call through. Denials are kept\nwhatever their chain. `maxDelegationDepth: 1` allows direct delegation only, and `0` no delegated approval.\n`delegationDepth(context)` and `delegationProblem(context, maxDepth)` check a context yourself. Up to 1.11.2 the option\ndid nothing.\n\n## Webhook mode\n\nWith `mode: 'webhook'` and `webhook.url`, a call that needs an approval it doesn't have sends a signed approval request\nto your approval system (a Slack app, a ticketing system, an admin console), and is refused as `pending`. The system\ndecides by POSTing back to `webhook.callbackPath`, and the caller's next call runs, or is refused as `denied`.\n\n```ts\nApprovalPlugin.init({\n  storage: { type: 'redis', redis: { url: process.env.REDIS_URL } },\n  mode: 'webhook',\n  webhook: {\n    url: 'https://approvals.example.com/webhook',\n    secret: process.env.APPROVAL_WEBHOOK_SECRET, // required with url, at least 24 bytes\n    challengeTtl: 300,\n    callbackPath: '/approval/callback',\n  },\n});\n```\n\n| Option                 | Default                | Description                                                                                                                                      |\n| ---------------------- | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `webhook.url`          |                        | Where requests are POSTed. `https://`; `http://localhost`, `127.0.0.1` or `[::1]` only when `NODE_ENV` isn't `production`. No credentials in it. |\n| `webhook.secret`       |                        | Signs each request and verifies each callback. Required with `url`. A `whsec_` secret (Standard Webhooks) is base64 after the prefix.            |\n| `webhook.includeJwt`   | `false`                | Adds the caller's access token to the request as `jwt`. Set it only when the approval system must act as the caller.                             |\n| `webhook.challengeTtl` | `300`                  | Seconds a request waits for its decision, and a denial without `ttlMs` lasts.                                                                    |\n| `webhook.callbackPath` | `'/approval/callback'` | The path the server takes decisions on (`POST`).                                                                                                 |\n\nThe request, sent once per caller and tool until it is decided or `challengeTtl` passes:\n\n```json\n{\n  \"type\": \"approval.requested\",\n  \"codeChallenge\": \"…\",\n  \"codeVerifier\": \"…\",\n  \"toolId\": \"ops:delete_ticket\",\n  \"toolName\": \"delete_ticket\",\n  \"category\": \"delete\",\n  \"riskLevel\": \"high\",\n  \"approvalMessage\": \"…\",\n  \"requestedScope\": \"session\",\n  \"userId\": \"user-123\",\n  \"callbackPath\": \"/approval/callback\",\n  \"callbackUrl\": \"https://mcp.example.com/approval/callback\",\n  \"expiresAt\": 1700000300000,\n  \"timestamp\": 1700000000000\n}\n```\n\nIt never names the session. `callbackUrl` is there when `FRONTMCP_PUBLIC_URL` is set; `allowedScopes` and `maxTtlMs`\nwhen the tool limits them; `jwt` only with `includeJwt: true`. Keep `codeVerifier` secret: it is what decides the\nrequest. A request that fails (an error status, a redirect, no answer in 10 seconds) is sent again by the next call.\n\nThe decision, POSTed to `callbackPath` and signed with the same secret:\n\n```json\n{\n  \"codeVerifier\": \"…\",\n  \"approved\": true,\n  \"scope\": \"session\",\n  \"ttlMs\": 3600000,\n  \"grantedBy\": { \"source\": \"user\", \"identifier\": \"lead-7\" },\n  \"reason\": \"ok\"\n}\n```\n\n- An approval is recorded for the caller the request was for, never one the body names, held to the tool's\n  `allowedScopes` and `maxTtlMs` (`scope` defaults to `requestedScope`), with `grantedBy` and `origin: 'webhook'`. A\n  denial (`approved: false`) is recorded for the caller's session, and lasts `ttlMs`, or `challengeTtl` without it.\n- Each `codeVerifier` works once, until `challengeTtl` passes. A replayed or late decision does nothing.\n- Every signed, well-formed callback gets `202 { \"status\": \"received\" }`, whether or not it matched a request, so the\n  route never says whether an approval is pending. An unsigned or mis-signed callback, or one signed more than five\n  minutes ago, gets `401`; a body that isn't a decision `400`; one over 16 KB `413`.\n\nRequests and callbacks are signed with HMAC-SHA256 in the [Standard Webhooks](https://www.standardwebhooks.com)\nformat, so any Standard Webhooks library checks them: headers `webhook-id`, `webhook-timestamp` (Unix seconds) and\n`webhook-signature: v1,<base64>`, over `<webhook-id>.<webhook-timestamp>.<body>`. Check the timestamp on your side too,\nand reject a `webhook-id` you have seen.\n\n`this.get(ChallengeServiceToken)` returns the plugin's `ChallengeService`, the store of these one-time PKCE (Proof Key\nfor Code Exchange, RFC 7636) challenges: `createChallenge(...)`, `consume(codeVerifier)` (the request once, or\n`undefined`) and `verifyAndConsume(codeVerifier)` (the request once, or `ChallengeValidationError`).\n\n## Recheck mode\n\nWith `mode: 'recheck'` (the default) and `recheck.url`, a call that needs an approval it doesn't have polls your\napproval API until it decides.\n\n```ts\nApprovalPlugin.init({\n  recheck: {\n    url: 'https://approvals.example.com/status',\n    auth: 'bearer',\n    token: process.env.APPROVALS_API_TOKEN,\n    interval: 2000,\n    maxAttempts: 5,\n  },\n});\n```\n\n| Option                | Default  | Description                                                                                                                                                                          |\n| --------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `recheck.url`         |          | The status URL, with the same rules as `webhook.url`.                                                                                                                                |\n| `recheck.auth`        | `'none'` | `'bearer'` sends `recheck.token`; `'jwt'` forwards the caller's own access token (a call without one isn't polled); `'custom'` sends the headers `recheck.headers(request)` returns. |\n| `recheck.token`       |          | The token `auth: 'bearer'` sends.                                                                                                                                                    |\n| `recheck.headers`     |          | `(request) => headers`, for `auth: 'custom'`.                                                                                                                                        |\n| `recheck.secret`      |          | Signs each poll as webhook requests are signed.                                                                                                                                      |\n| `recheck.interval`    | `2000`   | Milliseconds between polls, 100 to 60000.                                                                                                                                            |\n| `recheck.maxAttempts` | `5`      | Polls per call, 1 to 60. `interval × (maxAttempts − 1)` is at most 2 minutes.                                                                                                        |\n\nEach poll POSTs `{ type: 'approval.status', requestId, attempt, toolId, toolName, userId?, requestedScope, ... }`\n(`requestId` is the same for every poll of one caller and tool, and names neither), and reads\n`{ approved, pending?, scope?, ttlMs?, grantedBy?, denialReason? }`:\n\n- `{ \"approved\": true }` records an approval, as a webhook approval is recorded but with `origin: 'recheck'`, and the\n  call runs. An `alwaysPrompt` tool's approval lets that call alone through, and isn't stored.\n- `{ \"approved\": false, \"pending\": true }` polls again after `interval`; after `maxAttempts` polls the call is refused as\n  `pending`.\n- `{ \"approved\": false }` refuses the call as `denied`. Nothing is stored: the next call polls again.\n- An error status, a redirect, a body that isn't such an answer, more than 64 KB, or no answer in 10 seconds refuses the\n  call as `pending`, and logs a warning that names only the URL's origin.\n\nA recorded denial refuses a call before anything is polled or sent, in both modes.\n\n## Startup checks\n\n`ApprovalPlugin.init()` throws `ApprovalConfigurationError` (code `APPROVAL_CONFIGURATION`), and the server doesn't\nstart, for options that can't work: `webhook.url` without `webhook.secret`, or a secret under 24 bytes; `webhook.*`\n(other than `challengeTtl`) outside `mode: 'webhook'` or without `webhook.url`; `recheck` in `mode: 'webhook'` or\nwithout `recheck.url`; a URL that isn't `https://` (or loopback outside production), or has credentials in it;\n`auth: 'bearer'` without `token`, `auth: 'custom'` without `headers`, or either one set for another `auth`; an\n`interval` or `maxAttempts` out of range; and a `callbackPath` that isn't a plain path, that the server reserves (the\nMCP endpoint, `/oauth/*`, `/.well-known/*`), or that another `ApprovalPlugin` serves. Up to 1.11.2 these options were\naccepted and ignored.\n\n## Docs\n\n- [Approval plugin reference](https://frontmcp.dev/reference/plugins/approval): every option, method, error and\n  caveat, with runnable examples\n- [Asking for Approval](https://frontmcp.dev/learn/asking-for-approval): builds the gate and the asking step by step\n- [Plugins and adapters](https://frontmcp.dev/reference/plugins): where to register a plugin\n\n## Related packages\n\n- [`@frontmcp/sdk`](https://www.npmjs.com/package/@frontmcp/sdk): the framework this plugin extends\n- [`@frontmcp/plugin-feature-flags`](https://www.npmjs.com/package/@frontmcp/plugin-feature-flags): hides and blocks\n  tools behind feature flags\n- [`@frontmcp/plugin-remember`](https://www.npmjs.com/package/@frontmcp/plugin-remember): `this.remember`, a memory\n  for tools\n\n## Contributing\n\nSource: [`plugins/plugin-approval`](https://github.com/agentfront/frontmcp/tree/main/plugins/plugin-approval). Issues\nand pull requests are welcome; see [CONTRIBUTING.md](https://github.com/agentfront/frontmcp/blob/main/CONTRIBUTING.md).\n\n## License\n\nApache-2.0. See [LICENSE](https://github.com/agentfront/frontmcp/blob/main/LICENSE).\n","readmeFilename":"README.md"}