{"_id":"@agungkes/chibisafe-mcp","name":"@agungkes/chibisafe-mcp","dist-tags":{"latest":"0.0.1"},"versions":{"0.0.1":{"name":"@agungkes/chibisafe-mcp","version":"0.0.1","description":"MCP server for uploading and searching files in Chibisafe","bin":{"chibisafe-mcp":"dist/index.js"},"keywords":["mcp","chibisafe"],"license":"MIT","engines":{"node":">=20"},"type":"module","dependencies":{"@modelcontextprotocol/sdk":"^1.30.0","mime-types":"^3.0.2","zod":"^4.4.3"},"devDependencies":{"@types/mime-types":"^3.0.1","@types/node":"^26.4.0","tsx":"^4.23.12","typescript":"^7.0.2","vitest":"^4.1.11"},"scripts":{"build":"pnpm clean && tsc -p tsconfig.json","clean":"node -e \"require('node:fs').rmSync('dist',{recursive:true,force:true})\"","dev":"tsx src/index.ts","start":"node dist/index.js","test":"vitest run --exclude 'dist/**'","typecheck":"tsc -p tsconfig.json --noEmit"},"_nodeVersion":"22.21.1","_id":"@agungkes/chibisafe-mcp@0.0.1","dist":{"integrity":"sha512-AJGtH40FKKWQ8m1CylcKYRmz3wmscAEImHeUgbz2iRWnRYF5pYGe6x5BV0OgYp3vqYYC6BxNh/XR1+EuKC6ucg==","shasum":"dddcf839b48544272e2f3a8a70e680d7caa7b069","tarball":"https://registry.npmjs.org/@agungkes/chibisafe-mcp/-/chibisafe-mcp-0.0.1.tgz","fileCount":20,"unpackedSize":34722,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCUccSMDU/nOhn71qrLdDfVy/IUmnP5sL7uLsquIy/s6gIgbqSUpq4a25V+8tziPkgWmeIdFIxIyY5L1fHGyBSluRE="}]},"_npmUser":{"name":"agungkes","email":"cintarembo@gmail.com"},"directories":{},"maintainers":[{"name":"agungkes","email":"cintarembo@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/chibisafe-mcp_0.0.1_1787883608313_0.3857006074715039"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-28T02:20:08.087Z","0.0.1":"2026-08-28T02:20:08.440Z","modified":"2026-08-28T02:20:08.693Z"},"maintainers":[{"name":"agungkes","email":"cintarembo@gmail.com"}],"description":"MCP server for uploading and searching files in Chibisafe","keywords":["mcp","chibisafe"],"license":"MIT","readme":"# chibisafe-mcp\n\nMCP server over stdio for a Chibisafe instance. It provides tools to upload local files, search files, and retrieve file metadata.\n\n## Requirements\n\n- Node.js 20 or newer\n- pnpm\n- A Chibisafe API key\n\n## Setup\n\n```bash\npnpm install\npnpm build\n```\n\nRequired environment variables:\n\n- `CHIBISAFE_BASE_URL`: Chibisafe instance origin, for example `https://storage.example.com`\n- `CHIBISAFE_API_KEY`: API key generated by Chibisafe\n\nExample MCP client configuration using the published npm package:\n\n```json\n{\n  \"mcpServers\": {\n    \"chibisafe\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@agungkes/chibisafe-mcp\"],\n      \"env\": {\n        \"CHIBISAFE_BASE_URL\": \"https://storage.example.com\",\n        \"CHIBISAFE_API_KEY\": \"replace-with-your-api-key\"\n      }\n    }\n  }\n}\n```\n\nThe `-y` flag allows `npx` to install or update the package without an interactive prompt.\n\n## Tools\n\n- `upload_file`: uploads a local path, optionally to an album UUID. Supports Chibisafe local and network storage upload flows, including chunked uploads.\n- `search_files`: searches stored names, original names, and tags with pagination.\n- `get_file`: returns metadata, albums, and tags for a file UUID. Uploader IP is omitted.\n\n## Security\n\n`upload_file` can read any regular file accessible to the OS user running this MCP process. There is no directory allowlist. Run the process with the minimum filesystem permissions required and do not expose this stdio server to untrusted MCP clients.\n\nThe API key is sent only to the configured Chibisafe instance. It is not forwarded to signed object-storage URLs.\n\n## Development\n\n```bash\npnpm test\npnpm typecheck\npnpm build\n```\n","readmeFilename":"","_rev":"1-30f10427436ba256b254bad7c9c33249"}