---
title: "List a connector's tools"
method: GET
path: "/v1/connectors/{connectorRef}/tools"
tags: ["Connectors"]
---

# List a connector's tools

`GET /v1/connectors/{connectorRef}/tools`

## Request

- Base URL: `https://api.spacefast.com`
- URL: `https://api.spacefast.com/v1/connectors/{connectorRef}/tools`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://api.spacefast.com/v1/auth/oauth2/authorize`, token URL `https://api.spacefast.com/v1/auth/oauth2/token`; client credentials, token URL `https://api.spacefast.com/v1/auth/oauth2/token`, scopes: `connectors:read`)

Returns every tool the connector exposes with its resolved policy effect and the rule that decided it, so a caller knows the answer before it calls.

## Path parameters

- `connectorRef` string, required: Connector slug.

## Query parameters

- `limit` integer: Page size.
- `cursor` string: Opaque cursor from the previous page's `nextCursor`.
- `query` string: Free-text filter over tool name and summary.
- `effect` 'approve' | 'require_approval' | 'block': Show only tools that resolve to this effect.
- `team` string: Team id or slug to act for. Required only when the credential could act for more than one team.

## Response `200`

Response for status 200

- object
  - `$schema` string, uri: Canonical JSON Schema URL for this response body. The server also sends it in the `Link: rel="describedby"` response header.
  - `data` object[], required
    - `address` string, required: `<connectionId>/<tool>` — the one address grammar. Pass this straight to a connector run.
    - `name` string, required: Tool name within its connector.
    - `summary` string, required: One line on what the tool does, from the source spec.
    - `safety` 'read_only' | 'write' | 'destructive', required: What the tool does to the far side, read from the source spec. Not configurable.
    - `effect` 'approve' | 'require_approval' | 'block', required: What actually happens when an agent calls this, after policy resolution.
    - `decidedBy` object, nullable, required: The rule that answered for an address. One shape wherever an effect is explained.
      - `ruleId` string, required: Policy rule that decided it.
      - `pattern` string, required: The pattern that matched.
      - `owner` 'team' | 'personal', required: Whose rule it is. Team rules are a floor members cannot loosen.
    - `inputSchema` object, required: JSON Schema for the tool's arguments.
  - `pagination` object, required
    - `nextCursor` string, nullable, required: Opaque cursor for the next page; null when there are no more results.
    - `hasMore` boolean, required: Whether another page exists after this one.

## Other responses

- `default`: Problem details (RFC 9457). Any 4xx/5xx response is one `application/problem+json` document.

---

[API](https://skmtc.dev/spacefast/apis/spacefast-api.md) · [All operations](https://skmtc.dev/spacefast/apis/spacefast-api/llms.txt) · [OpenAPI document](https://skmtc.dev/spacefast/apis/spacefast-api/revisions/bd165bc7c983?raw)
