Atlas / MCP servers / theyahia / Wwmcp

WwmcpBLOCK

mcp/theyahia/wwmcp

MCP servers for Russian, CIS and non-Western APIs — 46 servers: Russia/CIS, Turkey, Gulf, Egypt, Ethiopia, Bangladesh, Latin America. Turborepo monorepo + GitHub Pages catalog.

Verdict
BLOCK
Grade
F
Trust score
49 /100
Exposed tools
200 292r · 98w · 7d
Transport
stdio · streamable-http
License
MIT
Stars
33
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

English | Русский

46 servers · 566 tools · one npm scope: [@theyahia](https://www.npmjs.com/org/theyahia) Counts come from node scripts/catalog.mjs: every server is started over stdio and asked for listTools(). Last run — 2026-09-02.

[](https://opensource.org/licenses/MIT) [](https://github.com/theYahia/WWmcp/actions/workflows/ci.yml) [](https://www.npmjs.com/org/theyahia) [](https://github.com/theYahia/WWmcp/stargazers)

MCP servers for APIs that Western catalogs skip: Russian and CIS services (1C, Wildberries, YooKassa, CDEK, hh.ru, amoCRM, MoySklad, Avito) plus payment and SMS providers in Turkey, the Gulf, Egypt, Ethiopia, Bangladesh and Latin America. They plug into Claude Desktop, Cursor, VS Code and any other MCP client.

The catalog splits in two: Russia and CIS — 39 servers, 429 tools, the bulk of it; emerging markets — 7 servers, 72 tools outside the post-Soviet space.

What is inside:

  • Shared core @theyahia/mcp-core: auth, retries, structured errors, two transports (stdio and Streamable HTTP).
  • TypeScript, Node.js >= 18, vitest tests, changesets releases, GitHub Actions CI.
  • New server: npx @theyahia/create-mcp scaffolds from servers/_template/.
Ready-made workflows for these servers: mcp-skills — e-commerce, HR, marketing, finance.

Contents

  • Quick start
  • [Servers for Russia and CIS](#servers-for-
Read from source at commit d796b4291af8OBSERVED · 2026-10-10
Advertisement
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code (npm)
claude mcp add 2gis-mcp --env TWOGIS_API_KEY=${TWOGIS_API_KEY} -- npx -y @theyahia/[email protected]
03

Exposed tools (200)

292 read · 98 write · 7 destructive. Blast radius: 7 tools can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.

ToolRiskDescription
accept_unsortedreadAccept an unsorted lead — moves it into a pipeline as a real lead. Optionally specify target pipeline, status, and responsible user.
add_blacklistwriteBlock a number so it stops receiving SMS. Idempotent — re-adding returns success.
add_commentwriteДобавить комментарий (сообщение в ленту) к элементу приложения ELMA365.
add_customerwriteРегистрация покупателя в T-Kassa для привязки карт и рекуррентных платежей. CustomerKey — уникальный ID в вашей системе.
add_notewriteAdd a note to a lead, contact, or company. Supports common notes, incoming/outgoing call logs, and service messages.
agreement_createwriteCreate a tokenized agreement (recurring billing) with a bKash customer. Returns a payment ID + redirect URL for customer consent. Use this for subscription-style billing.
agreement_queryreadQuery an existing bKash agreement by agreementID — returns agreement status and payerReference.
approve_writewriteОдобрение ОДНОЙ отложенной операции записи в 1С по значению op_hash из её предпросмотра.
authreadTwo-step payment (authorization/hold) via CloudPayments. Funds are blocked but not captured until confirmed. Use confirm to capture or void_payment to release. Supports same parameters as charge.
batch_queryreadПараллельное выполнение N запросов OData к 1С (от 1 до 50). Результат по каждому запросу
bulk_update_quantitieswriteBulk-update product or variant stock quantities by product id, variant id, or SKU. Queued; may take minutes.
buy_numberreadКупить новый телефонный номер в указанном регионе. Внимание: операция платная и списывает средства с баланса аккаунта.
calc_deliveryreadРасчёт стоимости и сроков доставки Boxberry.
calculatereadРасчёт стоимости и сроков доставки Деловыми Линиями. ID городов берите из get_cities.
calculate_tariffreadРасчёт стоимости и сроков доставки СДЭК по конкретному тарифу, маршруту и параметрам груза. Используйте для предварительной оценки перед созданием заказа. Требует код тарифа (136=склад-склад, 137=склад-дверь, 138=дверь-склад, 139=дверь-дверь). Для поиска кода города используйте get_cities.
calculate_tariff_listreadРасчёт стоимости доставки СДЭК по всем доступным тарифам для маршрута. Используйте когда нужно показать клиенту все варианты доставки с ценами и сроками, не зная заранее код тарифа.
cancel_invoicereadCancel a Fawaterak invoice that has not yet been paid.
cancel_orderwriteCancel a future-scheduled SMS order before it is dispatched.
cancel_paymentreadОтмена платежа T-Kassa до или после подтверждения. Поддерживает частичную отмену. Для возврата после списания используйте refund_payment.
capture_paymentread
cards_checkreadCheck if a card token is still valid and active in Payme. Use this before attempting a payment to avoid errors. Returns the card status and details.
cards_createwriteCreate (tokenize) a payment card for Payme. Returns a token for subsequent operations like verify, pay, and remove. Card number must be 8600-series (UzCard) or 5614-series (Humo). In sandbox mode, use expiry 03/99 (0399).
cards_removedestructiveRemove (delete) a previously tokenized card from Payme. After removal, the token becomes invalid and cannot be used for payments. This action is irreversible.
cards_verifyreadVerify a previously tokenized card with SMS code sent to the cardholder phone. This step is required before the card can be used for payments. In sandbox mode, the verification code is always 666666.
cashinwritePush money TO a customer
cashoutreadPull money FROM a customer
chargereadOne-step payment (charge) via CloudPayments. Pass card cryptogram and amount to immediately capture funds. Requires IP address and supports optional invoice ID, description, and receipt email.
charge_paymentreadРекуррентный платёж (автоплатёж) по привязанной карте через RebillId. Используйте для подписок и автоматических списаний. Требует предварительного платежа с Recurrent=Y.
chatreadГенерация текста через GigaChat. Поддерживает диалог с системным промптом.
check_invoicereadCheck the status of a Robokassa invoice by invoice number using the OpStateExt XML interface. Returns state code, result code, payment method, and client details. Signature is generated with Password2.
complete_taskwriteMark a task as completed and add a result text. The result will appear in the entity activity feed.
confirmreadConfirm an authorized payment in CloudPayments to capture the held funds. You can confirm a partial amount less than the original authorization. Requires the transaction ID from the auth step.
confirm_paymentreadПодтверждение двухстадийного платежа T-Kassa для списания удержанных средств. Можно подтвердить частичную сумму (меньше авторизованной). Сумма в рублях.
convert_currencyreadКонвертация суммы из одной валюты в другую через курс ЦБ РФ. Поддерживает все валюты ЦБ + RUB. Для просмотра доступных валют используйте get_daily_rates.
count_entitiesreadПодсчёт количества записей сущности ($inlinecount, $top=0) с необязательным отбором.
create-deal-wizardwriteСоздай сделку — guided deal creation wizard
create_adwrite
create_campaignwrite
create_cash_inwriteCreate a cash receipt order (приходный кассовый ордер). Amount in RUBLES.
create_cash_outwriteCreate a cash expense order (расходный кассовый ордер). Amount in RUBLES.
create_categorywriteCreate a new product category in a Salla store. Required: name. Optional: status, parent_id, sort_order, image.
create_companywriteCreate a new company in amoCRM. Use custom_fields_values for address, website, etc.
create_contactwriteCreate a new contact in amoCRM. Use custom_fields_values to set phone, email, and other fields.
create_counterpartywriteCreate a new counterparty. Set companyType to
create_courier_pickupwriteСоздание заявки на вызов курьера СДЭК для забора отправления. Требует UUID заказа и временной интервал. После создания можно отслеживать статус заявки через get_courier_pickup.
create_customer_orderwriteCreate a customer order in MoySklad. Requires organization (seller) and agent (buyer) meta hrefs, plus at least one line item with product href and quantity. Prices in rubles are converted to kopecks internally. Supports per-line discounts.
create_dealwriteCreate a new CRM deal in Bitrix24 with title, amount, stage, and linked contact or company. Returns the new deal ID on success. Supports all standard Bitrix24 deal fields including currency and comments.
create_demandwriteCreate a shipment (demand) to fulfill a customer order. Links to a warehouse.
create_emailwriteСоздать email-сообщение для рассылки: тема, тело, отправитель.
create_enterwriteCreate a stock enter (оприходование) — add stock into a warehouse.
create_inventorywriteCreate an inventory count (инвентаризация) for a warehouse. Positions are optional — it can be filled in later.
create_invoicewriteCreate a Robokassa payment invoice and get a payment URL with MD5 signature. Supports 54-FZ fiscal receipt items for tax compliance. Returns the payment link, invoice ID, and amount.
create_invoice_inwriteCreate a supplier invoice (счёт поставщика). Prices in RUBLES.
create_invoice_linkwriteCreate a Fawaterak invoice link (cart-style) — returns a hosted checkout URL the customer opens to pay via any enabled method (Fawry, cards, wallets, Meeza). Currency typically EGP.
create_invoice_outwriteCreate a sales invoice (счёт покупателю) with line items. Prices in RUBLES.
create_itemwriteСоздать новый элемент в приложении ELMA365.
create_leadwriteCreate a new lead (deal) in amoCRM. Requires a name. Optionally set price, pipeline, status, responsible user, and custom fields.
create_listwriteСоздать новый список рассылки.
create_losswriteCreate a stock write-off (loss / списание) from a warehouse.
create_movewriteCreate a stock transfer (move / перемещение) between two warehouses.
create_orderwriteСоздание заказа на доставку СДЭК с указанием отправителя, получателя и мест. Перед созданием рекомендуется рассчитать стоимость через calculate_tariff. После создания заказ можно отслеживать через get_order или track_shipment.
create_paymentwriteCreate a bKash tokenized payment. Returns a payment ID + redirect URL for the customer
create_payment_inwriteCreate an incoming bank payment (входящий платёж). Amount in RUBLES.
create_payment_outwriteCreate an outgoing bank payment (исходящий платёж). Amount in RUBLES.
create_payoutwrite
create_preferencewriteCreate a MercadoPago Checkout preference (a hosted checkout session). Returns
create_productwriteCreate a new product in MoySklad. Accepts name, article/SKU, description, code, prices in rubles (automatically converted to kopecks for the API), weight in grams, volume in liters, and VAT rate. The sale price is attached to the account
create_purchase_orderwriteCreate a purchase order (заказ поставщику). Prices in RUBLES.
create_purchase_returnwriteCreate a purchase return (возврат поставщику). Prices in RUBLES.
create_receiptwrite
create_recurring_paymentwrite
create_refundwrite
create_sales_returnwriteCreate a sales return (возврат покупателя). Prices in RUBLES.
create_sbp_paymentwrite
create_sbp_qrwriteСоздание QR-кода СБП для оплаты через Систему Быстрых Платежей. Поддерживает PAYLOAD (ссылка) и IMAGE (base64 PNG). Требует предварительной инициализации платежа.
create_servicewriteCreate a service (non-stock item). Sale price in RUBLES, attached to the account
create_split_paymentwrite
create_supplywriteCreate an incoming supply (purchase receipt) in MoySklad. Records goods received from a supplier into a warehouse. Requires organization and agent meta hrefs, plus line items with product hrefs and quantities. Optionally specify warehouse, incoming document number, and date.
create_taskwriteCreate a task linked to a lead, contact, or company. Set deadline (complete_till as Unix timestamp) and task type (1=Call, 2=Meeting, 3=Email).
create_userwriteCreate or update a user in GetCourse LMS. Can optionally add the user to a group and create a deal with an offer code. Returns user ID and status of group/deal operations.
create_webhookwriteПодписка на вебхуки СДЭК для получения уведомлений о смене статуса заказов (ORDER_STATUS) или готовности фото (DOWNLOAD_PHOTO). СДЭК будет отправлять POST-запросы на указанный HTTPS URL.
create_webpaymentwriteCreate an Orange Money WebPay session — returns a redirect URL where the customer authenticates with their Orange Money PIN to confirm the payment. Required: amount (in local currency XOF/XAF), order_id (unique), URL trio.
delete_blacklistdestructiveUnblock a number. Returns an error if the number is not currently on the blacklist.
delete_orderdestructiveУдаление заказа СДЭК по UUID. Работает только для заказов, ещё не переданных в курьерскую службу. После удаления заказ нельзя восстановить.
delete_productdestructivePermanently delete a product from a Salla store by product ID.
delete_webhookdestructiveУдаление подписки на вебхуки СДЭК по UUID вебхука. Используйте для отключения уведомлений или смены URL получателя (удалить старый + создать новый).
delivery_timereadРасчёт сроков доставки между двумя индексами.
describe_entityreadСписок полей сущности 1С по одной образцовой записи ($top=1). Дешевле полного $metadata, когда
embed_textreadПолучение векторных представлений (эмбеддингов) текстов через GigaChat.
execute_paymentwriteFinalize (execute) a bKash payment after the customer completes the popup flow. Required: paymentID returned by create_payment.
file_uploadwriteЗагрузка файла в GigaChat для мультимодальной обработки.
find_by_descriptionreadНечёткий поиск элементов по подстроке наименования (OData substringof по полю Description).
find_instrumentreadПоиск торгового инструмента T-Invest по тикеру, ISIN или названию компании. Возвращает FIGI — ключ инструмента в системе T-Invest. Требует TINKOFF_INVEST_TOKEN.
generate_barcodereadГенерация штрихкода (этикетки) для заказа СДЭК по UUID. Поддерживает форматы A4, A5, A6 и до 10 копий. Ссылка на PDF появится в результатах get_order.
generate_imagereadГенерация изображения через GigaChat (описание в тексте сообщения).
geocodereadConvert a text address to geographic coordinates using 2GIS geocoder.
get_accountreadGet current amoCRM account info — name, plan, users, task types, etc. Use
get_accounting_balancereadВиртуальные таблицы регистра бухгалтерии (AccountingRegister_*): Balance / Turnovers /
get_accounting_registerreadЧтение записей регистра бухгалтерии (AccountingRegister_*, например Хозрасчетный — проводки)
get_accumulation_balancereadОстатки регистра накопления через виртуальный метод OData Balance(Period=...,Condition=...). Без
get_airline_directionsreadНаправления конкретной авиакомпании с ценами. Используйте IATA-код авиакомпании (SU = Аэрофлот, S7 = S7, U6 = Уральские). Полезно при лояльности к конкретному перевозчику.
get_all_ratesreadGet all current exchange rates from the Central Bank of Uzbekistan, approximately 30 currencies. Returns currency code, name, rate per nominal in UZS, and daily change. No authentication required.
get_analyticsreadПолучение аналитики Roistat по источникам трафика за период. Метрики: визиты, заявки, выручка, ROI.
get_app_itemreadПолучить один элемент приложения ELMA365 по namespace, code и id.
get_app_itemsreadПолучить список элементов приложения ELMA365 по namespace и code (с фильтрацией и сортировкой).
get_app_schemareadПолучить схему приложения ELMA365 (коды и типы полей) по namespace и code. Используйте перед create_item/update_app_item.
get_arbitration_casesreadGet arbitration court cases by INN.
get_areasreadGet the full tree of regions and cities as
get_areas_subtreereadGet the regions/cities subtree under one area id (e.g. 113=Russia) — lighter than the full /areas tree.
get_auditreadGet the account audit/event log: who changed what and when, filtered by date range.
get_balancereadGet current Chapa account wallet balance (ETB and any other supported currencies).
get_bankruptcy_inforeadGet bankruptcy proceedings info by INN.
get_blacklistreadList blocked numbers (paginated), optionally filtered by a datetime range
get_by_keyreadПолучение одной записи 1С по её Ref_Key (GUID).
get_calendar_pricesreadКалендарь цен на авиабилеты между двумя городами — минимальная цена на каждую дату. Используйте для выбора оптимальной даты перелёта.
get_call_recordingreadПолучить запись звонка по call_id. Возвращает ссылку на аудиофайл записи и её длительность.
get_call_statusreadПроверить статус звонка по call_id из make_call. Возвращает статус и длительность разговора.
get_callsreadСписок звонков Calltouch: номер, источник, длительность, статус, UTM-метки.
get_campaign_delivery_statsreadДетальная статистика доставки кампании.
get_campaign_statusreadСтатус кампании: отправлено, доставлено, открыто, клики.
get_card_listreadПолучение списка привязанных карт покупателя T-Kassa. Возвращает CardId и маскированные номера карт для рекуррентных платежей.
get_catalogsreadЧтение данных справочников 1С через OData 3.0. Поддерживает $filter, $select, $orderby, $top,
get_categoryreadGet details of a single Salla product category by ID.
get_channelsreadЭффективность рекламных каналов: визиты, заявки, выручка, затраты, ROI по каждому каналу.
get_cheapest_monthreadСамые дешёвые авиабилеты на указанный месяц между двумя городами. Удобно для планирования — показывает минимальные цены за весь месяц.
get_citiesreadПоиск городов в справочнике СДЭК по названию, индексу или стране. Возвращает код города, регион и ФИАС. Используйте для получения city_code перед вызовом calculate_tariff или create_order.
get_commentsreadПолучить комментарии (сообщения ленты) элемента приложения ELMA365.
get_company_briefreadGet brief company report by INN (risk summary).
get_company_detailsreadGet full EGRUL extract for a company by INN.
get_config_presetreadКурированная схема типовой конфигурации 1С (БП 3.0, УТ 11, ЗУП 3.1, ERP 2): ключевые
get_constantreadЧтение значения константы 1С (Constant_*).
get_contactreadGet a single contact by ID with full details including custom fields (phone, email, etc.).
get_contactsreadList CRM contacts from Bitrix24 with optional filters by name, phone, or email. Returns contact details including phone numbers, emails, and linked company. Supports pagination with offset parameter.
get_costsreadЗатраты на рекламу по каналам с группировкой по дням/неделям/месяцам.
get_counterpartiesreadSearch counterparties (customers and suppliers) in MoySklad by name, INN (tax ID) or phone. Returns a paginated list with id, name, phone, email, INN, and company type. Use filter_inn for exact tax ID lookup. Supports offset-based pagination.
get_counterpartyreadGet full details of a counterparty by UUID. Pass raw:true for the untouched MoySklad object.
get_courier_pickupreadПолучение статуса заявки на вызов курьера СДЭК по UUID заявки. Возвращает дату, время и историю статусов заявки.
get_currency_ratereadКурс конкретной валюты к рублю с изменением за день. Для конвертации суммы используйте convert_currency. Код валюты: USD, EUR, CNY и др.
get_customerreadПолучение профиля клиента из Mindbox по email, телефону или ID.
get_customer_orderwriteGet a single customer order by UUID with expanded positions.
get_daily_ratesreadВсе курсы валют ЦБ РФ на указанную дату. Возвращает код, номинал, курс и изменение за день. Для конкретной валюты используйте get_currency_rate. Авторизация не требуется.
get_dashboardreadGet dashboard metrics (sales, orders, money) for a day/week/month. Money values are in kopecks.
get_dealsreadList CRM deals from Bitrix24 with optional filters by stage and responsible user. Returns deal ID, title, stage, amount, currency, and dates. Supports pagination with offset parameter in multiples of 50.
get_dictionariesreadGet all reference dictionaries: currencies, employment types, schedules, experience levels, vacancy labels, and more.
get_direct_routesreadТолько прямые рейсы без пересадок между двумя городами. Используйте когда клиент явно хочет лететь без пересадок.
get_directionsreadCalculate a route between two points using 2GIS routing.
get_documentreadGeneric: get a single document of any MoySklad entity type by UUID (positions expanded).
get_document_by_numberreadПоиск документа 1С по номеру. Обёртка над OData $filter. Пример: найти реализацию ТД-00123 от
get_document_linesreadЧтение табличной части документа (строки, например Товары) по Ref_Key через OData $expand. Имя
get_documentsreadЧтение документов 1С через OData 3.0. Отбор по дате, виду документа или произвольным полям.
get_employerreadGet detailed employer profile: description, industries, website, vacancy count.
get_employer_vacanciesreadList active vacancies for a specific employer.
get_entersreadList stock enter (оприходование) documents.
get_entity_auditreadGet the change history of a single entity by type and UUID.
get_filereadПолучить метаданные файла по ID.
get_financial_statementsreadGet financial statements (balance sheet, P&L) by INN.
get_historical_ratesreadGet all exchange rates from the Central Bank of Uzbekistan for a specific historical date. Returns the same format as get_all_rates but for the requested date. Date must be in YYYY-MM-DD format.
get_hotel_pricesreadЦены на конкретный отель по hotel_id из Hotellook. Возвращает актуальные тарифы от разных OTA (Booking, Ostrovok и др.).
get_industriesreadGet the tree of company industries with IDs. Use to find industry IDs for the search_vacancies
get_integrationsreadСписок подключённых интеграций проекта Roistat (CRM, аналитика, рекламные кабинеты).
get_inventoriesreadList inventory count (инвентаризация) documents.
get_invest_portfolioreadПолучение портфеля инвестиций T-Invest: акции, облигации, ETF, их стоимость и P&L. Требует TINKOFF_INVEST_TOKEN в переменных окружения.
get_invoice_datareadGet full invoice data by invoice_id — status, amount, payment_method, transaction_id, customer info.
get_invoices_outreadList sales invoices (счета покупателям) with sums in rubles.
get_item_inforeadПолная информация по объявлению Avito по item_id (статус, активные платные услуги, базовая статистика). user_id берётся из env AVITO_USER_ID если не передан.
get_key_ratereadТекущая ключевая ставка ЦБ РФ в процентах и дата, с которой она действует. Для истории изменений используйте get_key_rate_history. Авторизация не требуется.
get_key_rate_historyreadИстория изменений ключевой ставки ЦБ РФ за период: даты вступления в силу и значения. По умолчанию — последний год. Для текущей ставки используйте get_key_rate.
get_leadreadGet a single lead by ID with full details. Use
get_leadsreadСписок лидов Calltouch: заявки с сайта, формы обратной связи.
get_licensesreadGet company licenses by INN.
get_listsreadСписки рассылки UniSender: ID, название, количество подписчиков.
get_losseswriteList stock write-off (loss / списание) documents.
get_merchant_orderwriteGet a merchant order by ID — preference, payments, shipments, totals.
get_metadatareadВозвращает исходный документ $metadata базы 1С (EDMX/XML) с описанием всех сущностей, полей и
get_metroreadGet metro stations and lines with IDs for a city (city_id), or for all cities. Use to find metro IDs for the search_vacancies
get_money_reportreadGet current money balances by bank account and cash register. Balances in RUBLES.
get_moveswriteList stock transfer (move / перемещение) documents between warehouses.
get_nearest_pricesreadЦены на авиабилеты в диапазоне ±N дней вокруг указанной даты. Помогает найти дешевле, если дата гибкая (напр.
get_officesreadПоиск почтовых отделений по индексу или населённому пункту.
get_orderwriteПолучение полной информации о заказе СДЭК по UUID. Возвращает статусы, номер накладной и детали доставки. Используйте после create_order для проверки обработки заказа.
get_order_historieswriteList the status-change history (timeline) of a single Salla order.
get_order_historywriteИстория заказов Деловых Линий за период с постраничной выдачей.
get_ordersreadПолучение списка заказов Kaspi с фильтрацией по статусу и дате.
get_pagereadПолучить полную страницу Tilda (HTML с <head>, CSS, JS; ссылки на Tilda CDN). metadata_only=true — без html/css/js.
get_page_bodyreadПолучить только тело страницы Tilda (HTML без <head>; ссылки на Tilda CDN) — для быстрого чтения/preview. metadata_only=true — без html/css/js.
get_page_exportreadЭкспорт полной страницы Tilda для самостоятельного хостинга (HTML с <head> + локализованные ассеты {from,to}). metadata_only=true — без html/css/js.
get_page_export_bodyreadЭкспорт тела страницы Tilda с локализованными ассетами {from,to} (без <head>) — для вставки в свой шаблон/CMS. metadata_only=true — без html/css/js.
get_pagesreadПолучить список страниц проекта Tilda.
get_paymentreadGet full details of a MercadoPago payment by ID — status, amount, payer, refunds, fee details.
get_payment_methodsreadList all payment methods enabled on the Fawaterak account — returns id, name, key (e.g. fawry, visa, meeza), commission rate.
get_payment_statewriteПолучение текущего статуса платежа по PaymentId. Возвращает статус, сумму, OrderId и детали ошибки. Используйте для отслеживания платежа после инициализации.
get_payment_statusreadGet the status of an Orange Money WebPay session by order_id + amount + pay_token (returned by create_webpayment).
get_payoutread
get_placereadGet detailed information about a specific place by its 2GIS ID.
get_popular_directionsreadПопулярные направления из города — самые дешёвые рейсы по специальным предложениям. Полезно для вдохновения и поиска travel deals.
get_precious_metalsreadУчётные цены ЦБ РФ на золото, серебро, платину и палладий в руб./грамм. Для исторических данных укажите дату.
get_preferencereadGet a MercadoPago Checkout preference by ID — items, totals, status, redirect URLs.
get_process_instancesreadПолучить запущенные экземпляры бизнес-процесса ELMA365 по шаблону (namespace + code).
get_productreadGet a single product by its UUID. Returns name, article, code, description, all sale prices with their price types, buy price, weight, volume and last update timestamp. Prices are in rubles (converted from kopecks internally). Pass raw:true for the untouched MoySklad object.
get_product_by_skureadGet full product details from Salla by SKU code.
04

Trust audit

BLOCKgrade F · trust 49/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryFAIL
L1Static analysis of the codeFAIL
L2Instruction surface (what it tells the agent)FAIL
L3Class-specific surfaceWARN
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (1 observation(s))
Network
declared (9 observation(s))
Shell
declared (1 observation(s))
Dependencies
not all pinned
Secrets in source
none-found

Findings (25)

HIGHInventory / provenance · inv.suspicious_name · CWE-1104
packages/telemetry/src/payload.ts
payload.ts
Why it matters. member named after an attack tool
Fix. remove or justify
HIGHCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
servers/aprovodka/src/lib/write-safety.ts:491
result = await exec();
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
HIGHNetwork egress · net.tls_off · CWE-200, CWE-319
servers/salutespeech/src/client.ts:39
`Do NOT set NODE_TLS_REJECT_UNAUTHORIZED=0 in production. Docs: ` +
Why it matters. certificate verification is disabled
Fix. leave verification on
HIGHPrompt injection · prompt.hide_from_user · CWE-94, CWE-1427
servers/mercadopago/.claude/skills/refund-request/SKILL.md:37
- MercadoPago's own fee is generally not returned on a refund — do not tell the user they
Why it matters. asks the agent to act without the user's knowledge
HIGHPrompt injection · prompt.hide_from_user · CWE-94, CWE-1427
servers/vk-ads/.claude/skills/campaign-launch/SKILL.md:54
- New ads go to moderation, not straight to live. Do not tell the user the campaign is
Why it matters. asks the agent to act without the user's knowledge
MEDIUMNetwork egress · net.beacon_words · CWE-200, CWE-319
servers/chapa/src/server.ts:33
callback_url: z.string().url().optional().describe("Webhook URL for status updates"),
MEDIUMNetwork egress · net.beacon_words · CWE-200, CWE-319
servers/chapa/src/server.ts:48
if (params.callback_url) body.callback_url = params.callback_url;
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
servers/mindbox/src/index.ts:124
`http://127.0.0.1:${port}`,
MEDIUMObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
scripts/catalog.mjs:192
console.log(`\nСерверов: ${entries.length} · поднялось: ${ok.length} · tools: ${catalog.totalTools}\n`);
MEDIUMObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
scripts/catalog.mjs:200
console.log(`\nЧисла в документации разошлись (${docChanges.length} строк):`);
MEDIUMObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
scripts/catalog.mjs:212
console.log(`\nРасхождения (${drift.length}):`);
MEDIUMObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
scripts/catalog.mjs:215
console.log("\nРасхождений нет.");
MEDIUMFilesystem / path · mcp.destructive_tools · CWE-22, CWE-59
cards_remove, delete_blacklist, delete_order, delete_product, delete_webhook, remove_card, remove_customer
Why it matters. 7 tool(s) can delete or overwrite
Fix. prefer a read-only mode or scoped tokens; the page states the blast radius
LOWInsecure crypto · crypto.weak_hash · CWE-327, CWE-338
servers/robokassa/src/client.ts:30
return createHash("md5").update(input).digest("hex");
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
packages/core/tests/doc-numbers.test.ts:19
import { patchDocFile, patchDocLine, ruPlural } from "../../../scripts/doc-numbers.mjs";
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
packages/core/tests/doc-numbers.test.ts:21
const ROOT = fileURLToPath(new URL("../../../", import.meta.url));
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
packages/core/tests/security.test.ts:103
client.request({ method: "DELETE", path: "/webhooks/x/../../me" }),
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
packages/core/tests/security.test.ts:110
client.request({ method: "GET", path: "/pl/api/../../admin?key=SUPERSECRET" }),
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
packages/core/tests/skills-consistency.test.ts:23
const ROOT = fileURLToPath(new URL("../../../", import.meta.url));
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
servers/aprovodka/tests/prompts.test.ts:153
const res = await fetch(`http://127.0.0.1:${port}/health`);
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
servers/mindbox/README.md:45
# MCP endpoint: http://127.0.0.1:3000/mcp
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
servers/mindbox/README.md:46
# Health check: http://127.0.0.1:3000/health
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
servers/retailcrm/tests/http.test.ts:16
base = `http://127.0.0.1:${port}`;
LOWObfuscation / stealth · obf.homoglyph · CWE-506, CWE-94
packages/core/tests/errors.test.ts:162
new ApiError(0, "Таймаут запроса (15с).\nПроверьте в базе, не создан ли объект."),
LOWSupply chain · supply.unpinned · CWE-829, CWE-1357
package.json
@changesets/cli, turbo, typescript
Why it matters. 3 dependency range(s) float
Fix. pin exact versions or ship a lockfile

Gates applied: instruction_override, no_behavioural_pass.

Audited 2026-10-10 · audit v0.4.1 · source sha d796b4291af8full audit observations/trust-audit/mcp-server/theyahia__wwmcp.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-10d796b4291af8BLOCKF49first audit
06

Questions

What is the Wwmcp MCP server?

MCP servers for Russian, CIS and non-Western APIs — 46 servers: Russia/CIS, Turkey, Gulf, Egypt, Ethiopia, Bangladesh, Latin America. Turborepo monorepo + GitHub Pages catalog.

What tools does Wwmcp expose?

200 in total: 292 read-only, 98 that write, and 7 that can delete or overwrite (cards_remove, delete_blacklist, delete_order, delete_product, delete_webhook). Every one is listed on this page with its risk.

Is Wwmcp safe to connect to an agent?

No — not without reading the findings first. The audit graded it F (49/100) and found 5 critical or high issues in the source. Each one is listed on this page with the file and line it is on. Separately from the audit: 7 of its tools can destroy data, so scope the token you give it to what you actually need.

What credentials does Wwmcp need?

It reads AMOCRM_ACCESS_TOKEN, AMOCRM_CLIENT_SECRET, AMOCRM_REFRESH_TOKEN, BOXBERRY_API_TOKEN, BOXBERRY_TOKEN, CALLTOUCH_TOKEN, CDEK_CLIENT_SECRET, CHANGEME_API_KEY, CLOUDPAYMENTS_API_SECRET, DELLIN_API_KEY, ELMA365_TOKEN and GETCOURSE_API_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does Wwmcp run?

It speaks stdio and streamable-http, so it runs as a local process your client starts. It is published on npm as @theyahia/yookassa-mcp at 3.0.0.

How current is this page?

The grade is for one exact copy of the source (d796b4291af8), read on 2026-10-10. The repository is watched and re-audited when it changes.

Advertisement