sidebutton
sidebutton
sidebutton
Open-source AI agent platform providing browser automation, workflow engine, and knowledge packs through an MCP server with 40+ tools for web control and automation.
The server returned 29 tools in tools/list. Only “list_workflows” was invoked with a synthetic read-only input and succeeded.
run_workflowExecute a workflow automation by ID. Returns a run_id for tracking execution status.
Parameters: workflow_id, paramsget_run_logRetrieve the execution log for a completed workflow run.
Parameters: run_idlist_workflowsList all available workflow automations.
Parameters: sourceget_workflowGet detailed information about a specific workflow.
Parameters: workflow_idlist_run_logsList recent workflow execution logs.
Parameters: limit, workflow_idpublish_artifactPublish a piece of evidence (a screenshot, a design mockup, an RCA/coverage report) to the portal RIGHT NOW, mid-session, and get back a paste-ready snippet to cite in your ONE resolution comment on the ticket. The file is uploaded, attached to the ticket automatically, and given a tokenized no-login download link — the snippet contains that link plus the Jira inline-attachment reference. Use this the moment you have evidence worth showing, instead of waiting for the end of the session (nothing you save after your comment is written can be cited in it). Works on a dispatched job and for every turn of a live app editing session; on a ticketless/chat job it returns a download link only. Files must be ≤ 25 MB and live under your home directory. On any failure the file is left on disk and still uploads at session end, so save deliverables under artifacts/ as a fallback.
Parameters: path, kind, captionget_browser_statusCheck if the browser extension is connected.
capture_pageCapture selectors and interactive elements from the current page.
navigateNavigate the connected browser tab to a URL.
Parameters: urlsnapshotCapture accessibility snapshot of the current page. Returns YAML with element refs for use with click/type. Use includeContent=true to also include visible text content as markdown. Note: taking a snapshot may dismiss inline modals or popups — use screenshot instead if you need to verify modal content.
Parameters: includeContentclickClick an element on the page.
Parameters: selector, ref, elementtypeType text into an input element.
Parameters: selector, ref, element, text, submitpress_keyPress a key on the keyboard. Use this for keyboard shortcuts, Tab navigation, Enter, Escape, arrow keys, etc. Supports key combinations like "Ctrl+A" or "Shift+Tab".
Parameters: key, selector, refscrollScroll the page.
Parameters: direction, amountextractExtract text content from an element.
Parameters: selectorscreenshotCapture a screenshot of the current page. Prefer cropping to a specific area instead of capturing the full viewport — use ref (from snapshot), selector (CSS), or region (manual rect) to save context tokens. Full viewport is fine for first visit to a new page; after that, crop to the relevant section. Pass path to write the PNG to a file instead of returning image bytes — that is what you want for docs screenshots and QA evidence, since the file can then be published with publish_artifact and never enters your context.
Parameters: ref, selector, region, pathselect_optionSelect an option from a native <select> dropdown element. Use this instead of click for <select> elements, as native dropdowns cannot be controlled via click events.
Parameters: selector, ref, element, value, labelfillFill a form field by setting its value programmatically. Unlike "type" (which simulates keystrokes), "fill" sets the value directly and triggers React/Vue/Angular change events. Use this for framework-controlled inputs where "type" doesn't work.
Parameters: selector, valuewaitWait for an element to appear on the page. Blocks until the element matching the selector exists in the DOM, or throws after timeout.
Parameters: selector, timeoutexistsCheck if an element exists on the page. Returns true/false without throwing. Useful for conditional logic.
Parameters: selector, timeoutextract_allExtract text from all elements matching a selector, joined by a separator. Useful for getting lists of items, table columns, or repeated elements.
Parameters: selector, separator, attributeextract_mapExtract structured data from repeated elements. For each element matching the outer selector, extracts named fields using sub-selectors. Returns JSON array of objects.
Parameters: selector, fieldsscroll_into_viewScroll a specific element into the viewport. More precise than "scroll" — targets an exact element.
Parameters: selector, blockhoverHover over an element (positions cursor for scroll targeting).
Parameters: selectorinject_cssInject a CSS rule into the current page. The main use is pre-capture redaction: blur or hide sensitive elements, then screenshot to a file, so no unredacted image ever exists. Pass an id to make the injection replaceable — injecting the same id again swaps the rule rather than stacking a second one.
Parameters: css, idevaluateExecute JavaScript in the browser page context and return the result. Useful for reading page state, checking values, or performing calculations.
Parameters: jsbrowser_batchRun a SEQUENCE of browser actions in ONE call instead of one round trip per action. Each step is the same shape you would pass to the individual tool, plus a "cmd" field naming which tool to run. A batch is a DETERMINISTIC run: actions you already know the selectors for, executed top to bottom, halting at the first failure (unless on_error:"continue"). By default it ends by returning a fresh accessibility snapshot of the resulting page, so you can decide the next move in the same turn. The moment you need to SEE something before choosing an action, end the batch and read the returned snapshot. Guidance: - Prefer CSS selectors over refs inside a batch. Refs come from a prior snapshot and go stale the instant a step re-renders the page; selectors survive. - After a navigate (or an action that loads new content), add a { "cmd": "wait", "selector": "..." } step before interacting with the new content. - Add "optional": true to a step whose failure should not halt the batch. - Add "return
Parameters: steps, on_error, snapshot_tailset_basic_authProvide HTTP Basic Auth credentials so the browser logs in silently instead of showing the native username/password modal, which would otherwise block the page and hang automation. Applies to the connected tab. Omit "origin" to use the credentials for any site that challenges; pass "origin" (e.g. "https://staging.example.com") to scope them to one site. When a challenge has no matching credentials it is dismissed so the page never hangs.
Parameters: username, password, originclear_basic_authRemove stored HTTP Basic Auth credentials. Omit "origin" to clear all stored credentials; pass "origin" to clear just that site.
Parameters: originThis server’s available tools can vary by account, permissions, or configuration. The list shown is not its full runtime catalog.
Name, description, publisher identifier, categories, transport, tool inventory, and install configuration.
Repository URL linked from the public profile; npm package repository metadata matched this GitHub repository.
Published package version 1.5.9 checked before launch. Registry repository: git+https://github.com/sidebutton/sidebutton.git.
Official tools reference says it is generated from the server tool registry and enumerates 29 tools.
Documentation checked 2026-10-28T00:00:00Z. Connection has not been runtime tested.
sidebutton
Open-source AI agent platform providing browser automation, workflow engine, and knowledge packs through an MCP server with 40+ tools for web control and automation.
The server returned 29 tools in tools/list. Only “list_workflows” was invoked with a synthetic read-only input and succeeded.
run_workflowExecute a workflow automation by ID. Returns a run_id for tracking execution status.
Parameters: workflow_id, paramsget_run_logRetrieve the execution log for a completed workflow run.
Parameters: run_idlist_workflowsList all available workflow automations.
Parameters: sourceget_workflowGet detailed information about a specific workflow.
Parameters: workflow_idlist_run_logsList recent workflow execution logs.
Parameters: limit, workflow_idpublish_artifactPublish a piece of evidence (a screenshot, a design mockup, an RCA/coverage report) to the portal RIGHT NOW, mid-session, and get back a paste-ready snippet to cite in your ONE resolution comment on the ticket. The file is uploaded, attached to the ticket automatically, and given a tokenized no-login download link — the snippet contains that link plus the Jira inline-attachment reference. Use this the moment you have evidence worth showing, instead of waiting for the end of the session (nothing you save after your comment is written can be cited in it). Works on a dispatched job and for every turn of a live app editing session; on a ticketless/chat job it returns a download link only. Files must be ≤ 25 MB and live under your home directory. On any failure the file is left on disk and still uploads at session end, so save deliverables under artifacts/ as a fallback.
Parameters: path, kind, captionget_browser_statusCheck if the browser extension is connected.
capture_pageCapture selectors and interactive elements from the current page.
navigateNavigate the connected browser tab to a URL.
Parameters: urlsnapshotCapture accessibility snapshot of the current page. Returns YAML with element refs for use with click/type. Use includeContent=true to also include visible text content as markdown. Note: taking a snapshot may dismiss inline modals or popups — use screenshot instead if you need to verify modal content.
Parameters: includeContentclickClick an element on the page.
Parameters: selector, ref, elementtypeType text into an input element.
Parameters: selector, ref, element, text, submitpress_keyPress a key on the keyboard. Use this for keyboard shortcuts, Tab navigation, Enter, Escape, arrow keys, etc. Supports key combinations like "Ctrl+A" or "Shift+Tab".
Parameters: key, selector, refscrollScroll the page.
Parameters: direction, amountextractExtract text content from an element.
Parameters: selectorscreenshotCapture a screenshot of the current page. Prefer cropping to a specific area instead of capturing the full viewport — use ref (from snapshot), selector (CSS), or region (manual rect) to save context tokens. Full viewport is fine for first visit to a new page; after that, crop to the relevant section. Pass path to write the PNG to a file instead of returning image bytes — that is what you want for docs screenshots and QA evidence, since the file can then be published with publish_artifact and never enters your context.
Parameters: ref, selector, region, pathselect_optionSelect an option from a native <select> dropdown element. Use this instead of click for <select> elements, as native dropdowns cannot be controlled via click events.
Parameters: selector, ref, element, value, labelfillFill a form field by setting its value programmatically. Unlike "type" (which simulates keystrokes), "fill" sets the value directly and triggers React/Vue/Angular change events. Use this for framework-controlled inputs where "type" doesn't work.
Parameters: selector, valuewaitWait for an element to appear on the page. Blocks until the element matching the selector exists in the DOM, or throws after timeout.
Parameters: selector, timeoutexistsCheck if an element exists on the page. Returns true/false without throwing. Useful for conditional logic.
Parameters: selector, timeoutextract_allExtract text from all elements matching a selector, joined by a separator. Useful for getting lists of items, table columns, or repeated elements.
Parameters: selector, separator, attributeextract_mapExtract structured data from repeated elements. For each element matching the outer selector, extracts named fields using sub-selectors. Returns JSON array of objects.
Parameters: selector, fieldsscroll_into_viewScroll a specific element into the viewport. More precise than "scroll" — targets an exact element.
Parameters: selector, blockhoverHover over an element (positions cursor for scroll targeting).
Parameters: selectorinject_cssInject a CSS rule into the current page. The main use is pre-capture redaction: blur or hide sensitive elements, then screenshot to a file, so no unredacted image ever exists. Pass an id to make the injection replaceable — injecting the same id again swaps the rule rather than stacking a second one.
Parameters: css, idevaluateExecute JavaScript in the browser page context and return the result. Useful for reading page state, checking values, or performing calculations.
Parameters: jsbrowser_batchRun a SEQUENCE of browser actions in ONE call instead of one round trip per action. Each step is the same shape you would pass to the individual tool, plus a "cmd" field naming which tool to run. A batch is a DETERMINISTIC run: actions you already know the selectors for, executed top to bottom, halting at the first failure (unless on_error:"continue"). By default it ends by returning a fresh accessibility snapshot of the resulting page, so you can decide the next move in the same turn. The moment you need to SEE something before choosing an action, end the batch and read the returned snapshot. Guidance: - Prefer CSS selectors over refs inside a batch. Refs come from a prior snapshot and go stale the instant a step re-renders the page; selectors survive. - After a navigate (or an action that loads new content), add a { "cmd": "wait", "selector": "..." } step before interacting with the new content. - Add "optional": true to a step whose failure should not halt the batch. - Add "return
Parameters: steps, on_error, snapshot_tailset_basic_authProvide HTTP Basic Auth credentials so the browser logs in silently instead of showing the native username/password modal, which would otherwise block the page and hang automation. Applies to the connected tab. Omit "origin" to use the credentials for any site that challenges; pass "origin" (e.g. "https://staging.example.com") to scope them to one site. When a challenge has no matching credentials it is dismissed so the page never hangs.
Parameters: username, password, originclear_basic_authRemove stored HTTP Basic Auth credentials. Omit "origin" to clear all stored credentials; pass "origin" to clear just that site.
Parameters: originThis server’s available tools can vary by account, permissions, or configuration. The list shown is not its full runtime catalog.
Name, description, publisher identifier, categories, transport, tool inventory, and install configuration.
Repository URL linked from the public profile; npm package repository metadata matched this GitHub repository.
Published package version 1.5.9 checked before launch. Registry repository: git+https://github.com/sidebutton/sidebutton.git.
Official tools reference says it is generated from the server tool registry and enumerates 29 tools.
Documentation checked 2026-10-28T00:00:00Z. Connection has not been runtime tested.