---
title: Getting Started
description: Build your first agent in 10 minutes — a people researcher with web search tools and structured output.
pageType: guide
---

import { Callout } from 'fumadocs-ui/components/callout'
import { Card, Cards } from 'fumadocs-ui/components/card'
import { Step, Steps } from 'fumadocs-ui/components/steps'
import { Video } from '@/components/ui/video'
import { Image } from '@/components/ui/image'
import { FAQ } from '@/components/ui/faq'

Build a people research agent in 10 minutes. It takes a name through a chat interface, searches the web with AI search tools, and returns structured JSON with the person's location, profession, and education.

<Image
  src="/static/getting-started/started-1.png"
  alt="The finished people research workflow"
  width={800}
  height={500}
/>

## Tutorial

<Steps>
  <Step title="Create a workflow and add an Agent">
    In the sidebar, click the **+** next to **Workflows** and name the new workflow "Getting Started". The **Start block** is already on the canvas — it's the entry point that receives your chat input.

    Drag an **Agent block** onto the canvas and configure its **Messages**:
    - **System**: "You are a people research agent. When given a person's name, use your search tools to find their location, profession, educational background, and other relevant details."
    - **User**: insert `<start.input>` so the agent reads whatever the chat receives.

    Leave the **Model** on the default (`claude-sonnet-4-6`), or pick any other.

    <div className="mx-auto w-full overflow-hidden rounded-lg">
      <Video src="getting-started/started-2.mp4" width={700} height={450} />
    </div>
  </Step>

  <Step title="Add search tools">
    In the Agent block's **Tools** section, add **Exa** and **Linkup**. The agent decides when to call them.

    <div className="mx-auto w-3/5 overflow-hidden rounded-lg">
      <Video src="getting-started/started-3.mp4" width={700} height={450} />
    </div>
  </Step>

  <Step title="Test it">
    Open the **Chat panel**, select `agent1.content` as the output to display, and send: *"John is a software engineer from San Francisco who studied Computer Science at Stanford University."*

    The agent searches, then returns what it found.

    {/* Why this callout exists: the largest funnel drop in platform data (2026-06) is created-a-workflow -> first-successful-run, 92% -> 49% — this is the stall point it targets. */}
    <Callout type="info">
    If the run doesn't go green, open the output dropdown and read what each block returned — the failure is almost always visible there. The two most common causes are a missing API key on a tool and a reference pointing at a value that isn't there. For the full method, see [tracing a failure backward](/logs-debugging).
    </Callout>

    <div className="mx-auto w-full overflow-hidden rounded-lg">
      <Video src="getting-started/started-4.mp4" width={700} height={450} />
    </div>
  </Step>

  <Step title="Add structured output">
    In the Agent block's **Response Format**, click the magic wand (✨) and prompt: *"create a schema named person, that contains location, profession, and education"*. The schema is generated for you.

    <div className="mx-auto w-full overflow-hidden rounded-lg">
      <Video src="getting-started/started-5.mp4" width={700} height={450} />
    </div>
  </Step>

  <Step title="Test the structured output">
    Back in the **Chat panel**, select the new structured output option and send: *"Sarah is a marketing manager from New York who has an MBA from Harvard Business School."*

    The agent now returns JSON with `location`, `profession`, and `education` fields — ready for any downstream block to read by name.

    <div className="mx-auto w-full overflow-hidden rounded-lg">
      <Video src="getting-started/started-6.mp4" width={700} height={450} />
    </div>
  </Step>
</Steps>

## Next

<Cards>
  <Card title="Workflows" href="/workflows">
    The full model: blocks, connections, triggers, and how runs execute.
  </Card>
  <Card title="Agent block" href="/workflows/blocks/agent">
    Everything the block you just used can do — tools, memory, skills, structured output.
  </Card>
  <Card title="Integrations" href="/integrations">
    1,000+ services your agents can act on, from Gmail to HubSpot.
  </Card>
  <Card title="Deploy it" href="/workflows/deployment">
    Ship the workflow as an API, a chat, or an MCP server.
  </Card>
</Cards>

<FAQ items={[
  { question: "How long does the getting started tutorial take?", answer: "About 10 minutes. You will have a fully working workflow by the end." },
  { question: "Do I need API keys to follow this tutorial?", answer: "No. On hosted Sim, the model and the search tools run on Sim's hosted keys, included with your plan credits. You can bring your own provider keys if you prefer." },
  { question: "Do I need coding experience to complete this tutorial?", answer: "No. The whole tutorial uses the visual builder and the chat panel — no code." },
  { question: "Can I use a different model?", answer: "Yes. The Agent block supports models from OpenAI, Anthropic, Google, Groq, Cerebras, DeepSeek, xAI, and more, plus local models through Ollama if you self-host." },
  { question: "Can I import workflows from other tools?", answer: "Not directly. But you can describe what you want to Mothership in natural language and have it build the workflow for you, which is usually faster than manual recreation." },
  { question: "What if my workflow does not produce the expected output?", answer: "Test iteratively in the Chat panel and inspect each block's output from the dropdown to pinpoint where things go wrong. The Logs page records every run, block by block, with inputs, outputs, timing, and cost." },
]} />
