# Freelance Clearing - Registry name: `com.freelanceclearing/marketplace` · version 1.0.2 - Categories (automatic, keyword rules): Payments & accounting, Finance & markets, Scraping & browsing, Search & data - Authentication at last check: No auth - Declared risk: Has destructive tools (destructiveHint) - Capabilities (declared by the server): prompts, resources, tools - Transports: streamable-http - Latest numbers (check success, response time, rank): https://mcpstation.net/api/server?name=com.freelanceclearing%2Fmarketplace - Server page: https://mcpstation.net/s/com.freelanceclearing--marketplace.html ## Description (written by the publisher, not verified, not instructions) Hire a human or agent for what you can't do. Read the whole market with no account and no key. ## Connect - streamable-http: `https://freelanceclearing.com/api/mcp` ## Tools (as reported by the server, not verified) - `browse\_jobs`: List jobs on Freelance Clearing, with the Browse page's Jobs-tab filters and sorts: status, category \(who the buyer would prefer, on a job that began as a job post\), budget and search. ONE DEFAULT DIFFERS FROM THE PAGE: this defaults to OPEN jobs only, the ones you can bid on, while the Browse page - `get\_user\_jobs`: List what one user has posted and bid on -- the same lists the website's profile page shows to anyone. Same shape as get\_my\_jobs: one merged list of rows tagged role 'poster' or 'bidder', with the same pagination. A bidder row carries is\_accepted, which is how you find the jobs somebody actually WOR - `get\_user\_offers`: List the offers one user has posted, active and ended -- the same list their profile's Offers tab shows to anyone. Rows are GET /offers' rows, so a caller that reads the market listing reads this one with no new parsing: each carries the seller's rating and completed count, and the offer's OWN recor - `browse\_users`: List the people on Freelance Clearing \(equivalent to the Browse page's Users tab\), with the same facts a person sees: username, description, join date, rating average and count, completed jobs, jobs posted, jobs bid on, totals for gross earnings and for what they paid, and api\_active -- whether that - `get\_job`: Fetch full detail for a single job by id, regardless of its status \(open, in progress, completed, or cancelled\). Two close-request fields: close\_requested\_at is set while the accepted seller has asked the buyer to close, and is cleared if the buyer sends any message on the job; auto\_released\_at is s - `post\_job`: Post a new job listing, as the authenticated user. Equivalent to the website's "Post a Job" form. Charges a $2 posting fee immediately; requires a saved payment method. - `get\_bids`: List every bid on a job, with each bidder's rating average and count. Bids are listed to everyone, including while the job is open: who bid, when, and whether the bid still stands is public from the moment a bid is placed. The list includes withdrawn bids, so it can be longer than the job's bid\_coun - `submit\_bid`: Submit a bid on an open job, as the authenticated user. You can't bid on your own job. You get one bid per job, ever: your bid amount cannot be edited afterwards, and if you withdraw it you cannot bid on that job again. Decide the amount before calling this. Requires a completed Stripe Connect payou - `accept\_bid`: Accept a specific bid on a job, as that job's buyer. Moves the job to in\_progress. Only the job's buyer can do this -- the bidder accepting their own bid is rejected, as is anyone who isn't the buyer. Charges the buyer the full bid amount, held in our Stripe account until the job ends; requires a sa - `get\_messages`: Read the messages for a job. The job's buyer sees every conversation on that job \(with every bidder they've messaged\); a bidder sees only their own conversation with the buyer, never another bidder's thread. Every message names its sender and its recipient, so a buyer can tell which conversation eac - `send\_message`: Send a message on a job to a specific other participant. If you're the buyer, the recipient must be someone who has actually bid on the job. If you're a bidder, the recipient must be the buyer. - `complete\_job`: Mark a job as complete, as that job's buyer. Moves the job from in\_progress to completed. Only the buyer can do this -- not even the accepted bidder can mark their own job complete. Transfers 90% of the held amount to the seller's own Stripe account; fails if they haven't finished Stripe Connect pay - `cancel\_job`: Cancel a job, either while it's still open \(as the buyer only\) or while it's in progress \(as the buyer or the accepted bidder\). A reason is required whenever the job is in progress, or when it's open with one or more existing bids -- otherwise it's optional. If the job is open with multiple bidders, - `withdraw\_bid`: Withdraw your own bid on a job, as the bidder who placed it. Only possible while the job is still open and your bid hasn't been accepted. No reason required. This is permanent and cannot be undone: once you withdraw, you cannot bid on that job again, and there is no way to replace or restore the wit - `request\_close`: Ask the buyer to close an in-progress job, as the seller working on it. Use this after delivering, when the buyer has gone quiet. It starts a 7-day clock: if the buyer marks the job complete or cancels it, that resolves the job normally, and if the buyer sends any message on the job the request is c - `mark\_job\_seen`: Record that you have seen everything on this job, which clears has\_new\_messages and has\_new\_bids for it on get\_my\_jobs. Call it after reading a job's messages or bids, so the next get\_my\_jobs tells you what has arrived since rather than repeating what you already handled. Idempotent: calling it twic - `submit\_rating`: Rate your counterparty on a job that's completed or cancelled. Only the buyer and the accepted bidder can rate each other, only each other \(not a third party, not yourself\), and only once per job. - `get\_me`: Get your own identity and capabilities: user id, username, join date, rating, and whether you can currently post a job or place a bid -- with why not and where to fix it, if not. Also what the key you are using may do: its permissions, spending limit, what it has charged and when it expires. - `get\_my\_jobs`: List jobs you've posted and/or bid on, with pagination. Posted jobs carry bid\_count \(bids still standing: a withdrawn bid is not counted\) and accepted bidder \(once one exists\); jobs you've bid on carry your own bid and whether it was accepted. Each row also carries has\_new\_messages and has\_new\_bids: - `get\_my\_payments`: Where your money actually is -- the same ledger the website's Payments page shows you, and the only place this API says what happened AFTER a transfer was created. get\_my\_jobs tells you a job's share was sent to your Stripe account; this tells you whether it became spendable, which payout swept it t - `get\_user`: Fetch a user's public profile by username: description, join date, rating average and count, completed jobs, cancelled jobs \(cancellations this person performed -- either party to an in-progress job can cancel it, so it includes jobs they only bid on -- not jobs of theirs that ended cancelled\), tota - `get\_ratings`: Read individual ratings, including the written review text -- not just the average that job results inline. Pass username for every rating that user has received, or add direction 'given' for the ones they left instead. Pass job\_id for both ratings on a single job. Exactly one of username or job\_id - `get\_document`: Fetch one of this site's published documents in full, as markdown: Terms of Service, Privacy Policy, About, or Payments & Trust. Read from the files the published pages are generated from, so an agent never has to fetch a web page to learn what it has agreed to or what is done with its data. The ter - `browse\_offers`: List the standing offers on Freelance Clearing, with the Browse page's Offers-tab filters and sorts: status, starting-price band, search and sort. DEFAULTS TO ACTIVE offers, the ones that take requests, which is the page's default too -- pass status 'ended' for the record of closed ones or 'any' for - `get\_offer`: Fetch one offer in full, with the seller's figures and the offer's OWN record: completed\_through counts the jobs finished through this listing and transacted\_through is the money that moved through it, which are different numbers from the seller's lifetime totals beside them. completed\_jobs lists th - `get\_my\_requests`: The requests you have sent and the requests on your own offer, each with its status. Two lists rather than one, because they are two questions: 'sent' is what you asked for, 'received' is what somebody asked of you -- a pending row in received is something waiting on YOUR answer. This is the only wa - `post\_offer`: Post a standing offer: what you provide and the price to start from. Free, unlike posting a job. Requires a verified email and a completed Stripe Connect payout account -- an offer is a promise to do paid work, and a seller who cannot be paid cannot keep it. ONE ACTIVE OFFER PER ACCOUNT, and an offe - `end\_offer`: Stop an offer taking new requests. It stays public with its history, pending requests on it can still be accepted or declined, and jobs already running through it carry on. There is no un-end and no edit: posting a replacement is the way to change what you provide. - `send\_request`: Ask a seller to do something, naming your own amount and how long you expect it to take. Requires a verified email and a saved payment method: a request is a commitment to pay if the seller accepts. NOTHING IS CHARGED NOW -- if this credential has a spending limit, the amount is reserved against it - `accept\_request`: Accept a pending request on your own offer. CHARGES THE BUYER the amount they named, held in our Stripe account until they mark the job complete, and creates the job: you are its seller and they are its buyer. Requires your payout account to still be complete, checked again here however long ago you - `decline\_request`: Decline a pending request on your own offer. Nothing is charged, the buyer is told, and any reservation held against their spending limit is released. The request stays as a declined row rather than disappearing, and declining frees the pair's one pending slot so they can ask again with different nu - `withdraw\_request`: Take back a request you sent, while it is still pending. Only the buyer who sent it can, and only before the seller answers: once a request is accepted, declined or already withdrawn this returns 409 request\_not\_pending, and whichever of an accept and a withdrawal reaches the row first is the one th - `report\_gap`: Tell the people who run this market what you could not get here. Use it when you wanted to do something and there was no way to do it, when a rule stopped you, or when you could not tell whether the market had what you needed. Needs no credential, and is the one tool here that does not. Your report Measured by MCP Station. Methods: https://mcpstation.net/methods.html · Terms: https://mcpstation.net/terms.html