Skip to main content

Overview

Goose is an on-machine AI agent (CLI and Desktop) from Block with MCP support.

Prerequisites

Setup Methods

Goose supports two methods for adding MCP servers: Interactive Configuration (easiest) and Manual YAML Configuration (advanced).

Step 1: Run Configuration Wizard

Open your terminal and run:
goose configure
This starts an interactive configuration wizard.

Step 2: Add StackOne Extension

1

Select 'Add Extension'

When prompted, choose “Add Extension” from the menu
2

Choose Extension Type

Select “Remote Extension” (StackOne uses HTTP transport)
3

Name Your Extension

Enter a name: stackone (or any name you prefer)
4

Enter Server URL

When prompted for the URL, enter:
https://api.stackone.com/mcp
5

Configure Headers

Add the required headers:Authorization:
Basic <YOUR_BASE64_TOKEN>
x-account-id:
<YOUR_ACCOUNT_ID>
Content-Type:
application/json
Accept:
application/json,text/event-stream
6

Enable Extension

When asked if you want to enable the extension, select “Yes”

Step 3: Prepare Your Base64 Token

Before running the wizard, encode your StackOne API key:
echo -n "<stackone_api_key>" | base64
Important: Include the colon (:) after your API key before encoding.

Step 4: Verify Installation

After configuration, verify Goose has picked up the StackOne tools:
goose session
Then in the Goose session, ask:
what tools do you have?
You should see StackOne operations based on your connected accounts, such as:
  • gong_crm_search_calls
  • salesforce_list_accounts
  • slack_send_message
  • And many more provider-specific operations
To see all available integrations and operations:

Method 2: Manual YAML Configuration

Step 1: Locate Config File

Find your Goose configuration file: Linux/Mac:
~/.config/goose/config.yaml
Windows:
%APPDATA%\goose\config.yaml

Step 2: Add StackOne Configuration

Edit the config file and add under extensions:
extensions:
  stackone:
    name: stackone
    type: http
    url: https://api.stackone.com/mcp
    enabled: true
    timeout: 300
    headers:
      Authorization: "Basic <YOUR_BASE64_TOKEN>"
      x-account-id: "<YOUR_ACCOUNT_ID>"
      Content-Type: "application/json"
      Accept: "application/json,text/event-stream"
Replace:
  • <YOUR_BASE64_TOKEN> with your base64-encoded API key
  • <YOUR_ACCOUNT_ID> with your StackOne account ID

Step 3: Validate Configuration

After editing, validate your configuration:
goose info -v
This should show your StackOne extension loaded successfully.

Using StackOne with Goose

Basic Usage

Start a Goose session:
goose session
Now you can ask Goose to perform StackOne operations: Example Queries:
Search recent calls in Gong
List Salesforce accounts created this month
Send a message to our team Slack channel
Get documents from Google Drive
Goose will automatically use the appropriate StackOne tools from your connected integrations to fulfill your requests.

Running Specific Extensions

To start a session with only specific extensions:
goose session --with-extension stackone

Desktop Application

If using Goose Desktop:
  1. Open Goose Desktop application
  2. Go to SettingsExtensions
  3. Your StackOne extension should appear in the list
  4. Toggle to enable/disable
  5. Start a new session with StackOne tools available

Advanced Configuration

Multiple StackOne Accounts

To use multiple StackOne accounts (e.g., production and staging):
extensions:
  stackone-prod:
    name: stackone-prod
    type: http
    url: https://api.stackone.com/mcp
    enabled: true
    headers:
      Authorization: "Basic <PROD_BASE64_TOKEN>"
      x-account-id: "47187425466113776871"
      Content-Type: "application/json"
      Accept: "application/json,text/event-stream"

  stackone-staging:
    name: stackone-staging
    type: http
    url: https://api.stackone.com/mcp
    enabled: true
    headers:
      Authorization: "Basic <STAGING_BASE64_TOKEN>"
      x-account-id: "47275639577318980035"
      Content-Type: "application/json"
      Accept: "application/json,text/event-stream"

Environment Variables

For better security, use environment variables in your config:
extensions:
  stackone:
    name: stackone
    type: http
    url: https://api.stackone.com/mcp
    enabled: true
    headers:
      Authorization: "Basic ${STACKONE_AUTH_TOKEN}"
      x-account-id: "${STACKONE_ACCOUNT_ID}"
      Content-Type: "application/json"
      Accept: "application/json,text/event-stream"
Then set in your shell:
export STACKONE_AUTH_TOKEN="<YOUR_BASE64_TOKEN>"
export STACKONE_ACCOUNT_ID="<YOUR_ACCOUNT_ID>"

Custom Timeout

For long-running operations, increase the timeout:
extensions:
  stackone:
    timeout: 600  # 10 minutes

Example Workflows

Workflow 1: Daily Activity Report

Create a script that runs daily:
#!/bin/bash
goose session --non-interactive << EOF
Summarize activity across all our connected platforms from the last 24 hours
EOF

goose session --non-interactive << EOF
Search for mentions of "Q1 goals" across all our productivity tools
EOF

Workflow 3: Multi-System Data Correlation

goose session << EOF
Find all tickets in our support system related to users from Salesforce
EOF
Goose will automatically use multiple StackOne tools to correlate data across your connected systems.

Troubleshooting

Symptoms: StackOne tools don’t appear when asked “what tools do you have?”Solutions:
  1. Verify config file location: goose info -v
  2. Check YAML syntax (indentation matters!)
  3. Ensure extension is marked enabled: true
  4. Restart Goose after config changes
  5. Check logs: goose logs
Symptoms: “401 Unauthorized” or “403 Forbidden”Solutions:
  1. Verify base64 encoding includes colon:
    echo -n "your_api_key:" | base64
    
  2. Check API key is valid in StackOne Dashboard
  3. Confirm account ID matches your linked account
  4. Test with cURL:
    curl -X POST https://api.stackone.com/mcp \
      -H 'Authorization: Basic <TOKEN>' \
      -H 'x-account-id: <ACCOUNT_ID>' \
      -d '{"jsonrpc":"2.0","id":"1","method":"tools/list"}'
    
Symptoms: “Connection timeout” or “Request timed out”Solutions:
  1. Increase timeout in config: timeout: 600
  2. Check network connectivity
  3. Verify StackOne API status
  4. Use longer timeout for complex operations
Symptoms: MCP server connects but no tools appearSolutions:
  1. Verify you have active integrations in StackOne Dashboard
  2. Check account ID is correct
  3. Ensure API key has proper permissions
  4. Review StackOne Playground to see expected tools
Symptoms: Config file won’t load or syntax errorsSolutions:
  1. Validate YAML syntax: https://www.yamllint.com/
  2. Check indentation (use spaces, not tabs)
  3. Ensure quotes around header values
  4. Verify URL has no trailing slash
  5. Run: goose info -v to see config parsing errors

Next Steps


Additional Resources