Skip to main content
Glama
eobi

nemesis-shield

by eobi

nemesis_omniguard_score

Score transactions against Omniguard business-logic rules to classify as allow, review, or block. Test end-to-end with a dry-run mode that evaluates rules without metering or persistence.

Instructions

Score a transaction against an Omniguard function (allow / review / block) — test the business-logic rules end to end. Defaults to a dry_run (evaluates rules, no metering/persistence). Needs the Omniguard ingest token and function_id from nemesis_create_omniguard. Pass the risk signals the rules check (amount, country vs card_country, card_type, cvv_result, three_ds_status, is_new_device, decline_count).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
liveNotrue = score for real (meters against quota). Default false = dry_run test.
functionIdYesThe Omniguard function id to score against
ingestTokenYesOmniguard ingest token (from nemesis_create_omniguard)
transactionYesTransaction fields, e.g. { "amount": 900000, "currency": "NGN", "channel": "checkout", "country": "RU", "card_country": "US", "card_type": "virtual", "cvv_result": "N", "three_ds_status": "failed" }
Behavior4/5

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

The description adds important behavioral context beyond the annotations: it discloses the dry_run default (no metering/persistence), the need for specific credentials, and the expected risk signals. This goes beyond the readOnlyHint/openWorldHint/destructiveHint flags, though it doesn't detail live-mode side effects beyond what the schema notes.

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 concise and well-structured: it leads with the purpose, then the default behavior, then dependencies, and finally input guidance. Every sentence serves a clear function with no redundant or vague filler.

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?

For a tool with a nested transaction object, no output schema, and moderate complexity, the description covers the key aspects: what it does, how to invoke it, what inputs are expected, and the default safety mode. It could be more explicit about the exact response format, but the allow/review/block outcome is implied.

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 parameters with descriptions (100% coverage), but the description enriches the 'transaction' object by listing the key risk signals (amount, country vs card_country, card_type, etc.) that the rules check. This adds meaning beyond the schema's example.

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 action ('Score a transaction against an Omniguard function') and the result categories (allow/review/block). It is specific and uses a distinct verb, but it does not explicitly differentiate from sibling tools or name an alternative for similar tasks.

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 provides clear usage context: it is for testing business-logic rules end to end, defaults to dry_run, and notes the prerequisite of having an ingest token and function ID from nemesis_create_omniguard. It does not explicitly state when not to use this tool or mention alternative tools for other scenarios.

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

Install Server

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/eobi/nemesis_shield_sdks'

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