Skip to main content
Glama
seer22

io.github.seer22/shturman-direct-mcp

by seer22

Read from the account

direct_read
Read-onlyIdempotent

Fetch Yandex.Direct data via any read-only API method (campaigns.get, ads.get, keywords.get). Returns results while blocking state-changing calls, ensuring safe queries.

Instructions

Call any reading method of the Direct API v501 — campaigns.get, ads.get, keywords.get and so on — and get the result. Refuses anything that changes state: those go through direct_plan and direct_apply.

Cost in API units is checked before the call, not read from a header afterwards. Read knowledge://traps first: several read methods return an empty-looking answer unless the right field names are asked for, which looks like 'nothing was saved'.

Easy to miss: keywordsresearch.hassearchvolume answers whether a phrase has search demand (a boolean, not a figure), and dictionaries.get returns the reference books — regions and minimum bids among them.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
methodYesa reading method, usually 'get'
paramsNothe params object of the API call
serviceYescampaigns, ads, adgroups, keywords, …
client_loginNoRead an account this login represents rather than its own. Reading only: the tools that change something have no such parameter, so a write cannot be aimed at another account by passing a string.
Install Server

TDQS

A4.9/5.0
Behavior5/5

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

Beyond the readOnlyHint and idempotentHint annotations, the description discloses that cost is checked before the call, that state-changing calls are refused, and that some read methods return misleadingly empty-looking results without the right field names. It also flags return-type quirks for specific methods.

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?

Every sentence earns its place: the core call pattern and write exclusion come first, followed by cost semantics and known traps. It is dense but well organized, with no repetition of schema fields or annotation details.

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

Completeness5/5

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

For an open-world read wrapper with no output schema, the description covers invocation, refusal behavior, cost semantics, and the most common empty-result traps. It also tells the agent to read knowledge://traps first, which is the right pre-flight step for this tool.

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

Parameters4/5

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

The input schema already covers all four parameters at 100%, so the baseline is 3. The description adds value by giving dotted method examples such as keywordsresearch.hassearchvolume, extra service names like dictionaries, and clarifying the meaning or shape of results for those calls.

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 explicitly states the tool calls any reading method of Direct API v501, gives concrete examples like campaigns.get, ads.get, and keywords.get, and distinguishes itself by refusing state-changing operations. It clearly separates this tool from write-capable siblings.

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

Usage Guidelines5/5

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

It provides a clear when-to-use rule: call it for any reading method. It also gives an explicit when-not-to-use rule: state changes go through direct_plan and direct_apply. The pointer to knowledge://traps before use is additional concrete guidance.

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

Other Tools

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/seer22/shturman-direct-mcp'

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