Skip to main content
Glama
theYahia

roistat-mcp

by theYahia

🗄 Репозиторий заархивирован

Разработка переехала в theYahia/WWmcp — монорепозиторий MCP-серверов для незападных API: СНГ, MENA, Африка, LATAM, Юго-Восточная Азия. Общее ядро @theyahia/mcp-core, единый CI, единый релизный конвейер.

Актуальная версия того, что лежало здесь: servers/roistat/

Пакет в npm прежний — @theyahia/roistat-mcp, ставится и работает как раньше. Здесь больше ничего не обновляется. Задачи и pull request'ы — в WWmcp.

Archived — development moved to theYahia/WWmcp, a monorepo of MCP servers for non-Western APIs. The current version of this package now lives at servers/roistat/. The npm package @theyahia/roistat-mcp is unchanged. Please open issues and pull requests there.

Roistat MCP — сквозная аналитика и стоимость лида в диалоге с нейросетью

Если вы искали, как спросить у ИИ, сколько стоит лид с каждого канала, свести расходы на рекламу с продажами или выгрузить лиды Roistat без ручных отчётов — это оно. 6 инструментов поверх API Roistat: лиды, рекламные каналы, затраты, аналитика и интеграции. Требуется API-ключ и ID проекта.

npm License: MIT

Related MCP server: calltouch-mcp

Установка

Claude Desktop

{
  "mcpServers": {
    "roistat": {
      "command": "npx",
      "args": ["-y", "@theyahia/roistat-mcp"],
      "env": {
        "ROISTAT_API_KEY": "ваш_ключ",
        "ROISTAT_PROJECT_ID": "ваш_id_проекта"
      }
    }
  }
}

Claude Code

claude mcp add roistat \
  -e ROISTAT_API_KEY=ваш_ключ \
  -e ROISTAT_PROJECT_ID=ваш_id_проекта \
  -- npx -y @theyahia/roistat-mcp

Streamable HTTP

npx @theyahia/roistat-mcp --http --port 3000
# POST /mcp — MCP endpoint
# GET  /health — health check

Smithery

Конфиг в smithery.yaml. Требуемые параметры: ROISTAT_API_KEY, ROISTAT_PROJECT_ID.

Авторизация

Переменная

Обязательна

Описание

ROISTAT_API_KEY

Да

API-ключ проекта Roistat

ROISTAT_PROJECT_ID

Да

ID проекта в Roistat

Base URL: https://cloud.roistat.com/api/v1/

Инструменты (6)

Инструмент

Описание

get_analytics

Аналитика: визиты, заявки, выручка, ROI по источникам

get_visits

Список визитов с источниками и UTM-метками

get_leads

Лиды (заявки) с фильтрацией по статусам

get_channels

Эффективность рекламных каналов: ROI, CPL, выручка

get_costs

Затраты на рекламу с группировкой по периодам

get_integrations

Список подключённых интеграций (CRM, аналитика)

Скиллы (Prompts)

Скилл

Описание

skill-analytics

Аналитика за период — сводка по ключевым метрикам с топ-3 источниками

skill-channels

Эффективность рекламных каналов — сравнение ROI, рекомендации по бюджету

Примеры запросов

Какой ROI у рекламных каналов за последний месяц?
Покажи визиты за сегодня
Сколько лидов пришло за неделю?
Какие интеграции подключены?
Сравни затраты по каналам за март

Реферальная программа Roistat

Тип

Комиссия

Юридические лица

25% от оплат клиента

ИП

50% от оплат клиента

Подробнее: roistat.com/referral

Разработка

npm install
npm test          # Vitest
npm run dev       # stdio (tsx)
npm run start:http  # HTTP-сервер

Лицензия

MIT


Telegram: @vhodvai

Available Tools

6 tools
get_analyticsC

