VALUE Verdicts MCP
An MCP server providing safety checks for AI agents before payments, including address poisoning detection, phishing link analysis, and x402 payment verification. It also offers celestial geometry calculations and deterministic card drawing for world-building contexts.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://value-verdicts.mcfulltime.workers.dev/mcpWhat you can do with it
- Check EVM, Solana, or Bitcoin addresses for validity and poisoning lookalikes before sending crypto
- Detect phishing links by analyzing domains for homoglyphs, typosquats, and brand impersonation
- Verify x402 payment requests against price limits, token validity, and payee identity
- Compute celestial body positions and angular relations for astronomy or world-building agents
Source and maintenance
Protocol and capabilities
- Server
- value-verdicts 1.3.0
- MCP protocol
- 2025-06-18
- Tools
- 13 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
13 advertised
address_check — Payment address check
Before sending crypto: checks an EVM, Solana or Bitcoin address for a valid checksum, the right network, dead/burn/program addresses, a mismatch with the expected payee, and address-poisoning lookalikes of addresses you already trust. Live on-chain lookup: has the address ever been used, is it a wallet, contract or program. Returns pass / caution / fail with reasons. Price: $0.01 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"address"
],
"properties": {
"known": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional. Addresses you have paid or trust before (max 200). GET: comma-separated."
},
"address": {
"type": "string",
"description": "The address you are about to pay."
},
"network": {
"enum": [
"evm",
"ethereum",
"base",
"polygon",
"arbitrum",
"optimism",
"bsc",
"avalanche",
"solana",
"bitcoin"
],
"type": "string",
"description": "Optional. Network you intend to use."
},
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"expected": {
"type": "string",
"description": "Optional. The address you were told to pay, e.g. from an invoice."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}link_check — Phishing link check
Before opening a link or entering credentials: detects lookalike domains (homoglyphs, mixed alphabets, typosquats), brand impersonation in domains and subdomains, hidden destinations (user@host), unsafe schemes, and risky TLDs across 70+ commonly impersonated brands. Live lookups: does the domain exist (DNS) and how old is it (registration date), since most phishing domains are days old. The page itself is never visited. Price: $0.01 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "The link to check."
},
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"expectedBrand": {
"type": "string",
"description": "Optional. The brand this link claims to be, e.g. \"paypal\". Fails if the domain is not official."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}payment_check — x402 payment check
Before you sign an x402 payment to another service: pass the 402 payment request you received and get one verdict on the whole thing. Checks the price against your limit, that the token is real USDC with the right signing name, the payee address (checksum, poisoning lookalikes, on-chain history), whether the request claims a different site than the one you called, and the site itself (lookalike domains, domain age). One call, one price. Price: $0.01 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"paymentRequired"
],
"properties": {
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"maxPrice": {
"type": "string",
"description": "Optional. Your price limit in US dollars, e.g. \"0.05\"."
},
"knownPayees": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional. Payee addresses you have paid before (max 200). GET: comma-separated."
},
"requestedUrl": {
"type": "string",
"description": "Optional. The URL you called that returned the 402."
},
"paymentRequired": {
"type": [
"string",
"object"
],
"description": "The PAYMENT-REQUIRED header value (base64) or the 402 JSON body. GET: base64 only."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}x402_preflight — Live x402 endpoint preflight
Before paying an x402 service: safely makes one unauthenticated HTTPS request, confirms the endpoint is live and returns a current 402 challenge, then checks its price, USDC token, payee and site. Never signs or settles a payment. HTTPS only; redirects and private/local targets are refused. Price: $0.01 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "The public HTTPS x402 endpoint to preflight."
},
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"maxPrice": {
"type": "string",
"description": "Optional. Your maximum acceptable US-dollar price, e.g. \"0.05\"."
},
"knownPayees": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional. Payee addresses you have paid before (max 200). GET: comma-separated."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}celestial_state — Celestial body state
Computes compact, factual ecliptic positions and motion for selected planets, dwarf planets, or supported minor bodies at an Earth coordinate and local civil time. The result is calculated by the configured ephemeris service; it is not a static lookup or an interpretation. Price: $0.01 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"dateTime",
"latitude",
"longitude",
"timezoneId",
"bodies"
],
"properties": {
"bodies": {
"type": "array",
"items": {
"enum": [
"Sun",
"Moon",
"NNode",
"Lilith",
"Mercury",
"Venus",
"Mars",
"Jupiter",
"Saturn",
"Uranus",
"Neptune",
"Pluto",
"Ceres",
"Pallas",
"Juno",
"Vesta",
"Chiron",
"Pholus",
"Nessus",
"Eros",
"Toro",
"Midas",
"Psyche",
"Proserpina",
"Pandora",
"Dejanira",
"Cassandra",
"Apollo",
"Nakano",
"Hygiea",
"Eris",
"Haumea",
"Makemake",
"Sedna",
"Orcus",
"Quaoar",
"Gonggong"
],
"type": "string"
},
"description": "One to 20 supported body names."
},
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"dateTime": {
"type": "string",
"description": "Local civil time, exactly YYYY-MM-DDTHH:mm."
},
"latitude": {
"type": "number",
"description": "Observer latitude from -90 to 90."
},
"longitude": {
"type": "number",
"description": "Observer longitude from -180 to 180."
},
"timezoneId": {
"type": "string",
"description": "IANA timezone at the observer, e.g. Pacific/Auckland."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}celestial_relations — Celestial angular relations
Computes the selected bodies, then returns every pairwise angular separation in degrees. Useful for astronomy, historical reconstruction, rendering, research, and event-planning agents. It returns geometry only, with no predictive or interpretive claims. Price: $0.02 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"dateTime",
"latitude",
"longitude",
"timezoneId",
"bodies"
],
"properties": {
"bodies": {
"type": "array",
"items": {
"enum": [
"Sun",
"Moon",
"NNode",
"Lilith",
"Mercury",
"Venus",
"Mars",
"Jupiter",
"Saturn",
"Uranus",
"Neptune",
"Pluto",
"Ceres",
"Pallas",
"Juno",
"Vesta",
"Chiron",
"Pholus",
"Nessus",
"Eros",
"Toro",
"Midas",
"Psyche",
"Proserpina",
"Pandora",
"Dejanira",
"Cassandra",
"Apollo",
"Nakano",
"Hygiea",
"Eris",
"Haumea",
"Makemake",
"Sedna",
"Orcus",
"Quaoar",
"Gonggong"
],
"type": "string"
},
"description": "Two to 20 supported body names."
},
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"dateTime": {
"type": "string",
"description": "Local civil time, exactly YYYY-MM-DDTHH:mm."
},
"latitude": {
"type": "number",
"description": "Observer latitude from -90 to 90."
},
"longitude": {
"type": "number",
"description": "Observer longitude from -180 to 180."
},
"timezoneId": {
"type": "string",
"description": "IANA timezone at the observer, e.g. Pacific/Auckland."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}celestial_event_window — Celestial angular event window
Searches a bounded UTC range for the requested angular separation between exactly two selected bodies, then refines each detected crossing to the calculator minute. It uses a fixed, owner-operated ephemeris calculator with at most 48 samples and four concurrent requests. Geometry only: no prediction or interpretation. Price: $0.02 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"startUtc",
"endUtc",
"bodies",
"targetDegrees"
],
"properties": {
"bodies": {
"type": "array",
"items": {
"enum": [
"Sun",
"Moon",
"NNode",
"Lilith",
"Mercury",
"Venus",
"Mars",
"Jupiter",
"Saturn",
"Uranus",
"Neptune",
"Pluto",
"Ceres",
"Pallas",
"Juno",
"Vesta",
"Chiron",
"Pholus",
"Nessus",
"Eros",
"Toro",
"Midas",
"Psyche",
"Proserpina",
"Pandora",
"Dejanira",
"Cassandra",
"Apollo",
"Nakano",
"Hygiea",
"Eris",
"Haumea",
"Makemake",
"Sedna",
"Orcus",
"Quaoar",
"Gonggong"
],
"type": "string"
},
"description": "Exactly two distinct supported body names."
},
"endUtc": {
"type": "string",
"description": "UTC end time, exactly YYYY-MM-DDTHH:mmZ; within seven days."
},
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"startUtc": {
"type": "string",
"description": "UTC start time, exactly YYYY-MM-DDTHH:mmZ."
},
"stepMinutes": {
"type": "integer",
"description": "Optional sampling interval from 60 to 1440 minutes; default 240. Range and step may not exceed 48 samples."
},
"targetDegrees": {
"type": "number",
"description": "Requested angular separation from 0 to 180 degrees."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}celestial_earth_projection — Global celestial geometry projection
Calculates bounded GeoJSON loci on Earth where each selected major body is at a named angular condition at one UTC minute: AC (rising horizon), MC (upper meridian), DC (setting horizon), or IC (lower meridian). Useful for mapping, visualization, geographic research, and location-aware planning. It returns calculated geometry only, with no interpretation or prediction. Price: $0.02 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"instantUtc",
"bodies"
],
"properties": {
"bodies": {
"type": "array",
"items": {
"enum": [
"Sun",
"Moon",
"NNode",
"Lilith",
"Mercury",
"Venus",
"Mars",
"Jupiter",
"Saturn",
"Uranus",
"Neptune",
"Pluto"
],
"type": "string"
},
"description": "One to four supported major-body names."
},
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"instantUtc": {
"type": "string",
"description": "UTC instant, exactly YYYY-MM-DDTHH:mmZ."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}spatial_identity — Spatial identity (ROAST-78 world tile)
Gives any Earth coordinate a stable identity: its ~19 m world tile (Web Mercator zoom 21, the Anagramic globe grid), tile bounds and centre, and the deterministic ROAST-78 card that tile holds (Roast-78 character, card, keyword, upright/reversed, element, rune, hieroglyph, I Ching hexagram, math and navigation symbols), plus the eight neighbouring tiles. The same coordinate always returns the same identity, so agents can anchor games, stories, AR scenes and shared worlds to real places. Includes a replayable receipt hash. Price: $0.01 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"latitude",
"longitude"
],
"properties": {
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"latitude": {
"type": "number",
"description": "Latitude from -90 to 90 (Web Mercator clamps beyond ±85.05)."
},
"longitude": {
"type": "number",
"description": "Longitude from -180 to 180."
},
"includeNeighbours": {
"type": "boolean",
"description": "Optional. Include the eight surrounding tiles (default true)."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}time_portal — Time portal (moment card and portal minutes)
Reads the clock at a place and instant and returns the moment card (digit-reduced local HH:MM read as a Major Arcana number), whether this minute is a portal, and the previous and next portal minutes (mirrors, triples, ascending/descending sequences, pi 3:14, phi 6:18, and 12-hour echoes) with exact UTC instants and countdowns. Clock: civil timezone (given, or looked up from the coordinate), mean solar time, or UTC. DST-aware. Same input and "at" always give the same result, with a receipt hash. Price: $0.01 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"latitude",
"longitude"
],
"properties": {
"at": {
"type": "string",
"description": "Optional UTC instant, e.g. 2026-11-02T08:30Z. Defaults to now."
},
"clock": {
"enum": [
"civil",
"solar",
"utc"
],
"type": "string",
"description": "Optional. civil (default), solar (mean solar time at the longitude) or utc."
},
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"latitude": {
"type": "number",
"description": "Latitude from -90 to 90."
},
"longitude": {
"type": "number",
"description": "Longitude from -180 to 180."
},
"timezoneId": {
"type": "string",
"description": "Optional IANA timezone, e.g. \"Africa/Cairo\". If omitted, it is looked up from the coordinate (falls back to solar time)."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}location_context — Location context (place + time + sky + story seed)
Everything an agent needs to ground a scene, NPC, quest or prompt in a real place and moment, in one call: the spatial identity with the tile card's full context (meanings, story catalyst, imagery, inspiration prompt, story function and archetype, spread templates, geometry, navigation, correspondences, names in six languages), the time portal with the moment card's full context, the eight neighbouring tiles, approximate sun altitude/daylight and moon phase, and a structured narrative seed ready to hand to a model. No text is generated. Deterministic for a given input and "at", with a receipt hash. Price: $0.02 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"latitude",
"longitude"
],
"properties": {
"at": {
"type": "string",
"description": "Optional UTC instant, e.g. 2026-11-02T08:30Z. Defaults to now."
},
"clock": {
"enum": [
"civil",
"solar",
"utc"
],
"type": "string",
"description": "Optional. civil (default), solar or utc."
},
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"latitude": {
"type": "number",
"description": "Latitude from -90 to 90."
},
"longitude": {
"type": "number",
"description": "Longitude from -180 to 180."
},
"timezoneId": {
"type": "string",
"description": "Optional IANA timezone. If omitted, it is looked up from the coordinate (falls back to solar time)."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}situated_draw — Situated draw (verifiable cards for a place and intent)
Draws 1-10 ROAST-78 cards for a world tile and an optional intent, using the public drand beacon (League of Entropy, including Cloudflare; a new BLS-signed value every 3 s). Nobody, including this service, can steer the outcome before the beacon round is published, and anyone can replay it from the receipt (round + tile + intent hash). Positions are named from the place card's own spread template when one exists for that count. Each card includes orientation, meaning, keyword, element, story catalyst and prompt. The intent text is hashed, never stored or returned. Price: $0.01 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"latitude",
"longitude"
],
"properties": {
"at": {
"type": "string",
"description": "Optional past UTC instant (e.g. 2026-11-02T08:30Z) to draw with the beacon round of that moment. Omit for now."
},
"count": {
"type": "integer",
"description": "Optional number of cards, 1 to 10 (default 1)."
},
"round": {
"type": "integer",
"description": "Optional drand round, to replay or verify an earlier draw. Omit for a fresh, unpredictable draw."
},
"intent": {
"type": "string",
"description": "Optional question or intent (max 500 characters). Only its SHA-256 hash is used and returned."
},
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"latitude": {
"type": "number",
"description": "Latitude from -90 to 90."
},
"longitude": {
"type": "number",
"description": "Longitude from -180 to 180."
},
"reversals": {
"type": "boolean",
"description": "Optional. Allow reversed cards (default true)."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}contextual_pairing — Contextual pairing (places and names, related)
Relates 2-8 world places and up to 8 named entities, deterministically. For each place: its ROAST-78 tile card and element. For every pair: elemental dignity (Golden Dawn rules: strengthening, friendly, opposing or neutral), same suit, lattice step, great-circle distance and initial bearing, and the card of the midpoint tile. Each name is turned into a card sequence with the Anagramic alphabet cipher (A-V = Major Arcana, W-Z = the four Aces), with its dominant element and its dignity with each place. For games, matchmaking, travel stories and multi-location worldbuilding. Includes a receipt hash. Price: $0.02 USDC per call after 25 free calls per day.
{
"type": "object",
"required": [
"places"
],
"properties": {
"places": {
"type": "array",
"items": {
"type": "object",
"required": [
"latitude",
"longitude"
],
"properties": {
"label": {
"type": "string"
},
"latitude": {
"type": "number"
},
"longitude": {
"type": "number"
}
}
},
"description": "2 to 8 places. GET: flat \"lat,lon,lat,lon\"."
},
"_payment": {
"type": "string",
"description": "x402 v2 payment: base64 PaymentPayload, as you would send in the PAYMENT-SIGNATURE header. Only needed after the free allowance is used."
},
"entities": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional. Up to 8 names (people, characters, places, brands), max 64 characters each. GET: comma-separated."
}
},
"additionalProperties": false
}{
"readOnlyHint": true,
"openWorldHint": false
}Prompts
Not advertised
Resources
Not advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 351 ms
- 95th percentile latency
- 351 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 351 ms · metadata changed · 13 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http value-verdicts-mcp https://value-verdicts.mcfulltime.workers.dev/mcpCodex
codex mcp add value-verdicts-mcp --url https://value-verdicts.mcfulltime.workers.dev/mcpCursor
{
"mcpServers": {
"value-verdicts-mcp": {
"url": "https://value-verdicts.mcfulltime.workers.dev/mcp"
}
}
}Cline
{
"mcpServers": {
"value-verdicts-mcp": {
"type": "streamableHttp",
"url": "https://value-verdicts.mcfulltime.workers.dev/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"value-verdicts-mcp": {
"type": "http",
"url": "https://value-verdicts.mcfulltime.workers.dev/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http value-verdicts-mcp https://value-verdicts.mcfulltime.workers.dev/mcpClaude Desktop
{
"mcpServers": {
"value-verdicts-mcp": {
"url": "https://value-verdicts.mcfulltime.workers.dev/mcp"
}
}
}Windsurf
{
"mcpServers": {
"value-verdicts-mcp": {
"serverUrl": "https://value-verdicts.mcfulltime.workers.dev/mcp"
}
}
}Let your agent find its tools
Find servers like VALUE Verdicts MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.