Skip to main content

TheGooseForce

TheGooseForce is a Salesforce extension for Goose that makes any Salesforce user a Salesforce super user!

Features

  • Salesforce API Integration: Direct connection to your Salesforce org

  • Case Management: Handle case-related operations using LLMs such as summarizing details and suggesting next actions to take

  • Knowledge Articles: Easily find related knowledge articles to your existing issues and have them summaraized via GooseForce.

  • Automated Workflows: Execute complex Salesforce operations through simple commands

  • Build and deploy custom components: Build and deploy custom components such as LWCs, Apex, and Aura cmps straight from Goose

  • Debugging: Use the Gooseforce to help you debug issues in salesforce

  • If you can dream it, Gooseforce can do it!

Prerequisites

  • Python 3.10 or higher
  • Salesforce org access
  • Goose CLI installed
  • Required Python packages (see requirements.txt)
  • Must start virtual environment before installing the extension

Installation

  1. Clone the repository:
git clone https://github.com/tnohrer/TheGooseForce.git
cd TheGooseForce

Create and activate virtual environment:

  1. Create virtual environment
python -m venv .venv

Activate virtual environment

Windows:

.venv\Scripts\activate

macOS/Linux:

source .venv/bin/activate
  1. Install required packages:
pip install -r requirements.txt
  1. Find your Python and server.py paths:
# Get Python path (make sure virtual environment is activated)
which python3

# Verify server.py location
ls -l src/thegooseforce/server.py

⚠️ Security Note: This extension currently uses direct login via username, password, and security token. Future versions will implement OAuth2 for enhanced security.

Goose Extension Setup

To add TheGooseForce to Goose:

Open Goose

  1. Click on the three dots (⋮) in the top right corner
  2. Select "Extensions"
  3. Click "Add Extension"
  4. Fill in the following details:
ID: salesforce-mcp
Name: TheGooseForce
Description: Whatever description you want to put. I suggest something funny like "The Goose is loose and it's in Salesforce"
Command: /Users/[username]/Desktop/GooseForce-main/.venv/bin/python3 /Users/[username]/Desktop/GooseForce-main/server.py

Replace [username] with your actual username Note: The command should point to the Python executable in your virtual environment and the server.py file in your installation directory. Make sure to use absolute paths.

  1. Setup the needed variables:
SALESFORCE_USERNAME: Your Salesforce username
SALESFORCE_PASSWORD: Your Salesforce password
SALESFORCE_SECURITY_TOKEN: Your Salesforce security token
SALESFORCE_INSTANCE_URL: https://test.salesforce.com 

Note: These can be changed at any time by clicking the gear icon next to the extension.

Note: https://test.salesforce.com for a sandbox or https://login.salesforce.com for a production instance.

After adding the extension:

  1. Click "Save"
  2. The extension will appear in your extensions list
  3. You can now use TheGooseForce capabilities through Goose

Troubleshooting

Common Setup Issues:

  1. Extension Not Loading
Verify paths in command are correct and absolute
Check virtual environment is activated
Ensure all requirements are installed
Check logs in Goose developer console (⌘+Option+I)
  1. Authentication Errors
Verify Salesforce credentials in .env file
Check security token is current
Ensure IP address is allowed in Salesforce
Confirm user has API access enabled
  1. Python Path Issues
Use which python3 to verify Python path
Ensure virtual environment is properly activated
Check Python version matches requirements
  1. Permission Issues
Check file permissions on server.py
Verify user has execute permissions on Python
Ensure .env file is readable
  1. Connection Issues
Check internet connectivity
Verify Salesforce org is accessible
Confirm no VPN conflicts
Check for Salesforce maintenance windows

Quick Fixes:

Restart Goose after configuration changes Delete and recreate extension if settings aren't saving Clear Goose cache if persistent issues occur Check extension logs for detailed error messages

Configuration

The extension can be configured through:

Environment variables .env file Goose extension settings

Contributing

This is an open-source project. Contributions, issues, and feature requests are welcome.

Future Enhancements

OAuth2 implementation Enhanced security features Additional Salesforce object support Expanded query capabilities

Metadata

Release files for thegooseforce 0.9.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for thegooseforce 0.9.6
File Size Uploaded Provenance Actions
thegooseforce-0.9.6.tar.gz 4.7 kB Without provenance Details for thegooseforce-0.9.6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for thegooseforce 0.9.6
File Interpreter ABI Platform Actions
thegooseforce-0.9.6-py3-none-any.whl Python 3 none any Details for thegooseforce-0.9.6-py3-none-any.whl

Total release size: 11.0 kB

Release files / thegooseforce-0.9.6.tar.gz

Download URL thegooseforce-0.9.6.tar.gz
Size 4.7 kB
Tags Source
SHA-256 checksum
How to use checksums
671836e2371f0bbf9f38617c1a9b710048754b5cea3eeed89f8fb5e5b2b2179c
BLAKE2b-256 checksum
How to use checksums
8297979b7ea3b66b3c4d3f73e1b02c25f7edc1ffb823309c516b5e642ac608bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.4

Release files / thegooseforce-0.9.6-py3-none-any.whl

Download URL thegooseforce-0.9.6-py3-none-any.whl
Size 6.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1d751054816ec11e77f49963352e4305e7992cb87bbc2b7867986d4e2db1a4a2
BLAKE2b-256 checksum
How to use checksums
f4aaff60c5713a6612a3d4b51ee1b85b2630bd1730a303f993dab71a51953d15
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.4

Security for thegooseforce 0.9.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page