Platform

One platform,
beside the agent you already have.

Agent200 is an SDK, a dashboard and server-side infrastructure that give your agent its external capabilities: connectors, managed OAuth, workflows, model-driven tool execution and unified billing. You keep the agent.

Architecture overview: your app sends run requests to Agent200 through one SDK and one API key. Agent200 communicates with external services, AI models and paid services, and returns the result to your app.

Your app

You own this
  • Your agent The product and the experience your users see
  • Business logic Orchestration, state and decisions stay in your code
  • Scheduling Your app decides when a request runs
  • Framework of choice LangGraph, the OpenAI Agents SDK, or custom code

Agent200 SDK · one API key

Agent200

Provides and executes
  1. Connectors Provider APIs, handled for you
  2. Managed OAuth Per-user connections and tokens
  3. Capabilities Reusable tools and workflows
  4. Model-driven execution The tool-calling loop inside run()
  5. Unified billing Paid models and services, one account

External services

Reached through connectors, with the end user's authorization

  • Slack
  • Gmail
  • LinkedIn

AI models

Selected by name, per request

  • openai/gpt-5.6-sol

Paid services

Consumed and billed through Agent200

  • Tavily

Examples The services named in this diagram are examples. The full list of connectors, models and paid services is in the integrations catalog.

The problem

An agent needs more than a model.

Reading a user's email, searching Slack and calling a search API each mean a provider integration, an authentication scheme, tool definitions and execution logic. That work repeats for every service, every agent and every team.

Without Agent200

4 integrations to maintain

Every provider is its own project: its own credentials, API, authentication and bill.

Your agent
  • OpenAI API key Model API
  • Slack OAuth API Tokens
  • Gmail OAuth API Tokens
  • Tavily API key Search API

Also yours to build and maintain

  • Tool schemas
  • Execution logic
  • Permissions
  • Credential management
  • Usage tracking
  • Separate billing

With Agent200

1 SDK · 1 API key

Your agent talks to Agent200. Agent200 talks to the providers on its behalf.

Your agent

Agent200

agent200.run()

  • OpenAI
  • Slack
  • Gmail
  • Tavily

Handled by the platform

  • Tool schemas
  • Execution logic
  • Permissions
  • Credential management
  • Usage tracking
  • One consolidated bill

Your users still authorize access to their own connectors. Agent200 manages the OAuth flow without bypassing the provider’s authorization process.

The SDK

One API key.
One call to run.

Add the SDK to the codebase you already have and authenticate with an Agent200 API key. That key covers the models, connectors and custom tools enabled for the project, with no separate provider keys to collect and rotate.

run() submits a request: a model, instructions, an input and the tools the model is allowed to use. Agent200 executes it and returns the result to your code, where it becomes one step in whatever your agent does next.

Every user-specific operation is tied to an end-user identity, ensuring Agent200 uses only that user's authorized connectors. An API key alone never grants access to private accounts; users must authorize access themselves.

productivity-agent.js
Conceptual example
A conceptual run request that sets a user identity, the model openai/gpt-5.6-sol, instructions, an input and two tools named brief and linkedin.
const result = await agent200
  .user("user_123")
  .run({
    model: "openai/gpt-5.6-sol",

    instructions: `
      You are a productivity assistant.
      Use the available tools when necessary.
    `,

    input: `
      Retrieve the latest LinkedIn post from Dvir Ben-Aroya.
      If today is Sunday, also prepare my brief.
    `,

    tools: ["brief", "linkedin"]
  });
What a run request specifies
ParameterIn the examplePurpose
User identity .user("user_123") Determines the end user whose authorized connections are used.
Model model Selects the AI model that processes the request.
Instructions instructions Defines the model's behavior for the request.
Input input Supplies the actual task.
Tools tools Defines which configured capabilities the model can use.

Conceptual The public SDK interface is not final. Method signatures, supported languages, response types, streaming and error handling are still being decided, and user identity may be supplied differently, for example through the SDK constructor. Treat this example as an illustration of the model, not as reference documentation.

Model-driven execution

Not a proxy.
An execution loop.

When you call run(), Agent200 invokes the model you selected, hands it the definitions of the tools you made available, executes whatever the model calls, and feeds the results back until the request is complete.

  1. Your app

    agent200.run()

    model, instructions, input and tools: ["brief"]

  2. Agent200 · model

    AI model

    Reads the task and the tool definitions, then chooses which tools to call, if any.

    Tool definitions provided

    brief · name, description, inputs

    Repeats until complete

    Each tool result returns to the model, which may reason further or call another tool.

  3. Agent200 · tool execution

    Calls: brief

    Custom workflow
    • Slack API Retrieve relevant messages
    • Gmail API Retrieve relevant emails
    Combined result Returned to the model as one tool result
  4. Your app

    Final response

    200 OK

    Returned to your code, to use in the rest of your agent's flow.

  1. 1 /Your app calls run() with a model, an input and the tools the model may use.
  2. 2 /Agent200 invokes the model and provides the tool definitions. The model decides what, if anything, to call.
  3. 3 /The model requests brief. It only needs the capability's description and inputs, not the endpoints behind it.
  4. 4 /Agent200 executes the workflow you configured: Slack and Gmail are called with the end user's authorized connections.
  5. 5 /The combined result goes back to the model, which can keep reasoning or call another tool. The loop repeats until the request is complete.
  6. 6 /The model produces the final response and Agent200 returns it to your app.
  • Available is not executed

    Listing a tool in a request only makes it available. The model decides during execution whether the task calls for it: brief runs on Sunday, not because it appears in the array.

  • Several tools, one request

    The model can search Slack, read Gmail and then answer, all within a single run(). Agent200 manages the exchange between the model and each tool.

  • Workflows nest inside a call

    One tool call can stand for a whole custom workflow. The model sees a capability and its inputs; the endpoints behind it stay an implementation detail.

