Use ChatGPT and Claude in Google Sheets and Docs.

TinyAgent turns ChatGPT and Claude into AI for Google Sheets and Docs. Describe the file you want and it builds it in your signed-in Google account, ready to review in Drive.

Free to start. $8 in Wallet funds on us, no card needed.

A real run, step by step

Prompt

“Use TinyFish to check which Luma events I'm signed up for, then create a Luma Events sheet in my Google Drive with the name, date, time, and location of each.”

TinyAgent session creating a Google Sheet of Luma events with name, date, time and location columns.
TinyAgent creating a Luma Events sheet in Google Drive from one prompt, one row per event.

From a prompt to a file in your Drive.

  1. 01

    Describe the file

    You
    Name the sheet or doc and say what goes in it, with the data or the site to pull it from.
    TinyAgent
    TinyAgent opens Google Sheets or Docs in a browser signed in through your saved TinyProfiles session.
  2. 02

    Let it do the typing

    You
    Nothing.
    TinyAgent
    TinyAgent creates or opens the file, adds rows, fills cells, writes headings and paragraphs, and formats what you asked for.
  3. 03

    Review it in Drive

    You
    Open the file in Drive.
    TinyAgent
    TinyAgent returns the link and a summary of what it changed, and flags anything it could not do.

Build the sheet in a chat. Or with the API.

Give TinyAgent the sheet.

Install the TinyFish plugin in ChatGPT or Claude, sign in to Google once through TinyProfiles, then describe the sheet or doc you want. TinyAgent builds it in your Drive and returns the link.

Use TinyFish to open my Google Sheet called Leads Q4, add a row for each company in this list with name, website and city, and tell me how many rows you added.

Set up ChatGPT or Claude

Connect your Sheets workflow.

Call TinyAgent with the sheet URL and a plain-language goal. Use it to push rows from your own system into a shared sheet, or to draft a Doc from data you already hold.

Add rows to a Google Sheet:

from tinyfish import TinyFish, EventType, RunStatus

client = TinyFish()

with client.agent.stream(
    url="https://docs.google.com/spreadsheets/d/[sheet id]/edit",
    goal="""Add a row for each company in the list: Acme Co (acme.com, Austin), Bright Labs (brightlabs.io, Denver). Return the number of rows added and the sheet URL.""",
) as stream:
    for event in stream:
        if event.type == EventType.COMPLETE and event.status == RunStatus.COMPLETED:
            print("Result:", event.result_json)

Runs are billed at $0.016 per agent step.

Read the docs

What people use it for.

Put web research into a sheet

Ask for prices, listings or events from live sites. TinyAgent reads each page and adds one row per result.

See TinyAgent

Update a tracker from a portal

Pull today's numbers from a dashboard with no API into the sheet.

See TinyAgent

Move sheet rows into a web app

Push rows from a sheet into a web app that has no API. Each row becomes one form submission.

Fill out web forms

Write a Doc from a web page

Point it at a page and ask for notes or a summary. TinyAgent writes the headings and paragraphs into a Doc.

See Fetch
TinyFish is rated 4.4 out of 5 on G2 - Users Love Us badge

Verified on G2

4.4 out of 5 on G2

  • TinyFish is the one layer I actually keep in the stack when I need live web, not another chatbot pretending it can browse. Search, Fetch, Browser, and Agent sit under one API, so I am not wiring Exa for search, Firecrawl for markdown, and Apify for the messy pages.
    Otman M.Deployment Strategist for AI adoption - ConsultingRead on G2 ↗
  • It is super fast! After onboarding it was very easy to get setup. The starter credits that were given were plenty and each search and fetch were free while agent mode provided a good bang for your buck.
    Verified User in Market ResearchRead on G2 ↗
  • I use TinyFish for hackathons and side projects to scrape websites and provide LLMs with precise context, and I love its speed, accuracy, and the fact that it's fast, cheap, and good. It can return information quickly and accurately from links inside websites or from specific links.
    Verified UserRead on G2 ↗
  • What I like most about TinyFish is how well it handles web-based sources that are hard to reach through conventional APIs.
    deepti b.Founder - Health, Wellness and FitnessRead on G2 ↗
  • The configuration is very simple and it supports MCP, making it basically ready to use out of the box.
    David W.Writer & Editor - Fund-RaisingRead on G2 ↗
  • TinyFish is the page-scrape layer I actually trust after a search API. I run Tavily for broad hits, then TinyFish run-sse against a specific URL with a goal — Gensyn docs, DoraHacks briefs, GitHub orgs, hackathon portals — and it returns extractable text instead of “10 blue links.”
    Henry M.Community Associate - Computer SoftwareRead on G2 ↗
  • I hand it a URL and get back clean Markdown instead of a wall of nav bars, cookie banners and ads, which cuts my token cost on every LLM call downstream. Search and Fetch being free is genuinely rare — everyone else meters exactly this.
    Alessio B.Web Developer - InternetRead on G2 ↗
  • TinyFish has become my default web layer inside Claude Code and OpenCode. The MCP connection was easy to set up, and I was running searches and fetches within minutes.
    Kartik S.Founder - InternetRead on G2 ↗
  • The standout feature of TinyFish is its unified, production-ready web agent architecture that replaces fragile scraping scripts with resilient, human-like browser navigation and multi-step workflow execution through a single API
    Ranganath D.Sr Manager - Airlines/AviationRead on G2 ↗
  • Tinyfish is a highly effective tool for agent search and fetch functions. It’s also free
    Verified User in InternetRead on G2 ↗

Questions, answered.

Give TinyAgent your first sheet.

Free to start. $8 in Wallet funds on us, no card needed.