Palmyr

Agent infra: email, phone, social, domains, VPS, wallets. Paid per-action via x402, no API key.

사용해야 할까요

품질 및 안전성

B
설명 품질
91%
스키마 완전성
90%
이름 품질
81%
오염 위험
80%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (5)

  • HIGHTool poisoning patterns detected
  • LOWTool 'email_create_inbox' description lacks action verbemail_create_inbox에서
  • LOWTool 'phone_buy_number' description lacks action verbphone_buy_number에서
  • LOWTool 'domain_register' description lacks action verbdomain_register에서
  • INFOTool description contains placeholder or incomplete textwait_for_otp에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~6,091토큰 (도구 정의)
~1.4 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 4.76%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "palmyr": {
      "url": "https://palmyr.ai/mcp"
    }
  }
}

원격 엔드포인트

https://palmyr.ai/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (33)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢palmyr_pricing

List every paid Palmyr capability and its live x402 price (USDC on Solana/Base). Free — no payment required.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢palmyr_capabilities

List the i402 capabilities Palmyr can plan and execute (the intent-resolver catalog). Free — no payment required.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢i402_plan(intent, budget_usdc, params, deadline_seconds, quality, ...)

State an intent, get a priced execution plan. The i402 orchestrator turns a natural-language outcome into an ordered list of x402 calls your agent signs and runs. Costs 0.10 USDC per plan, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "intent": {
      "type": "string",
      "description": "Natural-language outcome, e.g. 'register a .com and set up email on it'"
    },
    "budget_usdc": {
      "type": "number",
      "description": "Max total USDC to spend across the whole plan"
    },
    "params": {
      "type": "object",
      "additionalProperties": {},
      "description": "Optional structured parameters for the intent"
    },
    "deadline_seconds": {
      "type": "number"
    },
    "quality": {
      "type": "string",
      "description": "Optional quality hint, e.g. 'fast' | 'best'"
    },
    "constraints": {
      "type": "object",
      "additionalProperties": {}
    },
    "allow_budget_exceeded": {
      "type": "boolean",
      "description": "Return an executable plan even if it exceeds budget_usdc"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "intent",
    "budget_usdc"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢card_buy(amount, payment)

Buy a USA prepaid Visa card loaded with EXACTLY the requested balance ($5–$1000). Dynamic x402 price = amount + fee (3% min 0.50 USDC) — the 402 instructions carry the exact total. Returns 202 with an operation_id: poll card_status until ready (~10s), then fetch the number with card_get. US merchants only; non-reloadable (spend across transactions until depleted); max 6 cards per agent per rolling 24h (issuer limit).

입력 스키마

{
  "type": "object",
  "properties": {
    "amount": {
      "type": "number",
      "description": "USD balance to load on the card (min $5, max $1000, whole cents)"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "amount"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪card_status(card_id)

Poll a card purchase started by card_buy (free). done=true when status is 'ready' (fetch details with card_get) or 'failed' (payment auto-refunded — see refund_status).

입력 스키마

{
  "type": "object",
  "properties": {
    "card_id": {
      "type": "string",
      "description": "operation_id / card_id returned by card_buy"
    }
  },
  "required": [
    "card_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢card_get(card_id, payment)

Retrieve a prepaid card you own: full card number, CVV, expiry, live balance. Owner-verified (0.01 USDC ownership proof; the paying wallet must be the card's buyer).

입력 스키마

{
  "type": "object",
  "properties": {
    "card_id": {
      "type": "string",
      "description": "card_id returned by card_buy"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "card_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢card_list(payment)

List cards owned by the paying wallet: status, last4, balance (never full numbers — those are per-card via card_get). 0.01 USDC ownership proof.

입력 스키마

{
  "type": "object",
  "properties": {
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡email_create_inbox(name, walletAddress, solanaPublicKey, domain, payment)

Provision an email inbox at {name}@palmyr.ai (or a custom domain you own), keyed to your wallet. Costs 2.00 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Local part of the address; inbox becomes {name}@palmyr.ai"
    },
    "walletAddress": {
      "type": "string",
      "description": "Solana pubkey to enable E2E encryption (defaults to the payer)"
    },
    "solanaPublicKey": {
      "type": "string"
    },
    "domain": {
      "type": "string",
      "description": "A Namecheap-registered domain you own; auto-sets MX/SPF/DKIM"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "name"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡email_create_temp(ttl_seconds, payment)

Provision a cheap, disposable, receive-only email inbox — ideal for receiving a one-off verification or order-confirmation email during a checkout/signup flow. The address (a natural-looking handle on a dedicated inbox domain) is returned in the response. Auto-expires (default 24h). Reads return plaintext to the owning wallet (no E2E key to manage). Costs 0.50 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "ttl_seconds": {
      "type": "number",
      "description": "Lifetime in seconds before the inbox auto-expires (default 86400 = 24h, min 300, max 604800)"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡email_extend_temp(inbox_id, payment)

Rent another 7 days on a live disposable temp inbox — each call pushes expires_at exactly 7 days further (fixed, stackable, no cap). Owner-only; expired temp inboxes cannot be revived (buy a new one via email_create_temp). Costs 0.50 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "inbox_id": {
      "type": "string",
      "description": "Temp inbox id returned by email_create_temp"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "inbox_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡email_send(inbox_id, to, subject, body, html, ...)

Send an email from an inbox you own. Costs 0.08 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "inbox_id": {
      "type": "string",
      "description": "Inbox id returned by email_create_inbox"
    },
    "to": {
      "type": "string",
      "description": "Recipient email address"
    },
    "subject": {
      "type": "string"
    },
    "body": {
      "type": "string"
    },
    "html": {
      "type": "string"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "inbox_id",
    "to",
    "subject",
    "body"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢email_read_messages(inbox_id, limit, cursor, payment)

Read decrypted messages from an inbox you own (payment wallet must match the inbox). Costs 0.02 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "inbox_id": {
      "type": "string",
      "description": "Inbox id returned by email_create_inbox"
    },
    "limit": {
      "type": "number",
      "description": "Page size (default 50, max 200)"
    },
    "cursor": {
      "type": "string",
      "description": "id of the last message from the previous page"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "inbox_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪phone_buy_number(country, areaCode, payment)

Provision a real phone number (SMS + voice) for your agent. Costs 3.00 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "description": "ISO-2 country code, e.g. 'US'"
    },
    "areaCode": {
      "type": "string"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "country"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡phone_send_sms(number_id, to, body, payment)

Send an SMS from a phone number you own. Costs 0.05 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "number_id": {
      "type": "string",
      "description": "Phone number id returned by phone_buy_number"
    },
    "to": {
      "type": "string",
      "description": "Recipient number in E.164, e.g. '+15551234567'"
    },
    "body": {
      "type": "string"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "number_id",
    "to",
    "body"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢phone_read_messages(number_id, payment)

Read SMS messages received on a phone number you own. Costs 0.02 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "number_id": {
      "type": "string",
      "description": "Phone number id returned by phone_buy_number"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "number_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢wait_for_otp(number_id, timeout_s, lookback_s, pattern, payment)

Wait for an SMS verification code / OTP to arrive on a Palmyr phone number you own, and return the parsed code. Blocks up to timeout_s (default 60, max 90) checking every ~2s — one call replaces hand-rolled polling of phone_read_messages during account signups and 2FA flows. Messages that arrived up to lookback_s seconds (default 10) BEFORE the call also match, so a code that landed early is not missed — pass lookback_s=0 when reusing a number across signups so a stale code can't be re-served. Default extraction handles standalone 4-8 digit codes, 'code is/code:' tokens, and Google-style G-XXXXXX; pass pattern to override (max 256 chars; a pattern that blows its per-match budget is dropped mid-wait and pattern_timeout: true is reported). Returns { found: true, code, message_text } on a hit or { found: false, waited_s } on timeout (not an error — just call again). Costs 0.02 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "number_id": {
      "type": "string",
      "description": "Phone number id returned by phone_buy_number"
    },
    "timeout_s": {
      "type": "number",
      "description": "Seconds to block waiting (default 60, max 90)"
    },
    "lookback_s": {
      "type": "number",
      "description": "Also match messages received up to this many seconds before the call (default 10; use 0 for reused numbers)"
    },
    "pattern": {
      "type": "string",
      "description": "Custom extraction regex overriding the default OTP formats (first capture group wins, else the full match; max 256 chars)"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "number_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪phone_temp_number(ttl_seconds, payment)

Lease a cheap, instant, receive-only US phone number from a pool to receive one SMS verification code — the phone analogue of a disposable temp email inbox. $0.20 for 30 min (ttl_seconds, clamped 300–1800), returned to the pool at expiry; call wait_for_otp to catch the code. Good for one-time SMS verification and phone-gated signups. Works with major sites like Google, X, and Discord; some (Telegram, WhatsApp, OpenAI) may reject it as a VoIP number — for strict sites, buy a dedicated number with phone_buy_number. Pool numbers are recycled after the lease, so use them for one-time codes only, not long-term 2FA. Costs 0.20 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "ttl_seconds": {
      "type": "number",
      "description": "Lease lifetime in seconds before auto-expiry (default 1800 = 30min, min 300, max 1800)"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪phone_extend_temp(number_id, payment)

Rent another 30 minutes on a live disposable temp number — each call pushes expires_at 30 min further (stackable up to 24h total lease). Owner-only; expired temp leases cannot be revived (lease a fresh one via phone_temp_number). Costs 0.20 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "number_id": {
      "type": "string",
      "description": "Temp number lease id returned by phone_temp_number"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "number_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡twitter_post(account_id, cookies, text, proxy_session_id, community_id, ...)

Post a tweet from an X account you control (via injected session cookies). Costs 0.001 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "account_id": {
      "type": "string",
      "description": "Your identifier for the X account"
    },
    "cookies": {
      "type": "array",
      "description": "Non-empty array of session cookies for the X account"
    },
    "text": {
      "type": "string",
      "description": "Tweet text"
    },
    "proxy_session_id": {
      "type": "string"
    },
    "community_id": {
      "type": "string"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "account_id",
    "cookies",
    "text"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡tiktok_post(account_id, cookies, caption, video_base64, video_url, ...)

Post a video to a TikTok account you control (from video_base64 or video_url), immediately or scheduled. Async: returns an operation to poll with tiktok_operation_status. Costs 0.01 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "account_id": {
      "type": "string",
      "description": "Your identifier for the TikTok account"
    },
    "cookies": {
      "type": "array",
      "description": "Session cookies for the TikTok account. Omit for an account connected with tiktok_connect — its session lives in that account's own browser profile on the server, so there is no jar to send."
    },
    "caption": {
      "type": "string"
    },
    "video_base64": {
      "type": "string",
      "description": "Base64 video bytes — only fits tiny clips (the MCP transport caps request bodies at 1mb); prefer video_url"
    },
    "video_url": {
      "type": "string",
      "description": "Public URL to the video (preferred; no size limit)"
    },
    "proxy_session_id": {
      "type": "string"
    },
    "country": {
      "type": "string"
    },
    "privacy": {
      "type": "string"
    },
    "schedule_at": {
      "type": "string",
      "description": "ISO-8601 datetime to publish at. Uses TikTok's OWN scheduler, which accepts only ~15 minutes to ~10 days ahead — a time outside that window is rejected and refunded, and there is no way to schedule further out. Omit to post immediately. A scheduled post returns its video_id/video_url plus scheduled_at and pending_publish:true — the video exists immediately but its URL is NOT publicly reachable until it publishes."
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "account_id",
    "caption"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴tiktok_operation_status(operation_id)

Poll an async TikTok operation started by tiktok_post / tiktok_analytics / tiktok_cancel_scheduled (free). done=true when status is 'posted' / 'done' (carries video_url or the op's result) or 'failed' (payment auto-refunded — see refund_status).

입력 스키마

{
  "type": "object",
  "properties": {
    "operation_id": {
      "type": "string",
      "description": "operation_id returned by the tool that started the operation"
    }
  },
  "required": [
    "operation_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪tiktok_connect(account_id, country, proxy_session_id, tag, payment)

Attach a TikTok account by logging in ON THE SERVER, into that account's own persistent browser profile: returns a connect_url to hand a human, who scans the QR in the TikTok app. The recommended path — the browser that authenticates is the browser that later acts, and every other TikTok tool then works with `cookies` omitted (no jar to move). The paying wallet becomes the account's owner. Async: poll tiktok_connect_status with the returned token. Costs 0.01 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "account_id": {
      "type": "string",
      "description": "Your identifier for the TikTok account (1-64 chars of A-Z a-z 0-9 . _ -)"
    },
    "country": {
      "type": "string",
      "description": "ISO-2 country the login browser should exit from, e.g. 'US' — TikTok reads a scan from the wrong country as phishing"
    },
    "proxy_session_id": {
      "type": "string"
    },
    "tag": {
      "type": "string",
      "description": "Label grouping accounts (a niche, a client); tiktok_accounts and tiktok_hooks can scope to it"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "account_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪tiktok_connect_status(token)

Poll a server-side login started by tiktok_connect (free). done=true when state is 'completed' (the account is live and usable with cookies omitted) or 'failed'.

입력 스키마

{
  "type": "object",
  "properties": {
    "token": {
      "type": "string",
      "description": "Connect token returned by tiktok_connect"
    }
  },
  "required": [
    "token"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢tiktok_accounts(tag, payment)

List the TikTok accounts the paying wallet owns, with session health (status, profile_present, hours_since_success, last_error_code) — i.e. which of your accounts are still logged in. Costs 0.001 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "tag": {
      "type": "string",
      "description": "Only accounts carrying this tag"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡tiktok_analytics(account_id, cookies, proxy_session_id, country, payment)

Scrape per-post analytics (views, likes, comments, shares) for a TikTok account you control, and record a sample so tiktok_series can answer 'is it still growing'. Async: returns an operation to poll with tiktok_operation_status. Costs 0.005 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "account_id": {
      "type": "string",
      "description": "Your identifier for the TikTok account"
    },
    "cookies": {
      "type": "array",
      "description": "Session cookies for the TikTok account. Omit for an account connected with tiktok_connect — its session lives in that account's own browser profile on the server, so there is no jar to send."
    },
    "proxy_session_id": {
      "type": "string"
    },
    "country": {
      "type": "string"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "account_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡tiktok_series(account_id, video_id, hours, payment)

Read the stored per-post history for an account you own: the full time series for one video (video_id), per-video growth over a window (hours), or the latest sample per video (neither). Samples come from tiktok_analytics runs, so history exists only for what you have scraped. Costs 0.001 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "account_id": {
      "type": "string",
      "description": "Your identifier for the TikTok account"
    },
    "video_id": {
      "type": "string",
      "description": "Return the full sample series for this one video"
    },
    "hours": {
      "type": "number",
      "description": "Return per-video growth over the last N hours"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "account_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢tiktok_hooks(account_id, tag, niche, caption, maturity_days, ...)

Which caption openings actually earn views. Pass account_id or tag to measure YOUR accounts against their own median (0.001 USDC). Pass niche to report what is working in that niche across TikTok, needing no posting history — the answer for a brand-new account (0.05 USDC; tiktok_niches lists them, free). The two are never blended. Pass caption to classify a draft before posting. Paid per-action via x402 — the 402 challenge carries the exact price for the arguments you sent.

입력 스키마

{
  "type": "object",
  "properties": {
    "account_id": {
      "type": "string",
      "description": "Measure this account you own (0.001 USDC)"
    },
    "tag": {
      "type": "string",
      "description": "Pool every account you own carrying this tag (0.001 USDC)"
    },
    "niche": {
      "type": "string",
      "description": "Report the niche across TikTok — any word, resolved to the nearest known niche (0.05 USDC)"
    },
    "caption": {
      "type": "string",
      "description": "Classify this draft caption against the patterns in scope instead of returning the full report"
    },
    "maturity_days": {
      "type": "number",
      "description": "Only count posts at least this old, so young posts don't drag the median"
    },
    "recency_days": {
      "type": "number",
      "description": "Widen or narrow the recency window (hooks decay; more sample, staler signal)"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢tiktok_niches

List the niches tiktok_hooks can report on, with how fresh each corpus is. Free — an agent should not pay to learn what it may ask for.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢tiktok_scheduled(account_id, include_done, payment)

List the posts you have queued with tiktok_post(schedule_at), and whether each is still pending, due, or confirmed published. Palmyr's own record — TikTok exposes no way to read pending posts back, so edits made directly in TikTok Studio are invisible to it. Costs 0.001 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "account_id": {
      "type": "string",
      "description": "Only posts for this account"
    },
    "include_done": {
      "type": "boolean",
      "description": "Also return posts already published or cancelled"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴tiktok_cancel_scheduled(operation_id, account_id, cookies, proxy_session_id, country, ...)

Cancel a post queued with tiktok_post(schedule_at). TikTok has no 'unschedule', so this deletes the held video — the cancellation is recorded only once that succeeded. Async: returns an operation to poll with tiktok_operation_status. Costs 0.001 USDC, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "operation_id": {
      "type": "string",
      "description": "operation_id of the scheduled post (as returned by tiktok_post / listed by tiktok_scheduled)"
    },
    "account_id": {
      "type": "string",
      "description": "Your identifier for the TikTok account holding the post"
    },
    "cookies": {
      "type": "array",
      "description": "Session cookies for the TikTok account. Omit for an account connected with tiktok_connect — its session lives in that account's own browser profile on the server, so there is no jar to send."
    },
    "proxy_session_id": {
      "type": "string"
    },
    "country": {
      "type": "string"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "operation_id",
    "account_id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢domain_check(domain)

Check domain availability and per-TLD pricing. Pass a full domain (example.com) or a bare name to scan popular TLDs. Free — no payment required.

입력 스키마

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "description": "A full domain (example.com) or a bare name (example)"
    }
  },
  "required": [
    "domain"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪domain_register(domain, payment)

Register a domain to your wallet. Priced per TLD — the exact quote is returned in the 402 challenge, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "description": "Full domain to register, e.g. 'example.com'"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "domain"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡compute_deploy(name, serverType, image, location, install, ...)

Deploy a cloud VPS keyed to your wallet (optionally auto-installs OpenClaw/skills). Priced per server type — the exact quote is returned in the 402 challenge, paid per-action via x402.

입력 스키마

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Server name"
    },
    "serverType": {
      "type": "string",
      "description": "Hetzner server type, e.g. 'cx22'"
    },
    "image": {
      "type": "string",
      "description": "OS image (default 'ubuntu-24.04')"
    },
    "location": {
      "type": "string"
    },
    "install": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      ],
      "description": "Recipe name(s) to install, e.g. 'openclaw'"
    },
    "sshPublicKey": {
      "type": "string"
    },
    "payment": {
      "type": "string",
      "description": "base64 x402 payment payload (X-PAYMENT); omit on first call to receive payment instructions"
    }
  },
  "required": [
    "name",
    "serverType"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

권장 프롬프트

retrieve_data
Get details about [item] from Palmyr
예상 도구: card_get
fetch_info
Fetch [information type] using Palmyr
예상 도구: card_get
list_items
List all [items] available in Palmyr
예상 도구: card_list
browse_collection
Show me the [collection] from Palmyr
예상 도구: card_list
explore_workflow
List available [items], then get details for each one using Palmyr
예상 도구: card_listcard_get

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 33개
검증됨버전이 기록되지 않음도구 33개