MaxMind minFraud MCP by usefulapi
Server Details
MCP server for MaxMind minFraud — score transactions for fraud risk from your AI assistant.
The last two health checks of this connector failed. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.
If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.
- Status
- Unhealthy
- Uptime
- 83.4% over 78 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- m190/usefulapi-mcp
- GitHub Stars
- 0
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 4 tools
The three scoring tools (score, insights, factors) share the same request body and are deliberately tiered, which creates some inherent overlap; however, each description clearly states the escalation of detail (overall score vs. insights vs. per-factor reasons), so an agent can choose correctly. report_transaction is unmistakably distinct as the only write operation.
All four tools use a uniform minfraud_ prefix with snake_case verbs/nouns (score, insights, factors, report_transaction). The pattern is predictable and readable throughout.
Four tools is well-scoped: it maps one-to-one onto the three minFraud scoring endpoints plus the feedback report endpoint. Nothing is redundant or missing from the service surface.
The lifecycle is well covered: score a transaction at three fidelity levels and report the real-world outcome for model feedback. Minor gaps exist around transaction lookup/listing or account/funds querying, but the core scoring-and-feedback workflow is complete.
Available Tools
4 toolsminfraud_factorsminFraud Factors (risk reasons + subscores)ARead-onlyInspect
The most detailed assessment: everything in Insights PLUS risk_score_reasons and per-factor subscores explaining WHY the score is what it is. Same request body as minfraud_score. API: POST /minfraud/v2.0/factors.
| Name | Required | Description | Default |
|---|---|---|---|
| No | |||
| event | No | ||
| order | No | ||
| device | No | Info about the device/connection. device.ip_address is the most important input. | |
| account | No | ||
| billing | No | ||
| payment | No | ||
| shipping | No | ||
| credit_card | No | ||
| custom_inputs | No | Custom inputs configured in your minFraud account. | |
| shopping_cart | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already covers the safety profile, and the description adds genuinely new behavioral context: the HTTP endpoint (POST /minfraud/v2.0/factors) and, notably, the extra response content (risk_score_reasons, per-factor subscores) that no output schema documents. It omits auth requirements, rate limits, and pricing/billing tier for these calls, which keeps it out of the top band.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the differentiating claim, then the request-body equivalence, then the raw endpoint. No filler or restatement of the title, and the final sentence earns its place as an implementation detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 11 nested parameters, 0 required fields, low schema coverage and no output schema, an agent needs more than this to call the tool confidently — it cannot tell which fields are actually needed for a score. The description partially compensates by describing what comes back, but the input contract remains largely undisclosed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 18% across 11 top-level parameters, so the description carries the burden — and it explains no parameters at all, deferring entirely with 'Same request body as minfraud_score'. That delegation only helps an agent that already knows the sibling's contract; nothing clarifies the nested device, order, or custom_inputs fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb-and-resource framing — 'the most detailed assessment' — and defines it as a strict superset of a named sibling ('everything in Insights PLUS risk_score_reasons and per-factor subscores'). This lets an agent rank it against minfraud_insights and minfraud_score without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The tiering language ('most detailed', 'PLUS... explaining WHY the score is') and 'Same request body as minfraud_score' tell the agent when this is the right choice versus the cheaper siblings. It stops short of an explicit exclusion ('do not use when you only need the score'), so it is context rather than a full decision rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
minfraud_insightsminFraud Insights (detailed risk)BRead-onlyInspect
Score a transaction AND get detailed risk insights: IP geolocation, email/address/device attributes, and per-component risk on top of the risk_score. Same request body as minfraud_score. API: POST /minfraud/v2.0/insights.
| Name | Required | Description | Default |
|---|---|---|---|
| No | |||
| event | No | ||
| order | No | ||
| device | No | Info about the device/connection. device.ip_address is the most important input. | |
| account | No | ||
| billing | No | ||
| payment | No | ||
| shipping | No | ||
| credit_card | No | ||
| custom_inputs | No | Custom inputs configured in your minFraud account. | |
| shopping_cart | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
readOnlyHint=true already tells the agent this is a non-mutating read call, and the description usefully discloses the API endpoint and that the payload matches minfraud_score. However, it omits operational context such as auth requirements, rate limits, or latency/cost implications of the richer response. Adds some value but not rich context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the primary action and then the differentiators, ending with the concrete endpoint. No filler; it could pack slightly more guidance into the same space but wastes nothing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 11 nested parameters at 18% schema coverage and no output schema, this complex tool needs more descriptive support than it provides. The pointer to minfraud_score's request body helps, but the agent still lacks guidance on component structure, which fields matter most, and what the detailed insights response contains.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 18% across 11 nested parameters, so the description is expected to compensate, yet it offers no parameter-level meaning beyond "same request body as minfraud_score." Key fields like device.ip_address and required-vs-optional composition are left to the schema, which documents only a fraction.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a clear verb+resource ("Score a transaction") and enumerates what extra it returns over minfraud_score: IP geolocation, email/address/device attributes, and per-component risk. It differentiates itself from the sibling minfraud_score via "Same request body as minfraud_score" plus the added insights, though it draws no line against minfraud_factors.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It signals that this is the richer variant of minfraud_score, implying you select it when you need detail beyond the score, but it never states explicit when-to-use/when-not conditions nor routes the agent to minfraud_factors or the reporting sibling. Usage is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
minfraud_report_transactionReport a transaction outcomeADestructiveInspect
WRITE — submits fraud feedback to MaxMind. Report the real-world outcome of a transaction (e.g. it was a chargeback or confirmed fraud) so minFraud can improve future scoring. This mutates MaxMind's model of your traffic; it is not a read. Requires a tag and at least one identifier (ip_address, maxmind_id, minfraud_id, or transaction_id). API: POST /minfraud/v2.0/transactions/report (returns HTTP 204).
| Name | Required | Description | Default |
|---|---|---|---|
| tag | Yes | REQUIRED. The outcome you are reporting for this transaction. | |
| notes | No | Free-form notes about the transaction. | |
| ip_address | No | Identifier: the IP address of the reported transaction. | |
| maxmind_id | No | Identifier: the 8-character maxmind_id from a prior response. | |
| minfraud_id | No | Identifier: the minfraud_id (UUID) from a prior response. | |
| transaction_id | No | Identifier: your own transaction_id sent at scoring time. | |
| chargeback_code | No | The chargeback reason code, if tag=chargeback. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The destructiveHint annotation already flags mutation, but the description adds real context beyond it: it mutates MaxMind's model of traffic (not a read of your own data), imposes an input precondition (tag plus at least one identifier), and states the endpoint and HTTP 204 return. It does not discuss reversibility or downstream scoring effects, keeping it at 4 rather than 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the 'WRITE' signal, then purpose, then preconditions, then API/return details. Every sentence carries distinct information and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 7-parameter mutation tool with no output schema, the description covers purpose, precondition, mutation semantics, endpoint, and response code — everything needed to invoke it correctly. The HTTP 204 note substitutes for the absent output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so per-field meaning is already documented and the baseline is 3. The description exceeds that by surfacing a cross-parameter constraint the schema cannot express — 'Requires a tag and at least one identifier (ip_address, maxmind_id, minfraud_id, or transaction_id)' — which is the key invocation rule for this tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb and resource ('submits fraud feedback to MaxMind', 'Report the real-world outcome of a transaction') and immediately distinguishes itself from the read-oriented siblings (minfraud_score/insights/factors) by declaring 'WRITE ... it is not a read.' An agent can classify this as the only mutation tool in the set without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states the context for use clearly ('Report the real-world outcome of a transaction ... so minFraud can improve future scoring') and implies the lifecycle position (after a scoring call). It does not explicitly name when-not-to-use or route to a sibling, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
minfraud_scoreminFraud risk scoreARead-onlyInspect
Score a transaction for fraud risk. Returns the overall risk_score (0.01–99), IP risk, disposition, and remaining query funds — the lightest, cheapest assessment. Send at least device.ip_address (plus email/billing/order for a better score). API: POST /minfraud/v2.0/score.
| Name | Required | Description | Default |
|---|---|---|---|
| No | |||
| event | No | ||
| order | No | ||
| device | No | Info about the device/connection. device.ip_address is the most important input. | |
| account | No | ||
| billing | No | ||
| payment | No | ||
| shipping | No | ||
| credit_card | No | ||
| custom_inputs | No | Custom inputs configured in your minFraud account. | |
| shopping_cart | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The readOnlyHint annotation already establishes that this is a safe read operation, so the description's job is to add context beyond that. It does: it discloses the main return fields (risk_score range, IP risk, disposition, remaining query funds), notes the cost tier, and supplies the POST endpoint, though it omits interpretation guidance for disposition values.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tightly packed sentences: purpose, return values, minimal input guidance, and API endpoint. Nothing is wasted and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, low schema description coverage, and nested objects, the description supplies the essential framing: what it returns, what to send at minimum, and that it is the cheapest tier. It is reasonably complete for an agent to call it correctly, though disposition interpretation and deeper nested parameter meaning remain absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 18%, so the description must compensate. It does add priority guidance by naming device.ip_address and the email/billing/order objects, but with 11 top-level parameters it leaves most object groups unexplained, so the compensation is partial rather than complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Score a transaction for fraud risk.' The phrase 'the lightest, cheapest assessment' implicitly distinguishes it from the heavier minFraud siblings, but it does not name an alternative tool the way a top-tier definition would.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage by calling itself the 'lightest, cheapest assessment' and recommends sending at least device.ip_address. However, it never states when to choose this over minfraud_factors or minfraud_insights, nor any when-not-to-use condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Related MCP Connectors
Hosted MCP server connecting AI assistants to 9,000+ apps and 40,000+ actions via Zapier.
MCP server for AI dialogue using various LLM models via AceDataCloud
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
Hosted MCP server for live public-data APIs and Skills for AI agents.
Related MCP Servers
AlicenseNot gradedqualityBmaintenanceFraud Prevention MCP server using FraudLabs Pro API.MIT- AlicenseAqualityDmaintenanceAn open-source MCP server for AI-powered fraud prevention that detects fraudulent IPs, emails, URLs, and phone numbers using free APIs and provides actionable risk scores.7MIT
- FlicenseNot gradedqualityDmaintenanceMCP server that provides tools for retrieving transaction context and recording AI decisions or creating human reviews for payment risk exceptions. Enables LLM agents to handle exception transactions in a hybrid payment-decisioning workflow.-
- AlicenseNot gradedqualityDmaintenanceMCP server for ClawVault - an AI agent payment security layer that enables Claude to request payments, check limits, and manage transactions with configurable rules.63 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.