{"ok":true,"site":{"host":"athousandtools.in","url":"https://athousandtools.in/","type":"live","desc":"73 free PDF and image tools that run in your browser - merge, compress, convert, sign, OCR and protect. No uploads, no account, no watermarks, no daily limits. The private alternative to iLovePDF…","tools":[{"name":"athousandtools_list_tools","kind":"act","impl":"imperative","description":"List the PDF and image operations this site can perform, with the id to pass to athousandtools_run. Start here. Optionally filter by category or a search term.","inputSchema":{"type":"object","properties":{"category":{"type":"string","enum":["Organize","Optimize","Convert","Edit","Security","Image"]},"query":{"type":"string","description":"Free-text filter over titles and descriptions."}},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"polyfill","executable":true,"handlerField":"execute","page":"/","pages":["/","/sponsor/","/passport-photo/","/agents/","/alternatives/","/alternatives/adobe-acrobat/"]},{"name":"athousandtools_describe_tool","kind":"answer","impl":"imperative","description":"Describe one operation: how many input files it needs, what it accepts, and every option it takes with its default. Call this before athousandtools_run rather than guessing option names.","inputSchema":{"type":"object","properties":{"tool":{"type":"string","description":"Tool id from athousandtools_list_tools, e.g. \"pdf_to_markdown\"."}},"required":["tool"]},"hasHandler":true,"hasExecute":true,"__source":"polyfill","executable":true,"handlerField":"execute","page":"/","pages":["/","/sponsor/","/passport-photo/","/agents/","/alternatives/","/alternatives/adobe-acrobat/"]},{"name":"athousandtools_attach_file","kind":"act","impl":"imperative","description":"Attach a file for the operations to work on, as base64. Suitable for small inputs; for anything over a megabyte or so use athousandtools_open_file_picker instead, which takes the file without moving its bytes through this conversation.","inputSchema":{"type":"object","properties":{"name":{"type":"string","description":"Filename including extension - the extension is how engines recognise the format."},"base64":{"type":"string","description":"File contents, base64. A data: URL is also accepted."}},"required":["name","base64"]},"hasHandler":true,"hasExecute":true,"__source":"polyfill","executable":true,"handlerField":"execute","page":"/","pages":["/","/sponsor/","/passport-photo/","/agents/","/alternatives/","/alternatives/adobe-acrobat/"]},{"name":"athousandtools_open_file_picker","kind":"act","impl":"imperative","description":"Open the browser file chooser and attach whatever is selected. This is the efficient way to hand over a real file: call it, then satisfy the file chooser with your browser-automation upload command. Resolves once files are chosen.","inputSchema":{"type":"object","properties":{"multiple":{"type":"boolean","description":"Allow selecting more than one file. Default true."}},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"polyfill","executable":true,"handlerField":"execute","page":"/","pages":["/","/sponsor/","/passport-photo/","/agents/","/alternatives/","/alternatives/adobe-acrobat/"]},{"name":"athousandtools_list_files","kind":"act","impl":"imperative","description":"List the files currently attached, with the ids that athousandtools_run takes. Pass clear:true to drop them all first.","inputSchema":{"type":"object","properties":{"clear":{"type":"boolean","description":"Remove every attached file. Default false."}},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"polyfill","executable":true,"handlerField":"execute","page":"/","pages":["/","/sponsor/","/passport-photo/","/agents/","/alternatives/","/alternatives/adobe-acrobat/"]},{"name":"athousandtools_inspect_pdf","kind":"answer","impl":"imperative","description":"Read an attached PDF without changing it: page count, page size, metadata, form fields, and whether it has extractable text or is a scan. Worth calling before choosing page ranges or deciding whether OCR is needed.","inputSchema":{"type":"object","properties":{"fileId":{"type":"string","description":"Which attached file. Defaults to the first one."}},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"polyfill","executable":true,"handlerField":"execute","page":"/","pages":["/","/sponsor/","/passport-photo/","/agents/","/alternatives/","/alternatives/adobe-acrobat/"]},{"name":"athousandtools_run","kind":"act","impl":"imperative","description":"Run one operation on the attached files, in this browser. Returns a summary plus any text the operation produced; a resulting file is held in memory for athousandtools_get_result or athousandtools_save_result. Nothing is uploaded - the work happens locally, so a large document can take a while.","inputSchema":{"type":"object","properties":{"tool":{"type":"string","description":"Tool id, e.g. \"merge\", \"compress\", \"pdf_to_markdown\"."},"options":{"type":"object","additionalProperties":true,"description":"Operation options. Call athousandtools_describe_tool for the exact shape."},"text":{"type":"string","description":"Text input, for the operations that take typed text instead of a file."},"fileIds":{"type":"array","items":{"type":"string"},"description":"Which attached files to use, in order. Defaults to all of them."}},"required":["tool"]},"hasHandler":true,"hasExecute":true,"__source":"polyfill","executable":true,"handlerField":"execute","page":"/","pages":["/","/sponsor/","/passport-photo/","/agents/","/alternatives/","/alternatives/adobe-acrobat/"]},{"name":"athousandtools_get_result","kind":"answer","impl":"imperative","description":"Return the last result. Text results come back in full; a file comes back base64, which is expensive - prefer athousandtools_save_result unless you genuinely need the bytes in the conversation.","inputSchema":{"type":"object","properties":{"maxBytes":{"type":"number","description":"Refuse a file larger than this rather than flooding the context. Default 750000."}},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"polyfill","executable":true,"handlerField":"execute","page":"/","pages":["/","/sponsor/","/passport-photo/","/agents/","/alternatives/","/alternatives/adobe-acrobat/"]},{"name":"athousandtools_save_result","kind":"act","impl":"imperative","description":"Download the last result through the browser, the same way the Download button does. Use this for anything of real size; the file lands wherever the browser saves downloads.","inputSchema":{"type":"object","properties":{"filename":{"type":"string","description":"Override the suggested filename. Optional."}},"required":[]},"hasHandler":true,"hasExecute":true,"__source":"polyfill","executable":true,"handlerField":"execute","page":"/","pages":["/","/sponsor/","/passport-photo/","/agents/","/alternatives/","/alternatives/adobe-acrobat/"]},{"name":"athousandtools_open_tool","kind":"act","impl":"imperative","description":"Navigate the visible page to a tool, its directory, or the home page - for when a person is watching, or when you want to finish a job in the on-screen editor. This only changes the view; it runs nothing.","inputSchema":{"type":"object","properties":{"tool":{"type":"string","description":"A tool id, or \"all\" for the tool directory, or \"home\"."}},"required":["tool"]},"hasHandler":true,"hasExecute":true,"__source":"polyfill","executable":true,"handlerField":"execute","page":"/","pages":["/","/sponsor/","/passport-photo/","/agents/","/alternatives/","/alternatives/adobe-acrobat/"]}],"category":"Productivity & Business","favicon":"/favicons/athousandtools.in.svg","apiSurface":"polyfill","toolCount":10}}