Robokassa MCP: payment link and status
@theyahia/robokassa-mcp
A compact two-tool Robokassa MCP server: a signed payment link with a 54-FZ receipt, and invoice status checks
High risk
We rate an entry high when the tool writes to external systems, handles money, production databases or secrets, or runs arbitrary commands. The CLI installs it only with your consent.
Why this level
- The create_invoice tool builds a real payment link on the shop's behalf
- Test with ROBOKASSA_TEST before using it in production
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/theyahia-robokassa-mcpDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
This entry is high risk, so there is no one-click install. Review the code and add the config by hand.
Run in a terminal
claude mcp add --transport stdio --env 'ROBOKASSA_LOGIN=<ROBOKASSA_LOGIN value>' --env 'ROBOKASSA_PASSWORD1=<your ROBOKASSA_PASSWORD1>' --env 'ROBOKASSA_PASSWORD2=<your ROBOKASSA_PASSWORD2>' robokassa -- npx -y @theyahia/robokassa-mcpOr add to the file .mcp.json, in the project
{
"mcpServers": {
"robokassa": {
"command": "npx",
"args": [
"-y",
"@theyahia/robokassa-mcp"
],
"env": {
"ROBOKASSA_LOGIN": "<ROBOKASSA_LOGIN value>",
"ROBOKASSA_PASSWORD1": "<your ROBOKASSA_PASSWORD1>",
"ROBOKASSA_PASSWORD2": "<your ROBOKASSA_PASSWORD2>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
ROBOKASSA_LOGINrequiredROBOKASSA_PASSWORD1secret, requiredROBOKASSA_PASSWORD2secret, required
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.cursor/mcp.json, for all projects
{
"mcpServers": {
"robokassa": {
"command": "npx",
"args": [
"-y",
"@theyahia/robokassa-mcp"
],
"env": {
"ROBOKASSA_LOGIN": "<ROBOKASSA_LOGIN value>",
"ROBOKASSA_PASSWORD1": "<your ROBOKASSA_PASSWORD1>",
"ROBOKASSA_PASSWORD2": "<your ROBOKASSA_PASSWORD2>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. For a single project, put the same block into .cursor/mcp.json.
Keys and settings
ROBOKASSA_LOGINrequiredROBOKASSA_PASSWORD1secret, requiredROBOKASSA_PASSWORD2secret, required
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Run in a terminal
code --add-mcp '{"name":"robokassa","type":"stdio","command":"npx","args":["-y","@theyahia/robokassa-mcp"],"env":{"ROBOKASSA_LOGIN":"<ROBOKASSA_LOGIN value>","ROBOKASSA_PASSWORD1":"<your ROBOKASSA_PASSWORD1>","ROBOKASSA_PASSWORD2":"<your ROBOKASSA_PASSWORD2>"}}'Or add to the file .vscode/mcp.json, in the project
{
"servers": {
"robokassa": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@theyahia/robokassa-mcp"
],
"env": {
"ROBOKASSA_LOGIN": "<ROBOKASSA_LOGIN value>",
"ROBOKASSA_PASSWORD1": "<your ROBOKASSA_PASSWORD1>",
"ROBOKASSA_PASSWORD2": "<your ROBOKASSA_PASSWORD2>"
}
}
}
}If the file already exists, add the server inside the servers key.
Keys and settings
ROBOKASSA_LOGINrequiredROBOKASSA_PASSWORD1secret, requiredROBOKASSA_PASSWORD2secret, required
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Run in a terminal
codex mcp add robokassa --env 'ROBOKASSA_LOGIN=<ROBOKASSA_LOGIN value>' --env 'ROBOKASSA_PASSWORD1=<your ROBOKASSA_PASSWORD1>' --env 'ROBOKASSA_PASSWORD2=<your ROBOKASSA_PASSWORD2>' -- npx -y @theyahia/robokassa-mcpOr add to the file ~/.codex/config.toml, for all projects
[mcp_servers.robokassa]
command = "npx"
args = ["-y", "@theyahia/robokassa-mcp"]
env = { ROBOKASSA_LOGIN = "<ROBOKASSA_LOGIN value>", ROBOKASSA_PASSWORD1 = "<your ROBOKASSA_PASSWORD1>", ROBOKASSA_PASSWORD2 = "<your ROBOKASSA_PASSWORD2>" }If the file already exists, append the block to the end.
Keys and settings
ROBOKASSA_LOGINrequiredROBOKASSA_PASSWORD1secret, requiredROBOKASSA_PASSWORD2secret, required
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.gemini/settings.json, for all projects
{
"mcpServers": {
"robokassa": {
"command": "npx",
"args": [
"-y",
"@theyahia/robokassa-mcp"
],
"env": {
"ROBOKASSA_LOGIN": "<ROBOKASSA_LOGIN value>",
"ROBOKASSA_PASSWORD1": "<your ROBOKASSA_PASSWORD1>",
"ROBOKASSA_PASSWORD2": "<your ROBOKASSA_PASSWORD2>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
ROBOKASSA_LOGINrequiredROBOKASSA_PASSWORD1secret, requiredROBOKASSA_PASSWORD2secret, required
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.config/devin/mcp_config.json, for all projects
{
"mcpServers": {
"robokassa": {
"command": "npx",
"args": [
"-y",
"@theyahia/robokassa-mcp"
],
"env": {
"ROBOKASSA_LOGIN": "<ROBOKASSA_LOGIN value>",
"ROBOKASSA_PASSWORD1": "<your ROBOKASSA_PASSWORD1>",
"ROBOKASSA_PASSWORD2": "<your ROBOKASSA_PASSWORD2>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. Legacy Cascade keeps the MCP config in ~/.codeium/windsurf/mcp_config.json.
Keys and settings
ROBOKASSA_LOGINrequiredROBOKASSA_PASSWORD1secret, requiredROBOKASSA_PASSWORD2secret, required
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Formerly Windsurf.
Add to the file cline_mcp_settings.json, for all projects
{
"mcpServers": {
"robokassa": {
"command": "npx",
"args": [
"-y",
"@theyahia/robokassa-mcp"
],
"env": {
"ROBOKASSA_LOGIN": "<ROBOKASSA_LOGIN value>",
"ROBOKASSA_PASSWORD1": "<your ROBOKASSA_PASSWORD1>",
"ROBOKASSA_PASSWORD2": "<your ROBOKASSA_PASSWORD2>"
}
}
}
}If the file already exists, add the server inside the mcpServers key. Open the settings file in Cline: MCP Servers tab, Configure MCP Servers.
Keys and settings
ROBOKASSA_LOGINrequiredROBOKASSA_PASSWORD1secret, requiredROBOKASSA_PASSWORD2secret, required
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file .roo/mcp.json, in the project
{
"mcpServers": {
"robokassa": {
"command": "npx",
"args": [
"-y",
"@theyahia/robokassa-mcp"
],
"env": {
"ROBOKASSA_LOGIN": "<ROBOKASSA_LOGIN value>",
"ROBOKASSA_PASSWORD1": "<your ROBOKASSA_PASSWORD1>",
"ROBOKASSA_PASSWORD2": "<your ROBOKASSA_PASSWORD2>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
ROBOKASSA_LOGINrequiredROBOKASSA_PASSWORD1secret, requiredROBOKASSA_PASSWORD2secret, required
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
A fork of Roo Code, same .roo folders.
Add to the file opencode.json, in the project
{
"mcp": {
"robokassa": {
"type": "local",
"command": [
"npx",
"-y",
"@theyahia/robokassa-mcp"
],
"environment": {
"ROBOKASSA_LOGIN": "<ROBOKASSA_LOGIN value>",
"ROBOKASSA_PASSWORD1": "<your ROBOKASSA_PASSWORD1>",
"ROBOKASSA_PASSWORD2": "<your ROBOKASSA_PASSWORD2>"
}
}
}
}If the file already exists, add the server inside the mcp key.
Keys and settings
ROBOKASSA_LOGINrequiredROBOKASSA_PASSWORD1secret, requiredROBOKASSA_PASSWORD2secret, required
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file ~/.config/zed/settings.json, for all projects
{
"context_servers": {
"robokassa": {
"command": "npx",
"args": [
"-y",
"@theyahia/robokassa-mcp"
],
"env": {
"ROBOKASSA_LOGIN": "<ROBOKASSA_LOGIN value>",
"ROBOKASSA_PASSWORD1": "<your ROBOKASSA_PASSWORD1>",
"ROBOKASSA_PASSWORD2": "<your ROBOKASSA_PASSWORD2>"
}
}
}
}If the file already exists, add the server inside the context_servers key.
Keys and settings
ROBOKASSA_LOGINrequiredROBOKASSA_PASSWORD1secret, requiredROBOKASSA_PASSWORD2secret, required
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Add to the file .codeassistant/mcp.json, in the project
{
"mcpServers": {
"robokassa": {
"command": "npx",
"args": [
"-y",
"@theyahia/robokassa-mcp"
],
"env": {
"ROBOKASSA_LOGIN": "<ROBOKASSA_LOGIN value>",
"ROBOKASSA_PASSWORD1": "<your ROBOKASSA_PASSWORD1>",
"ROBOKASSA_PASSWORD2": "<your ROBOKASSA_PASSWORD2>"
}
}
}
}If the file already exists, add the server inside the mcpServers key.
Keys and settings
ROBOKASSA_LOGINrequiredROBOKASSA_PASSWORD1secret, requiredROBOKASSA_PASSWORD2secret, required
Replace the values in angle brackets with your own. Keys never go into install links and are not stored by us.
Get ROBOKASSA_LOGIN, ROBOKASSA_PASSWORD1 and ROBOKASSA_PASSWORD2 from the Robokassa merchant cabinet, then add the server with claude mcp add robokassa -e ROBOKASSA_LOGIN=login -e ROBOKASSA_PASSWORD1=pass1 -e ROBOKASSA_PASSWORD2=pass2 -- npx -y @theyahia/robokassa-mcp.
Other ways from the author
claude mcp add robokassa -e ROBOKASSA_LOGIN=login -e ROBOKASSA_PASSWORD1=pass1 -e ROBOKASSA_PASSWORD2=pass2 -- npx -y @theyahia/robokassa-mcpCommand from the README for Claude Code.
This is third-party code. Review the repository files before installing.
What it does
A TypeScript server provides two tools: create_invoice builds an MD5-signed payment link with an optional 54-FZ receipt, and check_invoice checks invoice status via the OpStateExt XML interface. It is published to npm as @theyahia/robokassa-mcp and runs via npx over stdio, or as an HTTP server with POST /mcp and GET /health. There is a test mode via ROBOKASSA_TEST and two ready Claude Code skills, skill-create-invoice and skill-check-payment.
Who it is for. For those who need only basic Robokassa payment acceptance: issue an invoice and check whether it was paid.
Good fit when
- You need to generate a Robokassa payment link from a chat with an agent
- You need to check whether a specific invoice was paid
- Two passwords are enough and you do not need refunds, holding or recurring payments
Not a fit when
- You need refunds, card holding, recurring charges or split payments: only invoice creation and status checks are here
- You need to verify incoming webhook signatures on your own side: the server has no tool for that
Example request
Create a payment link for a 3500-ruble course and check in five minutes whether it was paidLimitations
Only 2 tools out of the full Robokassa API, with no refunds or holding. The same codebase also lives inside the author's wwmcp monorepo alongside dozens of other Russian services; this is a separate single-package build.
How to disable. Remove the robokassa server from your MCP client settings, for example claude mcp remove robokassa.
MCP
- Transport
- stdio, http
- Authentication
- API key
| Environment variables | |
|---|---|
| ROBOKASSA_LOGIN required | Robokassa merchant login |
| ROBOKASSA_PASSWORD1 required, secret | Password 1 for the payment signature |
| ROBOKASSA_PASSWORD2 required, secret | Password 2 for the status-check signature |
| ROBOKASSA_TEST | Set to true to enable Robokassa's test mode |
Security check
- The create_invoice tool builds a real payment link on the shop's behalf
- Test with ROBOKASSA_TEST before using it in production
README in short
The short README lists the 2 tools in a table, configs for Claude Desktop, Claude Code, Cursor and Windsurf, three required environment variables and an optional test mode, running in HTTP mode with a port via a variable or a flag, and two ready Claude Code skills for creating an invoice and checking payment.
FAQ
Can I test without real payments?
Yes, setting ROBOKASSA_TEST=true switches the server into Robokassa's test mode.
How do I verify an incoming ResultURL webhook signature?
This server has no tool for that; a fuller server such as artgas1/robokassa-mcp is needed for signature verification.
Related
A set of investment research skills for Claude Code and Codex built on four investors' methodologies. It is a research tool, not investment advice
Stripe's official MCP server, plugins and skills: the agent searches the API and docs, reads and changes account data
Alpaca's official MCP server: orders for stocks, ETFs, crypto and options, position management and market data in plain language
inn-check-ru: counterparty risk traffic light
inn-check-ru
An open-source skill that checks a Russian company by tax ID across EGRUL, bailiffs, courts, bankruptcy and sanctions, and returns a dated risk verdict