Получение аналитики Roistat по источникам трафика за период. Метрики: визиты, заявки, выручка, ROI.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesДата конца периода (YYYY-MM-DD)
fromYesДата начала периода (YYYY-MM-DD)
limitNoМаксимум строк в ответе
metricsNoМетрики: visitCount, leadCount, orderCount, revenue, visits2leads, visits2orders и т.д.
dimensionsNoГруппировки: marker (источник), landing_page, region, keyword и т.д.

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses the purpose and metrics but does not indicate whether it is read-only, requires authentication, has rate limits, or pagination behavior. The lack of such details makes behavioral transparency low.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short (one sentence plus a list) and front-loaded. However, the list of metrics repeats information already in the schema. It is concise but lacks structured presentation like bullet points, which would improve scannability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 5 parameters, no output schema, and no annotations, the description is incomplete. It does not cover output format, pagination behavior, error handling, or authentication requirements. For a data retrieval tool, these are significant gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description adds a human-readable list of metrics in Russian, which provides some additional context beyond the schema but does not explain parameter usage or format beyond what is already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves Roistat analytics by traffic sources for a given period, listing specific metrics. It is a specific verb+resource combination, and while it does not explicitly differentiate from siblings, the metrics list implies it is aggregate analytics rather than raw data like get_visits or get_leads.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like get_visits or get_channels. There is no mention of prerequisites, context, or exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_channelsB

Эффективность рекламных каналов: визиты, заявки, выручка, затраты, ROI по каждому каналу.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesДата конца периода (YYYY-MM-DD)
fromYesДата начала периода (YYYY-MM-DD)
metricsNoМетрики: visitCount, leadCount, revenue, cost, roi

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully communicate behavioral traits. It lists the metrics returned but does not indicate whether the tool is read-only, requires authentication, or has any side effects. It adds minimal information beyond what the parameter names imply.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, focused sentence. It is concise and front-loads the key purpose. However, it is somewhat terse and lacks structural elements like bullet points or explicit sections.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema and annotations, the description should provide more context about the returned data structure and behavior. While it lists the metrics, it does not explain the format or any constraints. The tool has 3 parameters with full schema coverage, so completeness is adequate but not thorough.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all three parameters with descriptions (100% coverage). The description does not add new parameter semantics but lists the metrics, which are also described in the 'metrics' parameter's default values. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: providing effectiveness metrics (visits, leads, revenue, costs, ROI) for advertising channels. The verb 'get' is implied by the name, and it distinguishes from sibling tools like get_visits (likely only visits) and get_analytics (more general).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus siblings. The description does not mention alternatives or specific conditions, leaving the agent to infer usage without support.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_costsB

Затраты на рекламу по каналам с группировкой по дням/неделям/месяцам.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesДата конца периода (YYYY-MM-DD)
fromYesДата начала периода (YYYY-MM-DD)
group_byNoГруппировка: day, week, monthday

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It only states the basic purpose (costs by channels grouped by time) but omits behavioral traits such as whether data is real-time, auth requirements, rate limits, or if any mutation occurs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence in Russian, concise and front-loaded. Every word is necessary but could be expanded to include output format or filtering options.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, yet the description does not explain what the returned data looks like (e.g., list per channel, aggregated totals). With 3 parameters and no output schema, more detail is needed for completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers 100% of parameters with descriptions. The tool description adds no additional meaning beyond what the schema already provides, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it returns advertising costs by channels, grouped by days/weeks/months. This distinguishes it from sibling tools like get_analytics, get_visits, get_leads which address different metrics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool vs alternatives. The description implies it is for advertising costs but does not specify when not to use it or mention any prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_integrationsB

Список подключённых интеграций проекта Roistat (CRM, аналитика, рекламные кабинеты).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description must carry the full burden of behavioral disclosure. It only states the tool returns a list, without mentioning read-only nature, authentication needs, rate limits, or response format. This is insufficient for a tool with no annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with no wasted words. It is front-loaded with the key purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description adequately covers the simple functionality of listing integrations with no parameters. It could mention return format or pagination, but it is complete enough for a zero-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters and schema coverage is 100%. Baseline is 3. The description adds minimal meaning beyond the schema by specifying what is listed (integrations), but no parameter details are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns a list of connected integrations for a Roistat project, specifying categories (CRM, analytics, advertising). The verb 'list' and resource 'integrations' are specific, and the tool is well-distinguished from sibling tools like get_analytics or get_visits.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites or context for the integrations data.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_leadsA

