-
Notifications
You must be signed in to change notification settings - Fork 78
feat: agentic payments v2 #266
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Co-authored-by: Michal Kalita <[email protected]>
commit 20e6753 Author: Apify Release Bot <[email protected]> Date: Tue Sep 9 11:41:31 2025 +0000 chore(release): Update changelog, package.json and manifest.json versions [skip ci] commit 7ef726d Author: Jakub Kopecký <[email protected]> Date: Tue Sep 9 13:40:04 2025 +0200 feat: improve actor tool output (#260) * feat: improve actor tool output * update readme * fix output tool, write test for that * add test based on Zuzka suggestion * lint * fix output response order so LLM does not lose the instructions * refactor: unify string list parsing logic * fix the tests - order of the Actor run response messages * Update src/utils/schema-generation.ts Co-authored-by: Michal Kalita <[email protected]> * address review comments * add get-actor-output tools note about when its loaded --------- Co-authored-by: Michal Kalita <[email protected]> commit 279293f Author: Michal Kalita <[email protected]> Date: Mon Sep 8 12:05:25 2025 +0200 fix: error when content type is json (#265) * fix: error when content type is json * fix: do not make json schema formatted for human readable commit 4659e03 Author: Apify Release Bot <[email protected]> Date: Thu Sep 4 12:30:50 2025 +0000 chore(release): Update changelog, package.json and manifest.json versions [skip ci]
4ee5a1c to
07a8d19
Compare
commit: |
|
@MQ37 I think it is good. It makes the public interface a bit more complicated.
I’ve created this PR but haven’t tested it yet—it was vibe-coded only!!! |
| */ | ||
| if (skyfirePayId) { | ||
| requestInterceptors.push((config) => { | ||
| const updatedConfig = { ...config }; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just copied to logic from the add user agent header and it uses this exact logic. I dont quite get what is the issue exactly here? Is there any major flaw?
Thank you for review 👍 Guys want to test that tomorrow before AH and I still need to do some changes (we made some decisions during todays meeting) so I would definitely not refactor this now - we can always refactor later. |
@jirispilka I think only API where we can safely disable is the store search since that does not really require user account. Other endpoints like get Actor, build, etc. in some cases require user account - for example when user wants to use private Actor on their own account. |
oh, make sense! I forgot about private Actors. |

Integrates Skyfire PAY tokens into the MCP server that is passed via tool input props.
Remains backwards compatible with the existing Apify token use case.
closes #263
Changes
Auth middleware
?payment=skyfireand adds boolskyfireModetorequestobject.Apify token passing
apifyTokenthroughout the whole code base the interface of the functions changes to acceptapifyClientinstead, this is requires since in the Skyfire mode the client will setskyfire-pay-idheader instead of the Apify token bearer (this is also more flexible and future proof).Tools
skyfire-pay-idinput prop into all theactortools types and thecall-actortools (only required in thecallstep).skyfire-pay-idwe return the instructions with a notice that this input is required.call-actortool descriptions and alsocall-actortoolsinfostep resultResources
Other
callActorGetDataset