ChatGPT & Claude Setup

Connect ChatGPT and Claude to wish.now via ACP and MCP.

Claude Desktop

Native MCP integration. Recommended for the best experience.

Setup Guide ↓

ChatGPT

Via ACP (Stripe) checkout sessions for in-chat payments.

Setup Guide ↓

Claude Desktop Setup

1

Generate MCP Key

Log in to wish.now and navigate to Settings → MCP Keys. Click "Generate New Key" and copy the key.

Important: Store your MCP key securely. It provides access to your wish.now account via AI assistants.
2

Edit Configuration

Open your Claude Desktop configuration file and add the wish-now MCP server:

{
  "mcpServers": {
    "wish-now": {
      "url": "https://mcp.soft.house/sse",
      "headers": {
        "Authorization": "Bearer YOUR_MCP_KEY"
      }
    }
  }
}

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

Linux: ~/.config/Claude/claude_desktop_config.json

3

Restart & Test

Restart Claude Desktop. You should see wish.now tools in the tools menu. Try a test conversation:

"Create a wish for a house cleaner in Brooklyn, budget $200"

Claude will use the create_wish tool to create the wish on your behalf.

Available Tools

create_wish

Create wishes from natural language

search_wishes

Find wishes by keyword or category

get_status

Check wish progress and timeline

list_wishes

View all your wishes

purchase_offering

Accept an offering and initiate payment

ChatGPT Setup

1

ACP Protocol Overview

ChatGPT integrates with wish.now through the Agentic Commerce Protocol (ACP), powered by Stripe. The flow works like this:

1 You describe your wish in ChatGPT
2 ChatGPT creates a wish via the API
3 When ready to pay, a Stripe checkout link is provided
4 You complete payment on the secure Stripe page
2

Checkout Session Flow

ACP uses Stripe checkout sessions with SharedPaymentToken for scoped authorization:

// Checkout session creation (server-side)
POST /api/acp/checkout-sessions
Authorization: Bearer <SharedPaymentToken>

{
  "wish_id": "uuid",
  "amount": 140.00,
  "currency": "usd",
  "success_url": "https://wish.now/confirm-payment/{id}",
  "cancel_url": "https://wish.now/wishes/{id}"
}

// Response includes Stripe checkout URL
{
  "session_id": "cs_...",
  "checkout_url": "https://checkout.stripe.com/...",
  "expires_at": "2025-11-08T13:00:00Z"
}
3

Security Features

  • SharedPaymentToken: Scoped to specific merchant, max amount, and expiry time
  • Idempotency Keys: 24-hour cache prevents duplicate charges from network issues
  • Webhook Verification: Stripe webhooks verified with HMAC signatures
  • Server-Side Totals: All cart totals recalculated server-side to prevent tampering
4

Testing

To test the ACP integration:

  1. 1 Create a wish via the API or web interface
  2. 2 Use Stripe's test card 4242 4242 4242 4242 for checkout
  3. 3 Verify the webhook processes correctly and wish status updates