# Use TextKit in Gemini CLI

Source: https://jointextkit.com/integrations/gemini-cli
Index: https://jointextkit.com/llms.txt

Google's Gemini CLI runs MCP tools from the terminal. Connect the TextKit MCP server and the agent can send texts, verify
phone numbers, buy numbers, load contacts and run broadcasts on your account
as tool calls.

You need a TextKit account: [sign up](/signup) for a free sandbox, no card.

## Connect with sign-in

```bash
gemini mcp add --transport http textkit https://mcp.jointextkit.com
```

Gemini CLI finds the sign-in on its first call and opens it. In
`settings.json` the same server is:

```json
{
  "mcpServers": {
    "textkit": { "httpUrl": "https://mcp.jointextkit.com" }
  }
}
```

Use `httpUrl`, not `url`: in Gemini CLI, `url` means the older SSE transport.

The first time it connects, you are sent to TextKit to sign in. Approve the
connection and choose test or live data. Start with test data: every call runs
in the [sandbox](/docs/sandbox) and no real phone gets a text. Approving
creates an API key named for the app, listed on the API keys page of the
console; revoke it there to disconnect. Only an account admin can approve.

## Connect with an API key

```bash
gemini mcp add --transport http --header "Authorization: Bearer ssms_sk_test_..." textkit https://mcp.jointextkit.com
```

Use a test key (`ssms_sk_test_...`) from the API keys page of the console
to start; a live key texts real phones and bills your balance.

## Antigravity

Antigravity CLI replaced Gemini CLI for unpaid and Google One users in June
2026. It reads `~/.gemini/config/mcp_config.json` and takes `serverUrl`:

```json
{
  "mcpServers": {
    "textkit": { "serverUrl": "https://mcp.jointextkit.com" }
  }
}
```

## Things to ask

> Buy a number in area code 512 and text +15005550006 "Your order shipped."

> Import the contacts in this CSV, tag them spring-sale, and tell me how many
> have an opt-in.

> Send everyone tagged vip "Doors open at 9 on Saturday." Do a dry run first
> and show me the count and cost.

> How did yesterday's broadcast do? Show delivered, failed, replies and
> opt-outs.

Before a broadcast the agent runs a dry run and shows you the recipients,
the cost and anyone left out, and it sends only after you agree. Every tool
is one API call with the connection's key, so the key's scopes, rate limits
and send checks apply unchanged. The [MCP server docs](/docs/mcp) list every
tool.

## Building an app that texts

If you are writing code, ask the agent to add the feature with the SDK and
point it at the docs: every page is available as markdown (add `.md` to the
path). The [quickstarts](/docs/quickstarts) cover Node.js, Python and plain
HTTP, and [Verify](/docs/verify) covers phone verification in two calls.
Test keys run in the [sandbox](/docs/sandbox): send to `+15005550006` and the
message always ends `delivered`.

## Sources

The steps above follow the platform's own documentation:

- [Gemini CLI: MCP servers](https://geminicli.com/docs/tools/mcp-server/)
- [Antigravity: MCP](https://antigravity.google/docs/mcp)
