Terac MCP

Install

Connect the Terac MCP server to Claude, Claude Code, Cursor, VS Code, ChatGPT, or any MCP client.

This guide connects the Terac MCP server to your AI assistant so it can price, launch, and manage research on your behalf. Pick your client below; setup takes a couple of minutes.

Prerequisites

Before connecting, make sure you have:

A Terac account and organization

Sign in to Terac and create your organization if you have not already. The MCP acts on behalf of a single organization.

Connecting through the Claude or ChatGPT directory listing is the exception: if you have no organization yet, it walks you through creating one and then returns you to finish connecting.

A way to authenticate

The server accepts two methods, and you only need one:

  • API key (recommended) is a single secret you paste into your client config. It works in every client, including headless and CI environments. Generate one under your organization's Settings → API Keys. Keys start with tk_.
  • OAuth is a browser-based login with no key to manage. It is supported by clients that implement the MCP OAuth flow (Claude, Claude Code, Cursor, VS Code, ChatGPT). Your client opens a browser, you sign in, and you are done.

Not sure which to use? Start with an API key. It is the most portable option and the only one that works for automation and CI.

The Server Endpoint

Every client below connects to the same URL:

https://terac.com/api/mcp

Connect Your Client

Terac is published in the Claude directory, so there is no server URL to paste.

Open the Terac app

Go to Terac in the Claude directory, or search Claude's directory for Terac.

Connect your account

Choose to connect and complete the sign-in when prompted. If you do not have a Terac organization yet, you can create one during this step and you will be returned to finish connecting.

Pick your organization

Terac asks which organization the app should act on behalf of. That choice is remembered, and everything the app does afterwards is scoped to it.

Terac's tools are now available in the chat. Try asking: "Use Terac to get my organization context."

The same listing covers Claude Desktop and Claude on the web. Prefer to wire up the raw MCP server instead? Add https://terac.com/api/mcp as a custom connector under Settings → Connectors → Add custom connector, or use the Other (mcp-remote) tab. Both reach the same server; the directory listing is simply fewer steps.

To use an API key instead, or on a build without the connector UI, open Settings → Developer → Edit Config and bridge through mcp-remote:

claude_desktop_config.json
{
  "mcpServers": {
    "terac": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://terac.com/api/mcp",
        "--header",
        "x-api-key:tk_your_api_key"
      ]
    }
  }
}

Restart Claude Desktop after saving.

The fastest path is the CLI. Run this from any project, or add --scope user to make it available everywhere:

Add with an API key
claude mcp add --transport http terac https://terac.com/api/mcp \
  --header "x-api-key: tk_your_api_key"

Prefer browser login? Omit the header and authenticate with OAuth instead:

Add with OAuth
claude mcp add --transport http terac https://terac.com/api/mcp

Then run /mcp inside Claude Code and select terac to complete the sign-in.

To share the server with your team, add it with --scope project, which writes a committed .mcp.json:

.mcp.json
{
  "mcpServers": {
    "terac": {
      "type": "http",
      "url": "https://terac.com/api/mcp",
      "headers": {
        "x-api-key": "${TERAC_API_KEY}"
      }
    }
  }
}

Reference ${TERAC_API_KEY} so the secret stays in your environment, not in the committed file.

Create or edit ~/.cursor/mcp.json for all projects, or .cursor/mcp.json inside a single project:

~/.cursor/mcp.json
{
  "mcpServers": {
    "terac": {
      "url": "https://terac.com/api/mcp",
      "headers": {
        "x-api-key": "tk_your_api_key"
      }
    }
  }
}

To keep the key out of the file, reference an environment variable instead: "x-api-key": "${env:TERAC_API_KEY}".

Prefer OAuth? Drop the headers block and leave only the url. Cursor opens a browser to sign in the first time the server is used. Then open Settings → MCP and confirm terac shows a green dot.

With GitHub Copilot's agent mode, create .vscode/mcp.json in your workspace. The inputs block prompts for your key once and stores it securely instead of writing it to disk:

.vscode/mcp.json
{
  "inputs": [
    {
      "type": "promptString",
      "id": "terac-api-key",
      "description": "Terac API key",
      "password": true
    }
  ],
  "servers": {
    "terac": {
      "type": "http",
      "url": "https://terac.com/api/mcp",
      "headers": {
        "x-api-key": "${input:terac-api-key}"
      }
    }
  }
}

Click Start above the server entry, or run MCP: List Servers from the Command Palette. For OAuth, remove the inputs and headers blocks; VS Code opens a browser to authorize on first connect.

Terac is published in the ChatGPT app directory, so there is no server URL to paste and no developer mode to enable.

Open the Terac app

Go to Terac in the ChatGPT app directory, or search ChatGPT's apps for Terac.

Connect your account

Choose to connect and complete the sign-in when prompted. If you do not have a Terac organization yet, you can create one during this step and you will be returned to finish connecting.

Pick your organization

Terac asks which organization the app should act on behalf of. That choice is remembered, and everything the app does afterwards is scoped to it.

Terac's tools are now available in chat. Try asking: "Use Terac to get my organization context."

Prefer to wire up the raw MCP server instead, or on a plan without app support? Use the Other (mcp-remote) tab, or add https://terac.com/api/mcp as a custom connector under Settings → Apps & Connectors. Both reach the same server; the app is simply fewer steps.

Any client that can run a stdio command reaches Terac through mcp-remote, which bridges a local command to the remote HTTP server and handles OAuth:

mcp config
{
  "mcpServers": {
    "terac": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://terac.com/api/mcp"]
    }
  }
}

That uses browser-based OAuth. To pass an API key instead, append a header argument:

With an API key
{
  "mcpServers": {
    "terac": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://terac.com/api/mcp",
        "--header",
        "x-api-key:tk_your_api_key"
      ]
    }
  }
}

If your client supports native HTTP transport, skip mcp-remote and point it directly at https://terac.com/api/mcp with an x-api-key header.

Verify the Connection

Confirm the tools are live before relying on them.

Check the server connected

In Claude Code, run claude mcp list (or /mcp in a session). In Cursor, VS Code, Claude, or ChatGPT, open the MCP or connector settings and look for terac with a connected status and a non-zero tool count.

Run the first tool

Ask your assistant: "Use Terac to get my organization context." It should call terac_get_context and return your organization name, credit balance, and projects. If it does, you are connected.

Troubleshooting

What's Next?