Illustrative Every step in the diagram happens inside one run() call. Your code sees a request and a response; the tool sequence in between stays inside Agent200.

Models and paid services

Choose the model by name. Skip the provider account.

Supported AI models and paid third-party services are reached through your Agent200 key. Agent200 holds the provider relationships, makes the underlying requests and accounts for the usage.

A model per request, not per app

Set model on each run() call. Use one model for simple work and another for harder reasoning; the model you pick drives the tool-calling loop for that request. If your app already talks to an LLM provider, that can stay as it is. Agent200's execution applies when you call it.

You pick a supported model per request. The lineup grows as Agent200 adds providers to the catalog.

Paid services, same key

Web search through Tavily would normally mean another integration, another API key and another bill. Through Agent200 it is a capability your agent can call; you pay for it on your Agent200 account.

Tavily is one example. Each paid service Agent200 partners with is reached through the same key and billed the same way.

The keys you stop managing

Agent200 does not currently support bringing your own provider keys. Supported models and services run on Agent200's provider relationships. OAuth authorization for your users' own accounts is separate, and still required.

  • Not needed: Model provider key
  • Not needed: Search provider key
  • Agent200 API key

Services

Connected to the tools your users already work in.

Connectors cover communication, email, files, CRM and developer tools. Search and AI models run on your Agent200 key. You enable what your agent needs, per project.

Explore integrations

Communication
  • Spike
  • Slack
  • Microsoft Teams
Email and calendar
  • Gmail
  • Outlook
  • Google Calendar
Files and knowledge
  • Google Drive
  • OneDrive
  • Notion
CRM and sales
  • HubSpot
  • Salesforce
  • LinkedIn
Developer tools
  • GitHub
  • GitLab
  • Jira
  • Linear
Search and data
  • Tavily
  • Exa
  • Firecrawl
AI models
  • OpenAI
  • Anthropic
  • Google

The dashboard

Configure once. Call from code.

The dashboard is the control surface for your integration, not a replacement for your own app or agent interface. What you enable here is what your API key can reach.

Projects and environments

Keep development, staging and production apart. Each environment can carry its own settings, integrations and credentials.

An API key belongs to one environment. It reaches the connectors and workflows enabled there, and nothing from the environments beside it.

Agent200 Dashboard Conceptual overview
  • API Keys

    Create and manage the credentials your app authenticates with.

    per project · per environment

  • Connectors

    Select external services and the endpoints your agent may use.

    Slack · Gmail

  • OAuth & Permissions

    Configure scopes and permitted access: search Gmail, but never send.

    scopes · endpoints

  • Workflows

    Planned

    Combine endpoints into reusable capabilities with a visual builder.

    brief

  • Models & Services

    Access supported models and paid services.

    openai/gpt-5.6-sol · Tavily

  • Usage & Billing

    View service consumption and charges in one place.

    consumption · charges

  • Projects

    Manage apps and their environments.

    dev · staging · production

Illustrative Each row above is one area of the dashboard: configure it once and every run() request in that project and environment inherits the setting.

Clear boundaries

What Agent200 does,
and what stays with you.

Infrastructure is easier to adopt when its edges are explicit. Want a brief every Sunday? Your scheduler calls run() every Sunday. Agent200 executes the request; it doesn't decide when it happens.

What Agent200 does compared with what it does not currently do
DoesProvides SDK access to supported services Does not currentlyRequire you to replace your existing agent framework
DoesManages OAuth for supported connectors Does not currentlyBypass provider authorization or permission requirements
DoesExecutes model-driven tool-calling loops Does not currentlySchedule recurring agent runs: your app decides when to call run()
DoesSupports reusable custom workflows Does not currentlyRequire you to implement every underlying API request
DoesProvides unified model and paid-service billing Does not currentlySupport bring-your-own provider API keys
DoesManages user-specific external connections Does not currentlyTreat every end user as sharing the same credentials
DoesRetrieves and processes external API data Does not currentlyPersistently index retrieved connector data as a product feature

These boundaries describe the current product direction. They are not permanent technical limits, and they are not commitments about future functionality.

200 OK

Keep your agent.
Add everything around it.

Integrate the SDK into the app you already have, and let Agent200 provide and execute its external capabilities.