opencode

Connect OpenCode to Google Sheets and Supabase

Give OpenCode both Google Sheets and Supabase and it can manage your users straight from a spreadsheet. It reads a roster from a sheet, then creates, updates, or removes accounts in Supabase and sends people a magic link or a password reset. Point it the other way and it lists your Supabase users into a sheet for an access review. Supabase stays the auth system of record while Sheets is the roster and the audit log.
Loading preview…
Opens a workflow with 119 tools ready to use.

What happens next

Set up in minutes

The open button drops you into a guided setup. It asks exactly this, nothing else:
  1. Choose where it runs

    On your computer through your own OpenCode, or hosted in the cloud. The rest of setup adapts to your choice:

  2. Pick what it can do in Google Sheets

    A preset of real Google Sheets operations. Each one becomes a tool the agent can call, and it can't touch anything outside the list.

  3. Pick what it can do in Supabase

    A preset of real Supabase operations. Each one becomes a tool the agent can call, and it can't touch anything outside the list.

  4. Connect Google Sheets

    One sign-in. The agent acts through your account, scoped to the operations you picked.

  5. Connect Supabase

    One sign-in. The agent acts through your account, scoped to the operations you picked.

  6. Add your personal MCP link

    The last step mints a private MCP URL for this agent and walks you through exactly this, with your real link filled in. The page flips to Connected the moment your OpenCode first calls in.

    1. Run this in your terminal

    $opencode mcp add

    2. Choose Remote and paste your server URL

    https://mcp.noclick.app/s/<your-link>

    3. Choose No when asked about OAuth authentication — the link itself is the key

    <your-link> is your personal server URL — setup mints it for you.

Exact capabilities

Tools OpenCode gets

Pick the operations you want and each becomes a tool the agent can call directly while it works.

Google Sheets

85 tools
Read Sheet Data

Configuration for reading data from a Google Sheet

Write Sheet Data

Configuration for writing data to a Google Sheet

Append Rows to Sheet

Configuration for appending rows to a Google Sheet

Clear Sheet Range

Configuration for clearing values from a range

Create New Spreadsheet

Configuration for creating a new spreadsheet

Fetch Spreadsheet Metadata

Configuration for getting spreadsheet metadata

Read Multiple Sheet Ranges

Configuration for reading multiple ranges at once

Write to Multiple Sheet Ranges

Configuration for writing to multiple ranges at once

Add Spreadsheet Sheet

Configuration for adding a new sheet/tab

Delete Spreadsheet Sheet

Configuration for deleting a sheet/tab

Copy Sheet to Spreadsheet

Configuration for copying a sheet to another spreadsheet

Rename Spreadsheet Sheet

Configuration for renaming a sheet/tab

Duplicate Sheet in Spreadsheet

Configuration for duplicating a sheet within the same spreadsheet

Find and Replace in Spreadsheet

Configuration for find and replace in a spreadsheet

Insert Sheet Rows

Configuration for inserting rows

Delete Sheet Rows

Configuration for deleting rows

Clear Multiple Sheet Ranges

Configuration for clearing multiple ranges at once

Insert Sheet Columns

Configuration for inserting columns

Delete Sheet Columns

Configuration for deleting columns

Format Cells

Configuration for formatting a range of cells

Update Sheet Properties

Configuration for sheet-level display properties

Auto-Resize Columns Or Rows

Configuration for auto-sizing columns or rows to fit their contents

Set Column Width Or Row Height

Configuration for setting an explicit column width or row height

Merge Cells

Configuration for merging cells

Unmerge Cells

Configuration for unmerging cells

Add Or Remove Borders

Configuration for drawing borders on a range

Add Alternating Colours

Configuration for alternating row colours

Set Filter

Configuration for adding a filter to a range

Clear Filter

Configuration for removing a filter

Add Conditional Formatting

Configuration for a conditional formatting rule

Sort Range

Configuration for sorting a range

Add Dropdown Or Input Rule

Configuration for adding a dropdown or input rule to a range

Remove Dropdown Or Input Rule

Configuration for removing dropdowns / input rules from a range

Remove Conditional Formatting

Configuration for removing conditional formatting rules

Remove Alternating Colours

Configuration for removing alternating row colours

Convert Range To Table

Configuration for turning a range into a Sheets table

Delete Table

Configuration for removing a table

Edit Conditional Formatting

Configuration for editing or reordering a conditional formatting rule

Recolour Alternating Colours

Configuration for recolouring existing banding in place

Edit Table

Configuration for changing a table's name, range or column types

Update Spreadsheet Properties

Configuration for spreadsheet-level properties

Add Named Range

Configuration for naming a range

Update Named Range

Configuration for changing a named range

Delete Named Range

Configuration for removing a named range

Protect Range

Configuration for protecting a range from edits

Update Protected Range

Configuration for changing a protected range

Unprotect Range

Configuration for removing range protection

Cell Notes

Configuration for putting a hover note on cells

Insert Smart Chips

Configuration for inserting people or link smart chips