Получение списка лидов (заявок) из Roistat за период с фильтрацией по статусам.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesДата конца периода (YYYY-MM-DD)
fromYesДата начала периода (YYYY-MM-DD)
limitNoМаксимум лидов в ответе
offsetNoСмещение для пагинации
statusesNoФильтр по статусам заявок

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided; description covers basic retrieval and filtering but omits details on pagination, rate limits, or handling of empty results, leaving behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence that is efficient, front-loaded with key information, containing no unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple list tool, but missing details on pagination (limit/offset), response format, and error scenarios given the absence of output schema and annotations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with parameter descriptions; the description only summarizes filtering without adding new semantic value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves a list of leads from Roistat with period and status filtering, distinguishing it from sibling tools that handle analytics, visits, channels, costs, and integrations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies usage for fetching leads with filters, but lacks explicit guidance on when to use this tool versus alternatives, nor does it specify when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_visitsA

Список визитов на сайт из Roistat за период с источниками и UTM-метками.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesДата конца периода (YYYY-MM-DD)
fromYesДата начала периода (YYYY-MM-DD)
limitNoМаксимум визитов в ответе
offsetNoСмещение для пагинации
sourceNoФильтр по источнику трафика

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavior. It only states it's a list of visits, but does not mention read-only nature, authentication needs, rate limits, or error handling. This is insufficient for a mutation-free tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that front-loads the core purpose. Every word adds value, with no unnecessary information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description mentions output includes sources and UTM labels, providing some context. However, with no output schema, it lacks details on output structure, pagination behavior, or error handling, making it minimally complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so the baseline is 3. The tool description adds that the list includes sources and UTM labels, but this does not significantly enhance parameter semantics beyond what the schema already provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it returns a list of visits with sources and UTM labels. Sibling tools (get_analytics, get_leads, etc.) cover different data, so the tool's purpose is distinct and well-defined.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description specifies the tool is for visit data for a period with source/UTM info, implying usage context. Sibling tools cover other data types, so usage is clear, but no explicit when-not-to-use or alternatives are mentioned.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 6 tool updatesv1.1.0
    • First observedget_analytics
    • First observedget_channels
    • First observedget_costs
    • First observedget_integrations
    • First observedget_leads
    • First observedget_visits

TDQS

A3.7/5.0
Disambiguation5/5

Each tool targets a distinct data type: analytics summary, visits, leads, channels, costs, and integrations. No overlap in purpose.

Naming Consistency5/5

All tools follow the consistent pattern of 'get_' + noun (e.g., get_analytics, get_visits). No deviations.

Tool Count5/5

6 tools is well-scoped for a marketing analytics server, covering core reporting needs without excess.

Completeness4/5

Covers all major read operations for Roistat data (analytics, visits, leads, channels, costs, integrations). Lacks write operations but that aligns with typical analytics use cases.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    MCP server for integrating with Roistat marketing analytics platform, enabling AI agents to analyze statistics, manage leads, track calls and channels.
    -
  • A
    license
    B
    quality
    F
    maintenance
    MCP server for Calltouch API to retrieve calls, leads, sources, tags, and statistics, enabling call tracking and analysis.
    7
    52
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP server for Yandex Direct, Metrika, Wordstat, and Webmaster APIs, providing 132 tools to manage advertising campaigns, analytics, keyword research, and reporting through any MCP-compatible client.
    59
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP server for RedTrack affiliate tracking API, enabling querying campaigns, clicks, conversions, and reports from any MCP-compatible client.
    45
    1
    MIT

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/theYahia/roistat-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server