list_account_connections,
GET /connections, or mobs account connections. Each entry includes its agents
and their repository limits or allowed domains.
Tool connections
Authorize an external service and grant its tools to agents.
Stored secrets
Save a value for agents to use in outbound HTTPS requests.
Tool connections
A tool connection lets an authorized agent discover and call tools from an external service. The agent owner completes the service’s authorization flow, and that service decides which accounts, resources, tools, and actions the connection can use. An owner can create an account connection withrequest_connection through MCP,
POST /connection-requests, or mobs connection-requests create --provider <provider>.
An owner can also pass agent_id to request_connection to grant an agent
access when authorization completes. Agents using MCP request for themselves.
The owner opens the authorization link, signs in to mob.so, and approves access with the provider.
The owner must stay signed in to the same mob.so account until authorization
finishes, including when starting the request through the CLI or MCP.
mob.so saves the completed connection to the owner’s account. Requests that
specify an agent also grant that agent access. An owner may grant an existing
connection to more owned agents.
Every agent needs an explicit grant. The same connection can serve several
owned agents, but each call remains limited by the external service’s approved
access.
Browse integrations
Review connection types, setup requirements, and available tools.
Use a connection
In-app Chat uses saved connections directly through the signed-in session. External clients use connection tools with an agent credential and an explicit grant. Owner credentials manage the saved inventory and its grants. Managed runs use the tool connections selected in their runtime configuration. A caller authenticated as the agent through MCP can list the agent’s current connections, inspect available tools, and call them. mob.so checks the current grant and connection state on each call. When you remove an agent’s grant, mob.so stops later calls from that agent. When you delete a saved connection, mob.so removes its stored credentials and stops calls from every agent that received it. The Connect page and runtime Connections panel both provide a Delete action. The owner can also usedelete_connection through
MCP or DELETE /connections/{connection_id} through the API.
For GitHub connections, use Manage on GitHub to change repository access, then
Refresh repositories to update the console’s list. refresh_connection through
MCP and POST /connections/{connection_id}/refresh through the API perform the
same refresh. Existing agent repository grants stay unchanged.
Stored secrets
The runtime configuration can store a named secret record and associate it with specific owned agents. mob.so encrypts the value and hides it after you save it. The value stays out of prompts and run history. When you remove one agent’s secret grant, grants to other agents remain. When you delete the secret, mob.so removes its stored value and all agent grants. Usedelete_secret through MCP, DELETE /secrets/{secret_id} through
the API, or mobs secrets delete <secret-id>.
Use a secret
Chat uses every saved secret throughlist_secrets and secret_request
with the signed-in session. Requests can reach public HTTPS destinations;
list_secrets reports allowed_domains: null for this account access. The
console uses GET /secrets and POST /secrets/{secret_id}/request.
Managed agents use their granted secrets through the same MCP tools or the
/runtime/secrets REST paths. The caller names the secret, an HTTPS URL,
and where the value belongs using a
{{secret}} placeholder in a header or the URL. mob.so sends the request,
replaces the placeholder with the stored value, and removes the value from
the response before the caller sees it. The value never enters the agent’s
environment.
Every grant names the domains its secret may be sent to. mob.so refuses a
secret request, and any redirect the request meets, whose hostname is not on
the grant’s list. The list matches complete hostnames, so a grant restricted
to example.com does not cover api.example.com. Granting the same secret to
the same agent again replaces the grant’s domain list. When an agent requests
a new secret, the owner names the domains on the request link.
Repository code search
CodeLens indexes repository source for code search and file reads. In-app Chat uses your saved GitHub connections through its session. Agents use their granted connections and repository limits. Usecodelens_repositories to list accessible indexes, codelens_index to
start indexing, codelens_search to find code, and codelens_read to read an
indexed file. REST provides the same operations at GET /codelens/repositories,
POST /codelens/repositories, GET /codelens/search, and GET /codelens/file.
The CLI exposes them through mobs codelens in an agent context.
Chat can delete an index with codelens_delete_index(index_id). The console
session uses DELETE /codelens/repositories/{index_id}.
This removes its stored source for every agent using it.
Owner clients manage an agent’s indexes with codelens_list_indexes,
codelens_start_index, and codelens_delete_agent_index. These operations
require ownership of the agent and its connection grant.
Indexes report their state and source commit. Search results and file reads
include the connection ID and indexed commit; pass connection_id to select
a connection when several index the same repository. Indexing runs in the
background. Check the index state before using newly indexed code.
mob.so checks connection ownership or the agent’s grant on every operation.
Revoking a connection removes access for its owner and agents. Narrowing an
agent’s repository grant removes that agent’s access to the excluded code.