Oceanir
Server Details
Locate photos from visual clues and assess location claims with candidates and uncertainty.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- Oceanir/oceanir-mcp
- GitHub Stars
- 0
- Server Listing
- Oceanir MCP
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 3 tools
check_credits is clearly separate (account/billing vs. image analysis). geolocate_image and verify_location_claim overlap in that both locate an image, but the descriptions draw a clear line: one returns coordinates, the other tests a pre-existing claim and returns a verdict. An agent could still hesitate over which to call when it 'has a claim', but the descriptions resolve it.
All three names follow a consistent snake_case verb_noun pattern: check_credits, geolocate_image, verify_location_claim. Verb choices (check/geolocate/verify) are distinct and predictable.
Three tools is on the thin side but well-matched to a focused geolocation service: one analysis tool, one verification wrapper, one account utility. Nothing feels redundant or missing at the surface level, though a batch or history tool would round it out.
The core lifecycle—find location, validate a claim, check credits—is covered with no dead ends, and unverifiable is defined as a legitimate outcome. Minor gaps: no batch geolocation, no retrieval of past analyses, and no explicit handling of input validation or supported image sources.
Available Tools
3 toolscheck_creditsCheck Oceanir creditsARead-onlyIdempotentInspect
Check the authenticated Oceanir account's current credit balance and remaining monthly allowance.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile needs no restating. The description adds value by disclosing that the account is taken from authentication (no way to query another account) and by naming the two returned quantities, balance and remaining monthly allowance.
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?
One sentence, no filler, with the resource and its scope front-loaded. Every clause earns its place.
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 zero-parameter, annotated, read-only tool with no output schema, this covers almost everything an agent needs. Minor gaps: it does not state currency/units, whether the monthly allowance resets on a known date, or the failure behavior when unauthenticated.
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?
Zero parameters, so the baseline is 4. The description positively reinforces this by attributing account scoping to authentication rather than to an argument, confirming no inputs are needed.
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 ('Check') and a specific resource ('current credit balance and remaining monthly allowance') scoped to the authenticated Oceanir account. It is trivially distinguishable from the geolocation-verification siblings, so no explicit sibling contrast is needed, though none is given.
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?
Usage is only implied: an agent can infer it should call this before or after spend-consuming operations, but the description never says when to use it, when not to, or what alternative exists (e.g., a usage/history tool). No prerequisites or call-order guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
geolocate_imageLocate a photoAInspect
Analyze an image and return its probable real-world location. Returns ranked coordinates with a confidence score and the visual evidence chain the analysis used (architecture, signage, vegetation, terrain, lighting). No EXIF or GPS required. Reads the scene only (architecture, signage, terrain, vegetation), never the people in it. No face recognition, no biometric identification, no person matching. It answers where an image was taken, never who is in it, and must not be used to locate or track a person.
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | Analysis depth. 1 = Surface (region scan, 1 credit). 2 = Standard (ranked candidates with evidence, 2 credits). 3 = Forensic (deeper reasoning and contradiction checks, 10 credits). | |
| scope | No | The location being claimed. Oceanir treats this as a search boundary and never as evidence: it can only narrow the search, never raise confidence, and the model will reject it outright on hard image-legible contradiction (signage in an impossible script, the wrong driving side, a landmark that is elsewhere). | |
| image_b64 | No | Base64-encoded image bytes (no data: prefix). | |
| image_url | No | Public HTTPS URL to the image to analyze. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description discloses the return shape (ranked coordinates, confidence score, an evidence chain of architecture/signage/vegetation/terrain/lighting) and hard privacy limits (no face recognition, no biometric identification, no person matching). The significant omission is cost: depth tiers silently consume 1, 2, or 10 credits, a fact only the schema exposes, and the description never warns that deeper analysis is ten times more expensive.
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?
The result and its evidence chain are front-loaded in the first sentence, and the ethical constraints come after. The privacy disclaimer is spread over three consecutive sentences ('never the people in it', 'no face recognition...', 'never who is in it') which restate the same boundary and could be compressed into one without losing meaning.
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 no output schema, the description carries the return contract itself and does so adequately: ranked coordinates, confidence, and the evidence chain. For a 4-parameter, nested-object, open-world analysis tool, the only uncovered area is credit cost and sibling routing, both of which are minor against the otherwise complete picture of purpose, limits, and output.
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 100% and the nested scope object, depth enum costs, and captured_at timestamp semantics are all fully documented in the schema, so the baseline is 3. The description adds only peripheral context ('No EXIF or GPS required' implying image_url/image_b64 sourcing) and does not interpret depth, scope, or the anyOf image-source requirement in its own words.
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 precise verb+resource ('Analyze an image and return its probable real-world location') and even enumerates the evidence classes the result is built from, so an agent knows exactly what it gets back. It never names or contrasts with its siblings verify_location_claim and check_credits, so the agent must infer from names alone which one to reach for.
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?
Strong exclusionary guidance: 'No EXIF or GPS required', 'It answers where an image was taken, never who is in it, and must not be used to locate or track a person' tells the agent clearly when not to invoke. However, it gives no routing to the obvious alternative (verify_location_claim) even though the tool accepts a claimed location via scope, leaving the agent to guess which of the two performs the verification.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_location_claimCheck a photo location claimAInspect
Test whether an image is consistent with a location someone has already claimed: a listing's stated city, an address on a case file or claim form, a caption. Oceanir locates the image from visual evidence alone FIRST, then compares. Returns a verdict of agrees, contradicts, or unverifiable, with the distance between the claim and the evidence. unverifiable means the image does not settle it and the item needs a human. It is a real answer, not a failure. A verdict of agrees means the image is consistent with the claim, not that the claim is true. Reads the scene only (architecture, signage, terrain, vegetation), never the people in it. No face recognition, no biometric identification, no person matching. It answers where an image was taken, never who is in it, and must not be used to locate or track a person.
| Name | Required | Description | Default |
|---|---|---|---|
| depth | No | Analysis depth. 2 = Standard is the right default for verification; 1 = Surface is city-level only and will rarely contradict anything; 3 = Forensic adds contradiction checks (10 credits). | |
| scope | Yes | The location being claimed. Oceanir treats this as a search boundary and never as evidence: it can only narrow the search, never raise confidence, and the model will reject it outright on hard image-legible contradiction (signage in an impossible script, the wrong driving side, a landmark that is elsewhere). | |
| image_b64 | No | Base64-encoded image bytes (no data: prefix). | |
| image_url | No | Public HTTPS URL to the image to test. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well past annotations (readOnlyHint=false, openWorldHint=true) by disclosing the return verdict set, the meaning of each verdict, the distance output, the explicit caveat that `agrees` proves consistency not truth, and the privacy boundary (scene only, no faces/biometrics, never for tracking people). These are exactly the behavioral traits an agent needs before calling an open-world, credit-consuming analysis.
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?
The verdict behavior and the scoping caveat are front-loaded and high value. The closing privacy sentences are somewhat repetitive ('never the people', 'no face recognition, no biometric identification, no person matching', 'never who is in it') and could be tightened.
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?
No output schema exists, so the description takes on the burden of explaining return values and does so fully (verdict enum, distance, unverifiable semantics). Combined with the privacy scope and the pre-explained search-boundary behavior of `scope`, an agent has everything needed to call and interpret this correctly.
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 100% and the schema itself richly documents `depth`, `scope`, `radius_km`, and `captured_at` semantics. The description adds no parameter-level detail beyond that, so the baseline 3 applies.
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 ('test whether an image is consistent with a location someone has already claimed') and clarifies the two-stage internal behavior (locate first, then compare). It implicitly distinguishes itself from geolocate_image by framing itself as verification against an existing claim.
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?
Gives concrete usage contexts (listing's stated city, case file address, caption) and explains that `unverifiable` means a human is needed, which is a decision rule for the agent. It does not explicitly say 'use geolocate_image instead when no claim exists', leaving that inference to the agent, so it falls 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.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
check_credits - First observed
geolocate_image - First observed
verify_location_claim
Related MCP Connectors
Find nearby photo spots using real street imagery, visual scores and camera headings.
Resolve coordinates and geographic identifiers to loc_id, crosswalks, and bounded shapes.
Location understanding for AI agents: know where, then navigate there. Beta: contiguous US.
Find public photo spots and places to visit around a travel destination.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA local GeoGuessr-for-real-life: reads EXIF GPS and reasons over visual clues using a local uncensored vision-language model + a reasoning model — no cloud, no API keys, nothing uploaded.1-
- AlicenseAqualityAmaintenanceCite-able, content-addressed, signed memory of every place on Earth1877Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables MCP clients to run evidence-based geolocation investigations: managing cases, candidates, observations and evidence with optimistic revisions and hash-chained audit logs, performing WGS84 geodesic and sun/shadow math, extracting EXIF/XMP metadata from original images, and issuing controlled OSM Overpass queries within governed geographic search scopes. The server validates inputs, does the deterministic math and controls lookups while the client's own model supplies visual reasoning, keeping executed calls, metadata, and verified locations as distinct claims.MIT
- AlicenseAqualityCmaintenanceA Local Computer Vision Engine for Photo Libraries85MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.