Pivot Table

Configuration for anchoring a pivot table

Copy And Paste Range

Configuration for copying a range onto another

Cut And Paste Range

Configuration for moving a range

Paste Delimited Text

Configuration for pasting delimited text

Auto-Fill Range

Configuration for extending a series

Split Text To Columns

Configuration for splitting a column of text

Trim Whitespace

Configuration for trimming whitespace

Remove Duplicate Rows

Configuration for removing duplicate rows

Randomise Range

Configuration for shuffling rows

Insert Cells

Configuration for inserting cells and shifting the rest

Delete Cells

Configuration for deleting cells and shifting the rest

Move Rows Or Columns

Configuration for moving rows or columns

Append Rows Or Columns

Configuration for appending blank rows or columns

Add Chart

Configuration for adding a chart

Edit Chart

Configuration for changing an existing chart

Move Or Resize Chart

Configuration for moving or resizing a chart

Set Chart Border

Configuration for a chart's border colour

Delete Chart

Configuration for removing a chart

Append Rows After Data

Configuration for appending rows of cells after the last row of data

Filter View

Configuration for creating a saved filter view

Update Filter View

Configuration for changing a filter view

Duplicate Filter View

Configuration for copying a filter view

Delete Filter View

Configuration for removing a filter view

Group Rows Or Columns

Configuration for grouping rows or columns

Collapse Or Expand Group

Configuration for collapsing or expanding a group

Ungroup Rows Or Columns

Configuration for ungrouping rows or columns

Add Slicer

Configuration for adding a slicer control

Update Slicer

Configuration for changing a slicer

Add Developer Metadata

Configuration for tagging a sheet, row or column with durable metadata

Update Developer Metadata

Configuration for changing developer metadata

Delete Developer Metadata

Configuration for removing developer metadata

Connect BigQuery Data Source

Configuration for connecting a BigQuery data source

Repoint Data Source

Configuration for repointing a data source

Delete Data Source

Configuration for disconnecting a data source

Refresh Data Source

Configuration for refreshing connected data

Cancel Data Source Refresh

Configuration for cancelling a running refresh

Supabase

34 tools
Select Table Rows

Select/query rows from a table with filtering, ordering, and pagination

Insert Table Rows

Insert one or more rows into a table

Update Table Rows

Update rows matching filter conditions

Delete Table Rows

Delete rows matching filter conditions

Upsert Table Rows

Insert rows or update if they already exist (based on primary key or unique constraint)

Call Database Function

Call a database function (RPC)

Sign Up User

Sign up a new user with email and password

Sign in with Password

Sign in with email and password

Send Magic Link Signin

Send a magic link to user's email for passwordless signin

Sign Out User

Sign out the current user (requires user's access token)

Get Current User

Get current user details (requires user's access token)

Update Current User

Update current user's email, password, or metadata

Send Password Reset Email

Send password reset email to user

Verify Otp Code

Verify OTP code sent via email or SMS

Refresh Access Token

Refresh an expired access token using refresh token

Admin List Users

List all users (requires service_role API key)

Admin Create User

Create a new user (admin operation, requires service_role API key)

Admin Delete User

Delete a user by ID (admin operation, requires service_role API key)

Admin Update User

Update a user by ID (admin operation, requires service_role API key)

Create Storage Bucket

Create a new storage bucket

List Storage Buckets

List all storage buckets

Get Storage Bucket

Get bucket details

Delete Storage Bucket

Delete a storage bucket

Empty Storage Bucket

Empty a storage bucket (delete all files)

Upload Storage File

Upload a file to storage

Download Storage File

Download a file from storage

List Bucket Files

List files in a storage bucket folder

Delete Storage File

Delete a file from storage

Move Storage File

Move a file within or between buckets

Copy Storage File

Copy a file within or between buckets

Create File Signed Url

Create a signed URL for temporary file access

Get File Public Url

Get public URL for a file in a public bucket

Broadcast Realtime Message

Send broadcast messages to a Realtime channel

Invoke Edge Function

Invoke a Supabase Edge Function

Starting points

What you can build

Read a list of new hires from a Google Sheet and create each one as a user in Supabase.
List every Supabase user and write them into a spreadsheet for an access review.
Read email addresses from a sheet and send each person a Supabase magic link or password reset.
Read a sheet of departures and delete each matching Supabase account to close out offboarding.

Meet the runner

About OpenCode

OpenCode is an open, model-agnostic command-line coding agent. In NoClick it runs hosted and gains your apps as tools, so it can act on real systems rather than just edit files. Wire an integration into the agent and OpenCode can use that app’s operations directly while it works. It is a flexible choice when you want an open agent with broad model support and real tool access.
Open and model-agnostic
Flexible across many underlying models
Good general-purpose tool use
Lightweight to point at a focused task

Good to know

Frequently asked questions

Keep exploring

More ways to connect

Make it yours

Open your OpenCode agent in one click.

NoClick runs OpenCode for you with Google Sheets and Supabase wired in as tools. Connect your account and run.