Skill: cdermott7/locus (version 1.3.0)

--- name: locus description: Locus payment tools for AI agents. Use when asked to send payments, check wallet balances, list tokens, approve token spending, or process payment-related actions from emails. Also use for demos of Locus (YC F25) payment infrastructure — scanning emails for payment requests and initiating crypto payments via wallet. --- # Locus Payment Skill Locus connects AI agents to crypto wallets via MCP. Tools are **dynamic** — each user gets different tools based on their permission group. ## Setup (Agent-Guided) When the user asks to set up Locus, use payments, or anything payment-related — check if Locus is configured and walk them through setup interactively: ### Step 1: Check if mcporter is installed ```bash command -v mcporter || npm i -g mcporter ``` ### Step 2: Check if Locus is already configured ```bash mcporter config get locus 2>/dev/null ``` If configured, skip to **Usage**. If the user wants to reconfigure, run: ```bash mcporter config remove locus ``` ### Step 3: Ask the user for their API key Tell them: > You'll need a Locus API key to connect your wallet. Get one at **https://app.paywithlocus.com** — each key is tied to your wallet and permission group. Paste it here when you're ready. Wait for the user to provide their key. It should start with `locus_`. If it doesn't, warn them and confirm before proceeding. ### Step 4: Configure mcporter ```bash mcporter config add locus \ --url "https://mcp.paywithlocus.com/mcp" \ --header "Authorization=Bearer <API_KEY>" \ --scope home ``` ### Step 5: Verify the connection ```bash mcporter list locus ``` If tools appear, setup is complete — tell the user they're ready. If it fails, ask them to double-check their API key and try again. ### Alternative: Script-based setup Users can also run the setup script directly from the Clawdbot workspace root: ```bash bash skills/locus/scripts/setup.sh ``` ## Usage **Always discover available tools first:** ```bash mcporter list locus --schema ``` This returns all tools the user's permission group allows. Tools vary per user — do not assume which tools exist. Use the schema output to understand parameters. **Call any discovered tool:** ```bash mcporter call locus.<tool_name> param1=value1 param2=value2 ``` For array/object parameters: ```bash mcporter call locus.<tool_name> --args '{"key": "value"}' ``` ## Email → Payment Flow 1. Scan inbox for payment-related emails (invoices, bills, splits, reimbursements) 2. Identify actionable items with amounts, recipients, and context 3. Summarize findings to user 4. On user approval, execute payments via available tools 5. **Always confirm with user before sending any payment** ## Safety Rules - **Never send payments without explicit user confirmation** - Always show: recipient, token, amount, and memo before executing - Check available balance before attempting payments - Double-check recipient addresses — typos mean lost funds - Confirm large payments (>$100) with extra care

path: README.md
content: # Locus — Payment Tools for AI Agents

Locus connects your ClawdBot agent to a crypto wallet via MCP, enabling payments, balance checks, and token management.

## Quick Start

1. **Install the skill:**
   ```bash
   clawdhub install locus
   ```

2. **Run setup from your ClawdBot workspace root:**
   ```bash
   bash skills/locus/scripts/setup.sh
   ```

3. **Get your API key** at https://app.paywithlocus.com — each key is tied to your wallet and permission group.

4. **Verify it works:**
   ```bash
   mcporter list locus
   ```

That's it! Your agent can now send payments, check balances, and manage token approvals.

## Manual Setup (without script)

If you prefer to configure manually:
```bash
npm i -g mcporter    # if not installed
mcporter config add locus \
  --url "https://mcp.paywithlocus.com/mcp" \
  --header "[REDACTED_SECRET]" \
  --scope home
```

## What Your Agent Can Do

Tools vary by permission group, but typically include:
- **get_payment_context** — Budget status & whitelisted contacts
- **list_tokens** — Available tokens with balances and limits
- **send_token** — Send to wallet address, ENS name, or email
- **send_token_multi** — Batch send multiple tokens
- **approve_token** — Set ERC-20 spending allowances

## Learn More

https://paywithlocus.com


path: scripts/setup.sh
content: #!/usr/bin/env bash
# Locus MCP Setup — configures mcporter with your Locus API key
set -euo pipefail

DEFAULT_URL="https://mcp.paywithlocus.com/mcp"

echo "📍 Locus Payment Setup"
echo "======================"
echo ""

# Check mcporter
if ! command -v mcporter &>/dev/null; then
  echo "mcporter is required but not installed."
  read -rp "Install mcporter now? (Y/n): " install_mcporter
  if [[ "$install_mcporter" =~ ^[Nn]$ ]]; then
    echo "Cannot continue without mcporter. Install with: npm i -g mcporter"
    exit 1
  fi
  echo "Installing mcporter..."
  npm i -g mcporter
  echo ""
fi

# Check if already configured
if mcporter config get locus &>/dev/null 2>&1; then
  echo "⚠️  Locus is already configured in mcporter."
  echo ""
  mcporter config get locus 2>/dev/null
  echo ""
  read -rp "Reconfigure with a new API key? (y/N): " reconfigure
  if [[ ! "$reconfigure" =~ ^[Yy]$ ]]; then
    echo "Keeping existing config. Run 'mcporter list locus' to verify."
    exit 0
  fi
  mcporter config remove locus 2>/dev/null || true
  echo ""
fi

# Get API key
echo "You'll need a Locus API key to connect your wallet."
echo ""
echo "  👉 Get your key at: https://app.paywithlocus.com"
echo ""
echo "Each key is tied to your wallet and permission group."
echo ""
read -rp "Paste your API key (locus_...): " api_key

if [[ -z "$api_key" ]]; then
  echo ""
  echo "❌ No API key provided. Get one at https://app.paywithlocus.com"
  exit 1
fi

if [[ ! "$api_key" =~ ^locus_ ]]; then
  echo ""
  echo "⚠️  That doesn't look like a Locus API key (should start with 'locus_')."
  read -rp "Use it anyway? (y/N): " use_anyway
  if [[ ! "$use_anyway" =~ ^[Yy]$ ]]; then
    echo "Aborted. Get your key at https://app.paywithlocus.com"
    exit 1
  fi
fi

# Configure
echo ""
echo "Configuring mcporter..."
mcporter config add locus \
  --url "$DEFAULT_URL" \
  --header "Authorization=Bearer $api_key" \
  --scope home

echo ""
echo "✅ Locus configured! Testing connection..."
echo ""

# Test and show available tools
if mcporter list locus 2>/dev/null; then
  echo ""
  echo "🎉 Setup complete! Your agent can now use Locus payment tools."
  echo ""
  echo "Next steps:"
  echo "  • Your ClawdBot agent will automatically discover Locus tools"
  echo "  • Try asking your agent to check your wallet balance"
  echo "  • Or run: mcporter call locus.list_tokens"
else
  echo ""
  echo "❌ Connection failed. Possible issues:"
  echo "  • Invalid or expired API key"
  echo "  • Network connectivity"
  echo ""
  echo "Get a new key at https://app.paywithlocus.com"
  echo "Then re-run: bash skills/locus/scripts/setup.sh"
fi


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: suspicious | SkillSpector: suspicious (MEDIUM)