xpoz-setupSet up and authenticate the Xpoz MCP server for social media intelligence. Required by all Xpoz skills. Handles server configuration, OAuth login, and connection verification with minimal user interaction.
Automatic MCP server setup and authentication for Xpoz — the social intelligence platform.
This skill is a prerequisite for all Xpoz skills. It configures the Xpoz MCP server and handles OAuth login so your agent can access Twitter, Instagram, TikTok, and Reddit data.
If you're an agent reading this, follow these steps in order. The user should not need to run any commands.
mcporter call xpoz.checkAccessKeyStatus
hasAccessKey: true → STOP. Xpoz is ready. Return to the skill that sent you here.false, or the server isn't configured → continue.which mcporter
If not found, stop and inform the user. mcporter is included with OpenClaw — if it's missing, the OpenClaw installation may be incomplete. Do not install mcporter independently. Tell the user:
"mcporter is required but not found. It's included with OpenClaw — please ensure OpenClaw is properly installed."
mcporter config add xpoz https://mcp.xpoz.ai/mcp --auth oauth
This registers Xpoz as a remote HTTP MCP server with OAuth authentication. mcporter auto-discovers the OAuth endpoints from https://mcp.xpoz.ai/.well-known/oauth-authorization-server.
If the server already exists but auth failed, skip this step.
Determine whether you're running on a local machine with a browser or a remote/headless server:
# Check for display server (Linux) or macOS
echo "DISPLAY=${DISPLAY:-unset} WAYLAND=${WAYLAND_DISPLAY:-unset} OS=$(uname)"
Local machine = any of these is true:
$DISPLAY is set (Linux with X11)$WAYLAND_DISPLAY is set (Linux with Wayland)uname returns Darwin (macOS)Remote/headless = none of the above.
Then follow the appropriate flow:
mcporter config login xpoz
mcporter opens the user's default browser, the user authorizes, the callback completes automatically. Tell the user:
"I'm connecting you to Xpoz for social media intelligence. A browser window should open — just sign in with your Google account and click Authorize. That's all you need to do!"
Then skip to Step 5.
On a headless server, mcporter config login xpoz will crash trying to open a browser. Instead, handle the OAuth flow manually:
Run this script to generate the OAuth authorization URL with PKCE:
bash "$(dirname "$0")/../xpoz-setup/scripts/oauth-remote.sh" get-url
Or if the script isn't available, build it manually:
import secrets, hashlib, base64, urllib.parse, os
os.makedirs(os.path.expanduser('~/.cache/xpoz-oauth'), exist_ok=True)
# Generate PKCE
verifier = secrets.token_urlsafe(64)
challenge = base64.urlsafe_b64encode(hashlib.sha256(verifier.encode()).digest()).rstrip(b'=').decode()
state = secrets.token_urlsafe(32)
params = {
'response_type': 'code',
'code_challenge': challenge,
'code_challenge_method': 'S256',
'redirect_uri': 'https://www.xpoz.ai/oauth/openclaw',
'state': state,
'scope': 'mcp:tools',
'resource': 'https://mcp.xpoz.ai/',
}
# Step 1: Dynamic client registration
import json, urllib.request
reg_req = urllib.request.Request(
'https://mcp.xpoz.ai/oauth/register',
data=json.dumps({
'client_name': 'OpenClaw Agent',
'redirect_uris': ['https://www.xpoz.ai/oauth/openclaw'],
'grant_types': ['authorization_code'],
'response_types': ['code'],
'token_endpoint_auth_method': 'none',
}).encode(),
headers={'Content-Type': 'application/json'},
)
reg_resp = json.loads(urllib.request.urlopen(reg_req).read())
params['client_id'] = reg_resp['client_id']
auth_url = 'https://mcp.xpoz.ai/oauth/authorize?' + urllib.parse.urlencode(params)
# Save state for later token exchange
with open(os.path.expanduser('~/.cache/xpoz-oauth/state.json'), 'w') as f:
json.dump({'verifier': verifier, 'state': state, 'client_id': reg_resp['client_id'], 'redirect_uri': params['redirect_uri']}, f)
print(auth_url)
Send the authorization URL to the user via the active chat channel with a message like:
"I need to connect to Xpoz for social media search. Please open this link and sign in with your Google account:
>
[authorization URL]
>
After you authorize, Xpoz will show you an authorization code. Just paste it back to me here!"
STOP here and wait. Do not proceed until the user replies with the authorization code. The user needs time to open the link, sign in, and authorize. Only continue once they paste the code back in chat.
The user will paste back either:
AUTH_CODE_HEREhttps://www.xpoz.ai/oauth/openclaw?code=AUTH_CODE_HERE&state=...If they pasted a URL, extract the code parameter. If they pasted a raw string, use it directly.
Run the exchange script with the code. This exchanges the code for a token and configures mcporter in one step — the token is never printed or exposed:
bash "$(dirname "$0")/../xpoz-setup/scripts/oauth-remote.sh" exchange AUTH_CODE_HERE
Expected output: OK: Xpoz configured successfully
Security notes:
~/.cache/xpoz-oauth/state.json) is automatically deleted after exchangeThen proceed to Step 5 to verify.
mcporter call xpoz.checkAccessKeyStatus
Confirm hasAccessKey: true. If not:
mcporter config login xpozSetup is complete. Go back to the skill that referenced this one and continue fulfilling the user's request. Don't make the user wait — they asked you to do something, auth was just a prerequisite.
Xpoz is a remote MCP server for social media intelligence:
Free tier available — no credit card required.
Website: xpoz.ai
Xpoz publishes a standard OAuth 2.1 authorization server metadata document:
GET https://mcp.xpoz.ai/.well-known/oauth-authorization-server
Key endpoints:
https://mcp.xpoz.ai/oauth/authorizehttps://mcp.xpoz.ai/oauth/tokenhttps://mcp.xpoz.ai/oauth/registertoken_endpoint_auth_methods_supported includes nonemcporter handles all of this automatically — you don't need to call these endpoints directly.
After setup, the mcporter config will contain:
{
"xpoz": {
"transport": "http",
"url": "https://mcp.xpoz.ai/mcp"
}
}
OAuth tokens are managed by mcporter separately from the server config.
| Problem | Solution |
|---------|----------|
| mcporter not found | Ensure OpenClaw is properly installed (mcporter is included) |
| Browser doesn't open | Headless server — capture the URL from stdout and send to user |
| "Unauthorized" after login | mcporter config login xpoz --reset |
| Auth times out | User may not have completed the browser flow — resend the URL |
| Server already exists | Skip Step 3, just run Step 4 |
| Plan | Price | Includes |
|------|-------|----------|
| Free | $0/mo | Limited searches, all platforms |
| Pro | $20/mo | Unlimited searches |
| Max | $200/mo | Unlimited + priority + bulk export |
Details: xpoz.ai
Built for ClawHub • Prerequisite for all Xpoz skills
Generated Mar 1, 2026
Marketing teams can use Xpoz to track brand mentions across Twitter, Instagram, TikTok, and Reddit in real-time. This enables quick responses to customer feedback, identification of emerging trends, and monitoring of competitor activity. It helps maintain brand reputation and engage with audiences effectively.
Agencies can leverage Xpoz to analyze influencer performance and audience engagement across multiple social platforms. By accessing data on post reach, sentiment, and follower demographics, they can optimize campaign strategies and select the right influencers for targeted marketing efforts. This ensures higher ROI and better alignment with brand goals.
Product teams can use Xpoz to gather social media insights on consumer preferences and pain points related to their industry. By analyzing discussions on platforms like Reddit and Twitter, they can identify unmet needs and validate product ideas before launch. This data-driven approach reduces development risks and enhances market fit.
Organizations can employ Xpoz to detect early signs of crises, such as negative viral content or security threats on social media. By monitoring keywords and sentiment shifts, teams can initiate rapid response protocols to mitigate damage. This is crucial for maintaining operational stability and public trust during emergencies.
Media companies can use Xpoz to analyze trending topics and audience engagement patterns across social platforms. This helps editors tailor content to current interests, schedule posts for maximum impact, and measure the effectiveness of different formats. It drives higher traffic and audience retention through data-informed decisions.
Offer a free tier with basic social media monitoring and limited data access to attract individual users and small businesses. Upsell premium tiers with advanced analytics, real-time alerts, and API access for larger enterprises. Revenue is generated through monthly or annual subscriptions, with tiered pricing based on features and data volume.
Provide API access to Xpoz's social media intelligence data for integration into third-party applications, such as CRM systems or analytics dashboards. Charge based on API call volume, data endpoints, or custom usage agreements. This model targets tech companies and developers building specialized tools that require social data feeds.
Offer a customizable, white-label version of Xpoz that agencies can rebrand and resell to their clients as part of their service packages. Include features like branded dashboards and client management tools. Revenue comes from setup fees, ongoing platform maintenance, and a percentage of agency sales, creating a scalable partnership model.
💬 Integration Tip
Ensure the user has mcporter installed via OpenClaw before setup; for remote environments, guide them through the manual OAuth flow step-by-step to avoid authentication errors.
Fetch and read transcripts from YouTube videos. Use when you need to summarize a video, answer questions about its content, or extract information from it.
Fetch and summarize YouTube video transcripts. Use when asked to summarize, transcribe, or extract content from YouTube videos. Handles transcript fetching via residential IP proxy to bypass YouTube's cloud IP blocks.
Browse, search, post, and moderate Reddit. Read-only works without auth; posting/moderation requires OAuth setup.
Interact with Twitter/X — read tweets, search, post, like, retweet, and manage your timeline.
LinkedIn automation via browser relay or cookies for messaging, profile viewing, and network actions.
Search YouTube videos, get channel info, fetch video details and transcripts using YouTube Data API v3 via MCP server or yt-dlp fallback.