Wiring tools to agents is fiddly, per-client, and easy to get wrong. Executor makes every tool, from any protocol, look the same: one name, one input schema, one output schema, so any agent can call any of them the same way.
Thousands of tools, no bloat.
Connect everything you use and Executor still shows the model a single tool. It searches your catalog and loads a tool's schema only when the code actually calls it, so the prompt never balloons.
Without Executor: 1,640 tools, about 278,800 tokens. With Executor: 1 tool, about 1,044 tokens.
"You are a helpful assistant.
Your tools are:
createIssue()
listPullRequests()
mergePullRequest()
createRelease()
addLabels()
createBranch()
getCommit()
// + 713 more GitHub tools
createCharge()
createCustomer()
createRefund()
listInvoices()
createSubscription()
capturePaymentIntent()
listPayouts()
// + 503 more Stripe tools
createIssue()
transitionIssue()
addComment()
assignIssue()
listSprints()
createProject()
searchIssues()
// + 233 more Jira tools
listIssues()
resolveIssue()
listEvents()
getProject()
muteIssue()
createRelease()
listAlerts()
// + 163 more Sentry tools
..."// the only tool your client sees: "execute"
Execute TypeScript in a sandboxed runtime with access to
configured API tools.
## Workflow
1. const { items } = await tools.search({ query });
2. const path = items[0]?.path;
3. const details = await tools.describe.tool({ path });
4. const result = await tools[path](input);
## Available connection prefixes
- github.org.main: Production GitHub
- stripe.org.main: Live Stripe account
- jira.org.main: Team Jira
- sentry.org.main: Production Sentry
The model reasons. Executor handles the rest.
One tool shape
MCP, OpenAPI, GraphQL, or a custom integration. Under the hood they all become a tool name, an input schema, and an output schema.
Call it any way
Today it is a code-mode MCP. It could just as well be the Executor CLI, a one-off script, a gen-UI dashboard, or a reusable workflow. Same tools, every surface.
Trace every call
One place to see every run and tool call. Audit any decision after the fact.
Set up once, whole team has it
Per-user credentials and shared ones. No onboarding ritual, no toggling MCPs on and off mid-task.
Destructive actions pull you back in
Executor keeps the semantics it imported: GET vs DELETE for OpenAPI, destructiveHint for MCP, mutations for GraphQL. Agents auto-run the safe stuff and ask before the rest.
Sandboxed execution
Tool calls run in an isolated JavaScript sandbox. Secrets are injected host-side at call time and never enter the sandbox heap, so the agent and model never see a raw token.
Your agent should be able to reach your company's resources in a way that isn't scary. Most setups make you choose between locked down and useless, or wide open and risky.
Executor doesn't care what you add. Once a tool is in that one shape, a name and two schemas, you can call it however you want and the same guardrails apply everywhere. That is the whole idea: make the safe path the easy path.
Pick your path.
Cloud
executor.sh/cloudHosted Executor. Auth, sync, policies, and your whole team online in five minutes. Free tier to start.
Try Cloud →
Desktop
Mac · Windows · LinuxA native app that runs entirely on your machine. Your integrations, credentials, and sessions never leave the device. MIT licensed.
CLI
npm i -g executorRun Executor as a background service and drive it from your terminal. Best for headless and server environments. MIT licensed.
Read the docs →FAQ
Where does my code run, and what touches my credentials?
Can the agent or the model ever see a raw token?
What can call Executor?
How does it know what is safe to auto-run?
Is it open source? Can I self-host?
Start free, pay as you run.
Free
For small teams getting started
- Up to 3 members
- 10,000 included executions per month
- $0.20 per 1,000 additional executions
- Unlimited integrations
Team
For growing organizations
- Unlimited members
- 250,000 included executions per month
- 5 minute execution timeout
- Join by team domain
- $0.20 per 1,000 additional executions
Enterprise
For orgs with custom needs
Everything in Team, plus
- Self-hosted or dedicated cloud deployment support
- SSO / SAML & SCIM provisioning
- Audit logs for every tool call
- Dedicated support & onboarding
- Security reviews, DPA & SOC 2 on request