Ryft MCP
The Ryft MCP server is a Model Context Protocol interface for Ryft's payments API, enabling full lifecycle management of financial resources across multiple deployment options (stdio, HTTP, AWS Lambda).
Customer Management – Create, retrieve, update, delete, and list customers; list stored payment methods.
Payment Sessions – Create, retrieve, update, capture, void, and refund (full or partial) payment sessions; continue payments after 3DS authentication; list and retrieve associated transactions.
Subscriptions – Create, retrieve, update, cancel, and list subscriptions; retrieve associated payment sessions.
Accounts – Create, retrieve, update, and verify business/individual/hosted accounts; generate authorization links and temporary account links for hosted sub-accounts.
Payment Methods – Retrieve, update billing address, and delete payment methods.
Webhooks – Create, retrieve, update, delete, and list webhook endpoints.
Persons – Create, retrieve, update, delete, and list persons associated with business accounts.
Payout Methods & Payouts – Manage payout methods (bank accounts); create, list, and retrieve payouts.
Transfers – Create, list, and retrieve transfers between accounts.
Files – Upload (Evidence, VerificationDocument, Report), retrieve, and list files.
Platform Fees – List and retrieve platform fees and their refunds.
Events – List and retrieve Ryft events with optional account scoping.
Disputes – List, retrieve, accept, or challenge disputes; add and delete evidence.
Balances – List balances by currency and list balance transactions.
Health Monitoring – Check server configuration state without exposing secrets.
Authentication is handled via environment variables, with support for optional default account scoping.
Enables serverless deployment of the Ryft MCP server to AWS Lambda for stateless MCP over HTTPS, providing a dedicated Lambda handler entrypoint, build scripts for generating deployment artifacts, and configuration support for running as a serverless function with environment variable-based authentication.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Ryft MCPlist my 10 most recent payouts"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Ryft MCP
ryft-mcp is a Model Context Protocol server for the Ryft API.
It gives MCP clients a clean stdio server for working with Ryft resources such as customers, payment sessions, subscriptions, webhooks, accounts, payouts, disputes, files, and more.
Features
stdio MCP server built with the official MCP SDK
remote Streamable HTTP entrypoint for hosted deployments
AWS Lambda handler for stateless MCP over HTTPS
Ryft API authentication via environment variables
structured Ryft API error responses
account-scoped requests with optional default account support
multipart file uploads
DELETE-with-body support for endpoints that require it
TypeScript, ESLint, unit tests, and build output ready for review or publishing
Tool Coverage
Current tool families include:
customerspaymentSessionssubscriptionsfilesaccountsaccountLinkspaymentMethodswebhookspersonspayoutMethodspayoutstransfersplatformFeeseventsdisputesbalances
Requirements
Node.js 20+
a Ryft secret key
Installation
npm installBuild the server:
npm run buildQuick Start
Run the server locally over stdio:
RYFT_SECRET_KEY=your_secret_key npm run devRun the built server:
RYFT_SECRET_KEY=your_secret_key npm startRun the hosted HTTP server locally:
RYFT_SECRET_KEY=your_secret_key PORT=8787 npm run dev:httpOptional environment variables:
RYFT_BASE_URLdefaults to the Ryft sandbox API base URL
RYFT_ACCOUNT_IDdefault
Accountheader for account-scoped operations
Health check:
RYFT_SECRET_KEY=your_secret_key node dist/index.jsHTTP health check:
curl http://127.0.0.1:8787/healthExample MCP Client Configuration
Example stdio configuration:
{
"mcpServers": {
"ryft": {
"command": "node",
"args": ["/absolute/path/to/ryft-mcp/dist/index.js"],
"env": {
"RYFT_SECRET_KEY": "your_secret_key"
}
}
}
}Example remote MCP configuration:
{
"mcpServers": {
"ryft": {
"url": "https://ryft-mcp.bkawk.com/mcp"
}
}
}Hosted Deployment
For hosted deployments, ryft-mcp now includes:
dist/http.jslocal Node HTTP server for remote MCP testing
dist/lambda.jsAWS Lambda entrypoint
dist/lambda.jsexporthandler name is
handler
The remote transport is configured as:
stateless Streamable HTTP
JSON responses enabled
no server-side MCP session persistence required
Build a Lambda zip artifact:
npm run build:lambda:zipThat produces:
.artifacts/ryft-mcp-lambda.zipThe zip includes:
dist/*package.json
Recommended Lambda settings:
Runtime:
nodejs22.xHandler:
dist/lambda.handlerArchitecture:
arm64Environment variables:
RYFT_SECRET_KEYoptional
RYFT_BASE_URLoptional
RYFT_ACCOUNT_ID
High-level AWS CLI flow:
aws lambda create-function \
--function-name ryft-mcp \
--runtime nodejs22.x \
--architectures arm64 \
--handler dist/lambda.handler \
--role arn:aws:iam::<account-id>:role/<lambda-exec-role> \
--zip-file fileb://.artifacts/ryft-mcp-lambda.zipThen place it behind either:
API Gateway HTTP API with a
POST /mcproute and optionalGET /healthLambda Function URL if you want the smallest setup
For ChatGPT-compatible remote MCP, expose the HTTPS endpoint at /mcp.
Development
Install dependencies:
npm installRun typecheck:
npm run checkRun lint:
npm run lintRun tests:
npm testBuild:
npm run buildSecurity
ryft-mcp requires API credentials to be supplied by the caller through environment variables. The server will exit immediately if RYFT_SECRET_KEY is missing.
License
MIT
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/bkawk/ryft-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server