Model Context Protocol (MCP) server for Apollo.io API integration
PaidHandshake Exchange is installed from its publisher's own source and answers where it runs, so this marketplace is not in the path of a single call. There is no address here to send one to, and a panel that pretended otherwise would be showing you an answer we made up. Install it and call it from your own client — the Installation tab has the entry for each one.
What it does
Verified agent commerce plus worker-published structured intelligence and machine payments.
Quickstart
# 1 — add it to Claude Code
claude mcp add --scope user --transport http paidhandshake-exchange-mcp https://paidhandshake.com/mcp
# 2 — ask your agent for something these tools do
# get_fulfillment_proof, get_live_inventory, get_published_intelligence_catalog and 15 more
PaidHandshake Exchange costs nothing on mcprush: there is no plan to choose here, no cap to set and nothing mcprush can bill you for.
Collected from a public index. Nobody has claimed this account, so nothing here was written by its author — claim it if it is yours.
Where are you running it?
Every route below installs the same thing and ends at the same approval screen. Nothing here runs on your machine and nothing runs on ours: this server answers at its publisher’s own address, and what you install is the connection straight to it.
This is a public server: it answers at its publisher’s own address and this marketplace is not in the path. Claude Code registers it in one command; --scope user makes it available in every project. The transport below is http, as the publisher's own manifest declares it.
claude mcp add --scope user --transport http paidhandshake-exchange-mcp https://paidhandshake.com/mcpReconnect, or start a new session, and the tools appear in the model’s tool list.
One config entry pointing straight at the publisher’s own address — this marketplace is not in the path, and nothing from this listing executes on your machine.
18 tools, with what each one reads, writes and reaches shown before you agree — the same list on every route above. Read the tool surface.
Tool surface
What the model actually sees. Descriptions are diffed on every release — see version history.
Free, read-only operational proof that PaidHandshake has active fulfillment capacity. Returns worker heartbeat/status, background inventory-production status, verified feed state, and actual completed paid-job counts; background inventory generation is not counted as customer revenue. Use this for platform/fulfillment verification, not for browsing purchasable inventory or polling one specific pai
No parameter schema on file.
Free, read-only snapshot of canonical PaidHandshake inventory feeds, including paid-eligible counts, quality holds, freshness, prices and sample URLs. Use this as the starting point for known feed inventory; use get_free_data_sample for one feed sample, get_published_intelligence_catalog for worker-published products, and search_matches for ad hoc web discovery.
No parameter schema on file.
Free, read-only catalog of structured intelligence products published by connected workers, including paid-eligible counts, prices, sample paths and x402 purchase routes. Use this to discover product names before calling get_published_intelligence_sample; use get_live_inventory instead for canonical PaidHandshake feed inventory.
No parameter schema on file.
Free, read-only sample of one worker-published intelligence product. Returns one paid-eligible structured record so an agent can inspect quality and fields before purchasing; use get_published_intelligence_catalog first when you need to discover available product names, and use get_free_data_sample for the separate inventory-feed sample path.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| product | string | yes | Exact published-intelligence product key from get_published_intelligence_catalog. Select the product whose representative paid-eligible sample you want to inspect. |
Free, read-only preview of one canonical PaidHandshake inventory feed. Returns one paid-eligible verified record when available; quality-held candidates are never substituted. Use get_live_inventory first to discover feed inventory and use get_published_intelligence_sample instead for worker-published intelligence products.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| feed | string | yes | PaidHandshake feed slug |
Read-only discovery search across current public or authorized web information when the request is not already covered by a known PaidHandshake inventory product. Returns one evidence-bearing proof result, locked ranked previews, pricing, and a reusable search_id. Use get_live_inventory/get_free_data_sample for known inventory products instead, and use quote_paid_machine_job for delegated custom r
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | yes | Natural-language discovery request, 3-600 characters. Include meaningful constraints such as location, timing, budget, product/service type, opportunity type, or other criteria needed to rank relevant |
Free, read-only pricing lookup for locked results from an existing search_matches search. Returns the currently available unlock packages and prices for the supplied search_id without creating checkout or charging the buyer. Use create_checkout only after a buyer chooses a package; use search_matches first if you do not yet have a search_id.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| search_id | string | yes | Reusable PaidHandshake search identifier returned by search_matches. Pass the exact search_id whose currently available result-unlock packages and prices you want to inspect. |
Create a Stripe Checkout URL after a PaidHandshake search when a buyer wants to authorize access to locked results. This tool only creates the checkout handoff and never silently charges the buyer. Use get_unlock_quote first if the buyer only needs pricing, and do not use this for recurring watches or machine-wallet jobs.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| search_id | string | yes | Reusable search identifier returned by search_matches for the result set being purchased. |
| package | string | yes | Result package to purchase: single unlocks one selected result, top3 unlocks the next three ranked results, and full unlocks the full available result pack. |
| result_id | integer | no | Required only when package=single. Use the result identifier from the locked preview returned by search_matches. |
Free, read-only price estimate for delegated machine work before any job is submitted or money is reserved. Use this for custom public-web research, sourcing, verification, or commercial-intelligence tasks; after accepting the quote, use submit_paid_machine_job for execution. Unknown task labels may be mapped to a compatible live-worker capability.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| task_type | string | yes | Requested work category or intent label, such as event_search, bid_search, vendor_search, grant_search, deep_research, or another descriptive task label. |
| constraints | object | no | Optional task-specific requirements such as location, date range, maximum results, verification requirements, exclusions, budget, or other execution constraints used to estimate the job. |
Free, read-only discovery of machine payment rails available or activation-ready for PaidHandshake, including Stripe-funded delegated wallets and x402 Base-USDC where active. Use this when an autonomous buyer needs to choose how to pay; use get_machine_wallet to inspect one authenticated machine's actual wallet balance and spending limits.
No parameter schema on file.
Free, read-only onboarding guide for autonomous buyers. Returns the self-service machine enrollment route plus Stripe wallet-funding, paid-job submission/polling, recurring-watch, and related machine endpoints. Use this when an agent needs to become a PaidHandshake machine buyer or discover the required API flow; use get_machine_wallet after authentication to inspect an existing machine account.
No parameter schema on file.
Authenticated paid mutation that submits a one-time machine job after the buyer has accepted the task and spending cap. PaidHandshake authorizes work only inside the machine's delegated wallet and platform spending limits, routes it to a compatible worker capability, and returns a job_id for later polling with get_paid_machine_job. Use quote_paid_machine_job first when the price is not yet known;
| Parameter | Type | Required | Notes |
|---|---|---|---|
| query | string | yes | Natural-language task to execute. Include the desired outcome and important location, timing, scope, evidence, filtering or result requirements. |
| task_type | string | no | Optional routing label describing the work category or intent. Use a descriptive capability label when known; otherwise PaidHandshake can route compatible work from the request. |
| max_price_cents | integer | yes | Maximum amount in USD cents this machine authorizes for this single job. The request remains subject to delegated wallet, per-call, daily, monthly and platform spending limits. |
| idempotency_key | string | no | Optional caller-generated stable key for the same intended paid submission. Reuse the same key when retrying an uncertain request so an accidental duplicate job can be avoided. |
| constraints | object | no | Optional structured task requirements such as location, date range, maximum results, verification requirements, exclusions, budget or other execution limits. |
Authenticated, read-only polling for a previously submitted paid machine job. Use the job_id returned by submit_paid_machine_job to retrieve its current queued, working, completed, or failed state and any available result; use quote_paid_machine_job before submission, not this tool, when you only need a price estimate.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| job_id | string | yes | PaidHandshake job identifier returned by submit_paid_machine_job. Pass the exact job_id for the authenticated machine account whose status or completed result you want to retrieve. |
Authenticated: create a new recurring paid watch for repeated research or monitoring. Each execution is a normal paid machine job bounded by max_price_cents plus the machine's delegated spending limits; cadence must be 60-10080 minutes. Use this only to create a new watch; use set_recurring_paid_watch to enable/disable an existing watch and submit_paid_machine_job for one-time work.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| name | string | no | Optional human-readable label for the watch. |
| query | string | yes | The recurring research or monitoring request to execute on each scheduled run. |
| task_type | string | no | Optional execution category used to route each run to a compatible worker; omit when the query itself is sufficient for routing. |
| constraints | object | no | Optional reusable execution constraints applied to every run, such as location, filters, maximum results, verification requirements, or exclusions. |
| cadence_minutes | integer | no | Minutes between scheduled runs. Minimum 60 minutes; maximum 10080 minutes (7 days). |
| max_price_cents | integer | yes | Maximum price in USD cents allowed for each individual run before the job is rejected rather than overspending. |
| run_immediately | boolean | no | If true, request an initial run immediately after watch creation; if false or omitted, wait for the normal cadence. |
Authenticated, read-only listing of recurring paid watches belonging to the current machine buyer. Returns the buyer's saved watches and their current identifiers, configuration and enabled status. Use this to obtain a watch_id before set_recurring_paid_watch; use create_recurring_paid_watch to create a new watch.
No parameter schema on file.
Authenticated state change for an existing recurring paid watch. Set enabled=true to allow future scheduled runs under the watch's saved cadence and spending limits, or enabled=false to stop future runs; this does not create a watch or edit its query. Use create_recurring_paid_watch to create one and list_recurring_paid_watches to obtain an existing watch_id.
| Parameter | Type | Required | Notes |
|---|---|---|---|
| watch_id | string | yes | Existing recurring watch identifier, typically returned by create_recurring_paid_watch or list_recurring_paid_watches. |
| enabled | boolean | yes | true enables future scheduled executions; false disables future scheduled executions for this watch. |
Authenticated, read-only wallet status for the current machine buyer. Returns wallet balance and delegated spending limits without moving funds. Use this before submit_paid_machine_job to verify available budget; use get_machine_payment_options to discover funding and payment rails rather than account-specific balances.
No parameter schema on file.
Free, read-only capability map for PaidHandshake Exchange. Returns available verified-data feed families, machine endpoints, payment rails, and operating rules. Use this first to understand what PaidHandshake can do; use get_machine_onboarding for enrollment and setup, and get_machine_wallet for an authenticated buyer's current balance and spending limits.
No parameter schema on file.
- Every tool — any call limit is its publisher’s, not ours
- No card, and mcprush charges nothing for it
- Runs at its publisher’s own address — this marketplace is not in the path
- Nothing to cap, because mcprush bills nothing
What counts against your monthly calls
| Tool | Unit | Calls used | Out of the allowance |
|---|
Nothing here is billable: mcprush charges nothing to install PaidHandshake Exchange or to call it, at any volume.
Two independent axes, because powerful and malicious are different questions. The grade is threat only. The capability level is blast radius, and it is never a penalty on the grade — it is priced as one subtract-only term in the score, where you can see it.
This listing is an address its publisher runs, and you connect to it directly — this marketplace is not in the path. The scanner reads packages and public source, and an address is neither. So there is no grade — not a withheld one, an unmeasured one.
Release history
This is an address its publisher runs: which release it serves is theirs to choose, so there is nothing here to pin. The history below is for reading; the current release on file is 2.9.0.
No release note was published with this version.
One review per account, from a signed-in account that does not publish this listing. Nothing else is asked — you can say what you think before you install it. Publishers can reply once per review, and a review can be edited or deleted by whoever wrote it.
Any signed-in account that does not publish PaidHandshake Exchange can review it, once — before installing it or after. A review from an account that has installed it is marked as one.
Nobody has reviewed this listing. The rating on the card is the mean of the reviews written here and nothing else, so there is no rating until somebody writes the first — which takes a signed-in account that does not publish it, and nothing else.