Agentic Shelf
Hosted MCP for e-commerce: live product catalog, stock, and pricing for AI agents.
Executive verdict
Current trust snapshot
trustsnap_3bb9cc767b24282fOwn this MCP?
Claim ownership, prove control with a GitHub, DNS, or HTTP token challenge, revalidate now, publish a badge, and configure monitoring.
POST /v1/servers/ai.agenticshelf/mcp/revalidateBadge embed
[](https://verify.sentinelsignal.io/servers/ai.agenticshelf/mcp)
MCP TrustOps
TrustOps turns this report into operational controls: freshness SLAs, authenticated validation, semantic benchmarks, policy exports, alert subscriptions, badges, cost/compliance metadata, and runtime routing. Fresh trusted index decisions stay separate from long-tail inventory so stale scores do not masquerade as current evidence.
/v1/routeAlert subscription types
Production readiness class
Evidence confidence
Recommended for
Client compatibility verdicts
Client compatibility only means the server shape can work with a client. Production trust decision and write-action publishing are evaluated separately so a client-compatible server can still be blocked for production.
Evidence provenance
initialize• OKtools_list• OKtransport_compliance_probe• Warningstep_up_auth_probe• Missingconnector_replay_probe• OK — Frozen tool snapshots must survive refresh.request_association_probe• Missing — Roots, sampling, and elicitation should stay request-scoped.
Evidence provenance
initialize• OKtools_list• OKtransport_compliance_probe• Warning
Evidence provenance
action_safety_probe• Error
Evidence provenance
tool_snapshot_probe• OKconnector_replay_probe• OK
Why compatibility is limited by client
Remediation checklist
- No explicit blockers recorded.
Remediation checklist
- No explicit blockers recorded.
Remediation checklist
- No explicit blockers recorded.
Verdict traces
- No active alert triggers.
Client verdict trace table
| Verdict | Status | Checks | Winning source | Conflicts |
|---|---|---|---|---|
openai_connectors |
Partially client-compatible | initialize, tools_list, transport_compliance_probe, step_up_auth_probe, connector_replay_probe, request_association_probe | live_validation | none |
claude_desktop |
Client-compatible | initialize, tools_list, transport_compliance_probe | live_validation | none |
unsafe_for_write_actions |
Publishing blocked | action_safety_probe | live_validation | none |
snapshot_churn_risk |
Low | tool_snapshot_probe, connector_replay_probe | history | none |
Publishability policy profiles
- Search Fetch Only: No
- Write Actions Present: Yes
- Oauth Configured: No
- Admin Refresh Required: No
- Safe For Company Knowledge: No
- Safe For Messages Api Remote Mcp: No
- Search Fetch Only: No
- Write Actions Present: Yes
- Oauth Configured: No
- Admin Refresh Required: No
- Safe For Company Knowledge: No
- Safe For Messages Api Remote Mcp: No
Compatibility fixtures
- remote_http_endpoint: Passes
- oauth_discovery: Degraded
- frozen_tool_snapshot_refresh: Passes
- request_association: Passes
- remote_transport: Passes
- tool_discovery: Passes
- auth_connect: Passes
- safe_write_review: Degraded
Authenticated validation sessions
Public validation is free. Authenticated validation is paid and proves scoped behavior, write-action safeguards, and authenticated tool execution.
/v1/verify/v1/ci/previewPublic server reputation
Incident & change feed
| Timestamp | Event | Details |
|---|---|---|
| May 13, 2026 02:20:00 PM UTC | Latest validation: healthy | Score 74.4 with status healthy. |
| May 13, 2026 02:20:00 PM UTC | Score changed | Score delta -0.4 versus the previous run. |
| May 13, 2026 02:19:09 AM UTC | Score changed | Score delta +0.5 versus the previous run. |
| May 12, 2026 02:18:12 PM UTC | Score changed | Score delta +3.7 versus the previous run. |
Capabilities
- OAuth:
- DCR/CIMD:
- Prompts:
- Homepage: https://www.agenticshelf.ai
- Docs: none
- Support: none
- Icon: none
- Remote endpoint: https://api.agenticshelf.ai/mcp
- Server card: none
Security posture
Tool capability & risk inventory
| Tool | Capabilities | Risk | Findings | Notes |
|---|---|---|---|---|
check_stock |
read network | Medium | none | No explicit safeguard hints detected. |
get_product_details |
read | Low | none | No explicit safeguard hints detected. |
get_price |
read | Low | none | No explicit safeguard hints detected. |
list_products |
read network export | Medium | bulk data access | Safeguards hinted in metadata. |
search_products |
read exec network export | High | command execution bulk data access freeform input surface | No explicit safeguard hints detected. |
Write-action governance
Status detail: 1 high-risk tool(s), 1 exec-capable tool(s) are exposed without a clear auth boundary; 1 safeguard(s) and 0 confirmation signal(s) detected.
| Tool | Risk | Flags | Safeguards |
|---|---|---|---|
search_products |
High | command execution bulk data access freeform input surface | no |
Action-controls diff
New actions
| Action | Risk | Flags |
|---|---|---|
| No newly added actions. | ||
Changed actions
| Action | Change types | Risk |
|---|---|---|
| No materially changed actions. | ||
Why this score?
Algorithmic score breakdown
Compatibility profiles
Connector URL: https://api.agenticshelf.ai/mcp # No OAuth metadata detected. # Server: ai.agenticshelf/mcp
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": ["mcp-remote", "https://api.agenticshelf.ai/mcp"]
}
}
}
smithery mcp add "https://api.agenticshelf.ai/mcp"
curl -sS https://api.agenticshelf.ai/mcp -H 'content-type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"mcp-verify","version":"0.1.0"}}}'
Actionable remediation
| Severity | Remediation | Why it matters | Recommended action |
|---|---|---|---|
| High | Add confirmation and dry-run semantics for risky actions | High-risk write, delete, exec, or egress tools should communicate safeguards clearly. | Inspect the latest validation evidence and resolve the client-visible regression.Playbook
|
| High | Align session and protocol behavior with Streamable HTTP expectations | Clients increasingly rely on MCP-Protocol-Version, session teardown, and expired-session semantics. | Align MCP-Protocol-Version, MCP-Session-Id, DELETE teardown, and expired-session handling with the transport spec.Playbook
|
| High | Associate roots, sampling, and elicitation with active client requests | Modern MCP guidance expects roots, sampling, and elicitation traffic to be tied to an active client request instead of arriving unsolicited on idle sessions. | Inspect the latest validation evidence and resolve the client-visible regression.Playbook
|
| High | Expose /.well-known/oauth-protected-resource | Without a protected-resource document, OAuth clients cannot discover auth requirements reliably. | Serve /.well-known/oauth-protected-resource and point it at your authorization server metadata.Playbook
|
| High | Publish OAuth authorization-server metadata | Clients need authorization-server metadata to discover issuer, endpoints, and DCR support. | Publish /.well-known/oauth-authorization-server from your issuer and include registration_endpoint when supported.Playbook
|
| Medium | Adopt a current MCP protocol revision | Older protocol revisions reduce compatibility with newer clients and registry programs. | Inspect the latest validation evidence and resolve the client-visible regression.Playbook
|
| Medium | Close connector-publishing gaps | Connector catalogs care about protocol recency, session behavior, auth clarity, and tool-surface stability. | Inspect the latest validation evidence and resolve the client-visible regression.Playbook
|
| Medium | Document minimal scopes and return cleaner auth challenges | Modern clients expect granular scopes and step-up auth signals such as WWW-Authenticate scope hints. | Return granular scopes and WWW-Authenticate challenge hints instead of forcing overly broad auth upfront.Playbook
|
| Medium | Publish OpenID configuration | OIDC metadata improves token validation and client compatibility. | Expose /.well-known/openid-configuration with issuer, jwks_uri, and supported grants.Playbook
|
| Medium | Support resumable HTTP sessions cleanly | Modern MCP clients increasingly expect resumable session behavior on streamable HTTP transports. | Inspect the latest validation evidence and resolve the client-visible regression.Playbook
|
| Low | Expose modern utility surfaces like completions, pagination, or tasks | Utility coverage improves interoperability with larger clients and long-lived agent workflows. | Expose completions, pagination, and task metadata where supported so larger clients can plan and resume work safely.Playbook
|
| Low | Publish newer MCP capability signals | Roots, sampling, elicitation, structured outputs, and related metadata improve client understanding and ranking. | Inspect the latest validation evidence and resolve the client-visible regression.Playbook
|
Point loss breakdown
| Component | Current | Points missing |
|---|---|---|
| Recovery Semantics | 0/4 | -4.0 |
| Error Contract | 0/4 | -4.0 |
| Utility Coverage | 2/4 | -2.0 |
| Trust Confidence | 2/4 | -2.0 |
| Transport Compliance | 2/4 | -2.0 |
| Spec Recency | 2/4 | -2.0 |
| Schema Completeness | 2/4 | -2.0 |
| Resource Contract | 2/4 | -2.0 |
| Rate Limit Semantics | 2/4 | -2.0 |
| Prompt Contract | 2/4 | -2.0 |
| Least Privilege Scope | 2/4 | -2.0 |
| Execution Sandbox Safety | 2/4 | -2.0 |
Validation diff
Regressed checks: none
Improved checks: none
| Component | Previous | Latest | Delta |
|---|---|---|---|
trust_confidence_score | 3.81 | 2.0 | -1.81 |
freshness_confidence_score | 3.0 | 4.0 | 1.0 |
Tool snapshot diff & changelog
Required-argument changes
| Tool | Added required args | Removed required args |
|---|---|---|
| No required-argument changes detected. | ||
Output-schema drift
| Tool | Previous properties | Latest properties |
|---|---|---|
| No output-schema drift detected. | ||
Connector replay
Required-argument replay breaks
| Tool | Added required args | Removed required args |
|---|---|---|
| No required-argument replay breaks detected. | ||
Output-schema replay breaks
| Tool | Removed properties | Added properties |
|---|---|---|
| No output-schema replay breaks detected. | ||
Transport compliance drilldown
Issues: missing_session_id, missing_protocol_header
Request association
Utility coverage
Benchmark tasks
| Benchmark task | Status | Evidence |
|---|---|---|
| Discover tools | Passes |
|
| Read-only fetch flow | Degraded |
|
| OAuth-required connect | Degraded |
|
| Safe write flow with confirmation | Likely to fail |
|
Registry & provenance divergence
| Field | Registry | Live server card |
|---|---|---|
| Title | n/a | Agentic Shelf — Live Inventory |
| Version | n/a | 0.1.0 |
| Homepage | n/a | n/a |
Active alerts
No active alerts for the current server state.
Aliases & registry graph
| Identifier | Source | Canonical | Score |
|---|---|---|---|
ai.agenticshelf/mcp |
official_registry | yes | 74.41 |
Alias consolidation
Source disagreements
| Field | What differs | Observed values |
|---|---|---|
| No source disagreements detected. | ||
Install snippets
Connector URL: https://api.agenticshelf.ai/mcp # No OAuth metadata detected. # Server: ai.agenticshelf/mcp
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": ["mcp-remote", "https://api.agenticshelf.ai/mcp"]
}
}
}
smithery mcp add "https://api.agenticshelf.ai/mcp"
curl -sS https://api.agenticshelf.ai/mcp -H 'content-type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"mcp-verify","version":"0.1.0"}}}'
Agent access & tool surface
tools/list, prompts/list, and resources/list checks.ai.agenticshelf/mcp.Claims & monitoring
No verified maintainer claim recorded.
Alert routing
| Watch | Team | Channels | Minimum severity |
|---|---|---|---|
| No active watch destinations. | |||
Maintainer analytics
Maintainer response quality
Maintainer annotations
No maintainer annotations have been recorded yet.
Maintainer rebuttals & expected behavior
No maintainer rebuttals or expected-behavior overrides are recorded yet.
Latest validation evidence
Failures
oauth_authorization_serverno authorization serveroauth_protected_resourceClient error '404 Not Found' for url 'https://api.agenticshelf.ai/.well-known/oauth-protected-resource' For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404openid_configurationno authorization server
Checks
| Check | Status | Latency | Evidence |
|---|---|---|---|
action_safety_probe |
Error | n/a | 1 high-risk, 1 exec-capable tool(s); no clear auth boundary; safeguards=1; confirmation=none. |
advanced_capabilities_probe |
Warning | n/a | Only 3 capability signal(s): prompts, resources, structured outputs. |
connector_publishability_probe |
Warning | n/a | Publishability blockers: action safety. |
connector_replay_probe |
OK | n/a | Backward compatible with no breaking tool-surface changes. |
determinism_probe |
OK | 61.8 ms | Check completed |
initialize |
OK | 87.5 ms | Protocol 2025-03-26 |
interactive_flow_probe |
OK | n/a | Check completed |
oauth_authorization_server |
Missing | n/a | no authorization server |
oauth_protected_resource |
Error | 51.4 ms | Client error '404 Not Found' for url 'https://api.agenticshelf.ai/.well-known/oauth-protected-resource' For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404 |
official_registry_probe |
OK | n/a | Check completed |
openid_configuration |
Missing | n/a | no authorization server |
probe_noise_resilience |
OK | 42.4 ms | Fetched https://api.agenticshelf.ai/robots.txt |
prompt_get |
Missing | n/a | not advertised |
prompts_list |
OK | 47.6 ms | 0 prompt(s) exposed |
protocol_version_probe |
Warning | n/a | Claims 2025-03-26; 2 release(s) behind 2025-11-25. |
provenance_divergence_probe |
OK | n/a | Check completed |
request_association_probe |
Missing | n/a | No request-association capabilities were advertised. |
resource_read |
Missing | n/a | not advertised |
resources_list |
OK | 61.6 ms | 0 resource item(s) exposed |
server_card |
OK | 111.4 ms | authentication, capabilities, schema_version, serverInfo |
session_resume_probe |
Warning | n/a | no session id |
step_up_auth_probe |
Missing | n/a | No OAuth or incremental-scope signals detected. |
tool_snapshot_probe |
OK | n/a | Check completed |
tools_list |
OK | 64.1 ms | 5 tool(s) exposed |
transport_compliance_probe |
Warning | 61.1 ms | Issues: missing session id, missing protocol header (bad protocol=400). |
utility_coverage_probe |
Missing | 44.4 ms | No completions evidence; no pagination evidence; tasks missing. |
Raw evidence view
Show raw JSON evidence
{
"checks": {
"action_safety_probe": {
"details": {
"auth_present": false,
"confirmation_signals": [],
"safeguard_count": 1,
"summary": {
"bulk_access_tools": 2,
"capability_distribution": {
"exec": 1,
"export": 2,
"network": 3,
"read": 5
},
"destructive_tools": 0,
"egress_tools": 0,
"exec_tools": 1,
"high_risk_tools": 1,
"risk_distribution": {
"critical": 0,
"high": 1,
"low": 2,
"medium": 2
},
"secret_tools": 0,
"tool_count": 5
}
},
"latency_ms": null,
"status": "error"
},
"advanced_capabilities_probe": {
"details": {
"capabilities": {
"completions": false,
"elicitation": false,
"prompts": true,
"resource_links": false,
"resources": true,
"roots": false,
"sampling": false,
"structured_outputs": true
},
"enabled": [
"prompts",
"resources",
"structured_outputs"
],
"enabled_count": 3,
"initialize_capability_keys": [
"experimental",
"prompts",
"resources",
"tools"
]
},
"latency_ms": null,
"status": "warning"
},
"connector_publishability_probe": {
"details": {
"blockers": [
"action_safety"
],
"criteria": {
"action_safety": false,
"auth_flow": true,
"connector_replay": true,
"initialize": true,
"protocol_version": true,
"remote_transport": true,
"request_association": true,
"server_card": true,
"session_resume": true,
"step_up_auth": true,
"tool_surface": true,
"tools_list": true,
"transport_compliance": true
},
"high_risk_tools": 1,
"tool_count": 5,
"transport": "streamable-http"
},
"latency_ms": null,
"status": "warning"
},
"connector_replay_probe": {
"details": {
"added_tools": [],
"additive_output_changes": [],
"backward_compatible": true,
"output_breaks": [],
"removed_tools": [],
"required_arg_breaks": [],
"would_break_after_refresh": false
},
"latency_ms": null,
"status": "ok"
},
"determinism_probe": {
"details": {
"attempts": 2,
"baseline_signature": "51aae36c3e5e357adfd9f975e30bd2ba660c78ad67a9355bdac97cdf58205059",
"errors": [],
"matches": 2,
"stable_ratio": 1.0,
"successful": 2
},
"latency_ms": 61.83,
"status": "ok"
},
"initialize": {
"details": {
"headers": {
"content-type": "application/json"
},
"http_status": 200,
"payload": {
"id": 1,
"jsonrpc": "2.0",
"result": {
"capabilities": {
"experimental": {},
"prompts": {
"listChanged": false
},
"resources": {
"listChanged": false,
"subscribe": false
},
"tools": {
"listChanged": false
}
},
"protocolVersion": "2025-03-26",
"serverInfo": {
"name": "AgenticShelf-Inventory",
"version": "1.26.0"
}
}
},
"url": "https://api.agenticshelf.ai/mcp"
},
"latency_ms": 87.5,
"status": "ok"
},
"interactive_flow_probe": {
"details": {
"oauth_supported": false,
"prompt_available": false,
"risk_hits": [],
"safe_hits": [
"oauth"
]
},
"latency_ms": null,
"status": "ok"
},
"oauth_authorization_server": {
"details": {
"reason": "no_authorization_server"
},
"latency_ms": null,
"status": "missing"
},
"oauth_protected_resource": {
"details": {
"error": "Client error '404 Not Found' for url 'https://api.agenticshelf.ai/.well-known/oauth-protected-resource'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404",
"url": "https://api.agenticshelf.ai/.well-known/oauth-protected-resource"
},
"latency_ms": 51.38,
"status": "error"
},
"official_registry_probe": {
"details": {
"direct_match": true,
"official_peer_count": 1,
"registry_identifier": "ai.agenticshelf/mcp",
"registry_source": "official_registry"
},
"latency_ms": null,
"status": "ok"
},
"openid_configuration": {
"details": {
"reason": "no_authorization_server"
},
"latency_ms": null,
"status": "missing"
},
"probe_noise_resilience": {
"details": {
"headers": {
"content-type": "application/json"
},
"http_status": 404,
"url": "https://api.agenticshelf.ai/robots.txt"
},
"latency_ms": 42.39,
"status": "ok"
},
"prompt_get": {
"details": {
"reason": "not_advertised"
},
"latency_ms": null,
"status": "missing"
},
"prompts_list": {
"details": {
"headers": {
"content-type": "application/json"
},
"http_status": 200,
"payload": {
"id": 3,
"jsonrpc": "2.0",
"result": {
"prompts": []
}
},
"url": "https://api.agenticshelf.ai/mcp"
},
"latency_ms": 47.57,
"status": "ok"
},
"protocol_version_probe": {
"details": {
"claimed_version": "2025-03-26",
"lag_days": 244,
"latest_known_version": "2025-11-25",
"releases_behind": 2,
"validator_protocol_version": "2025-03-26"
},
"latency_ms": null,
"status": "warning"
},
"provenance_divergence_probe": {
"details": {
"direct_official_match": true,
"drift_fields": [],
"metadata_document_count": 3,
"registry_homepage": null,
"registry_repository": null,
"registry_title": null,
"registry_version": null,
"server_card_homepage": null,
"server_card_repository": null,
"server_card_title": "Agentic Shelf \u2014 Live Inventory",
"server_card_version": "0.1.0"
},
"latency_ms": null,
"status": "ok"
},
"request_association_probe": {
"details": {
"reason": "no_request_association_capabilities_advertised"
},
"latency_ms": null,
"status": "missing"
},
"resource_read": {
"details": {
"reason": "not_advertised"
},
"latency_ms": null,
"status": "missing"
},
"resources_list": {
"details": {
"headers": {
"content-type": "application/json"
},
"http_status": 200,
"payload": {
"id": 5,
"jsonrpc": "2.0",
"result": {
"resources": []
}
},
"url": "https://api.agenticshelf.ai/mcp"
},
"latency_ms": 61.63,
"status": "ok"
},
"server_card": {
"details": {
"headers": {
"content-type": "application/json"
},
"http_status": 200,
"payload": {
"authentication": {
"description": "Anonymous tools/list works for discovery. Authenticated tool calls require an Authorization: Bearer <Firebase ID token> header \u2014 tokens are issued via the merchant console at agenticshelf.ai/console after a customer signs in with Google and OAuth-connects their Shopify store.",
"required": false,
"scheme": "firebase-id-token",
"tokenSource": "https://www.agenticshelf.ai/console",
"type": "bearer"
},
"capabilities": {
"tools": [
{
"description": "Real-time inventory, price, and shipping availability for a product SKU. Returns stock count, price in USD, can_ship_today flag.",
"inputSchema": {
"properties": {
"sku": {
"description": "Product SKU",
"type": "string"
}
},
"required": [
"sku"
],
"type": "object"
},
"name": "check_stock"
},
{
"description": "Full product metadata: title, description, image URL, tags, inventory quantity. Optimized for AI agents.",
"inputSchema": {
"properties": {
"sku": {
"description": "Product SKU",
"type": "string"
}
},
"required": [
"sku"
],
"type": "object"
},
"name": "get_product_details"
},
{
"description": "Current price in USD for a product SKU.",
"inputSchema": {
"properties": {
"sku": {
"description": "Product SKU",
"type": "string"
}
},
"required": [
"sku"
],
"type": "object"
},
"name": "get_price"
}
]
},
"schema_version": "2026-04",
"serverInfo": {
"description": "Real-time product catalog and inventory across multi-tenant e-commerce stores via MCP. Each merchant connects their Shopify store via OAuth at agenticshelf.ai/console; AI agents query their live catalog using a per-tenant Firebase ID token.",
"documentation": "https://www.agenticshelf.ai/console",
"homepage": "https://www.agenticshelf.ai",
"name": "Agentic Shelf \u2014 Live Inventory",
"repository": "https://github.com/vboykoCTO/agentic-shelf",
"vendor": "Agentic Shelf",
"version": "0.1.0"
},
"tags": [
"e-commerce",
"shopify",
"inventory",
"shopping",
"agent",
"multi-tenant"
],
"transport": {
"endpoint": "https://api.agenticshelf.ai/mcp",
"type": "streamable-http"
}
},
"url": "https://api.agenticshelf.ai/.well-known/mcp/server-card.json"
},
"latency_ms": 111.37,
"status": "ok"
},
"session_resume_probe": {
"details": {
"protocol_version": "2025-03-26",
"reason": "no_session_id",
"resume_expected": true,
"transport": "streamable-http"
},
"latency_ms": null,
"status": "warning"
},
"step_up_auth_probe": {
"details": {
"auth_required_checks": [],
"broad_scopes": [],
"challenge_headers": [],
"minimal_scope_documented": false,
"oauth_present": false,
"scope_specificity_ratio": 0.0,
"step_up_signals": [],
"supported_scopes": []
},
"latency_ms": null,
"status": "missing"
},
"tool_snapshot_probe": {
"details": {
"added": [],
"changed_outputs": [],
"current_tool_count": 5,
"previous_tool_count": 5,
"removed": [],
"similarity": 1.0
},
"latency_ms": null,
"status": "ok"
},
"tools_list": {
"details": {
"headers": {
"content-type": "application/json"
},
"http_status": 200,
"payload": {
"id": 2,
"jsonrpc": "2.0",
"result": {
"tools": [
{
"description": "\n Check real-time inventory, price, and shipping for a product SKU.\n\n This tool queries the connected e-commerce platform (Shopify, WooCommerce, etc.)\n for live inventory data. Returns current stock level, price, and\n availability status.\n\n Args:\n sku: Product SKU (Stock Keeping Unit) - e.g., \"RED-WIDGET-001\"\n\n Returns:\n Dictionary with:\n - sku: The requested SKU\n - stock: Current inventory count\n - price: Current price in USD\n - can_ship_today: Boolean indicating same-day shipping availability\n - message: Human-readable status message\n\n Example:\n >>> await check_stock(\"WIDGET-001\")\n {\n \"sku\": \"WIDGET-001\",\n \"stock\": 42,\n \"price\": 29.99,\n \"can_ship_today\": True,\n \"message\": \"\u2705 WIDGET-001 (Awesome Widget) - 42 in stock at $29.99\"\n }\n ",
"inputSchema": {
"properties": {
"sku": {
"title": "Sku",
"type": "string"
}
},
"required": [
"sku"
],
"title": "check_stockArguments",
"type": "object"
},
"name": "check_stock",
"outputSchema": {
"additionalProperties": true,
"title": "check_stockDictOutput",
"type": "object"
}
},
{
"description": "\n Get full product details optimized for AI agents (structured JSON).\n\n Args:\n sku: Product SKU - e.g., \"WIDGET-001\"\n\n Returns:\n Dictionary with catalog fields; ``found`` is False when the SKU is missing.\n ",
"inputSchema": {
"properties": {
"sku": {
"title": "Sku",
"type": "string"
}
},
"required": [
"sku"
],
"title": "get_product_detailsArguments",
"type": "object"
},
"name": "get_product_details",
"outputSchema": {
"additionalProperties": true,
"title": "get_product_detailsDictOutput",
"type": "object"
}
},
{
"description": "\n Get current price for a product SKU.\n\n Args:\n sku: Product SKU - e.g., \"WIDGET-001\"\n\n Returns:\n Dictionary with sku and current price\n\n Example:\n >>> await get_price(\"WIDGET-001\")\n {\"sku\": \"WIDGET-001\", \"price\": 29.99, \"currency\": \"USD\"}\n ",
"inputSchema": {
"properties": {
"sku": {
"title": "Sku",
"type": "string"
}
},
"required": [
"sku"
],
"title": "get_priceArguments",
"type": "object"
},
"name": "get_price",
"outputSchema": {
"additionalProperties": true,
"title": "get_priceDictOutput",
"type": "object"
}
},
{
"description": "List products from the connected store, paginated.\n\n Use this tool when an agent needs to DISCOVER products by browsing the\n catalog rather than VERIFYING a known SKU. The response includes the SKU\n for every product, so a follow-up ``check_stock(sku)`` or\n ``get_product_details(sku)`` is a natural next step.\n\n Args:\n limit: Number of products to return (1-50, default 10).\n cursor: Opaque cursor from a previous response's ``next_cursor``.\n Omit for the first page.\n\n Returns:\n Dictionary with:\n - products: list of {sku, title, description (\u2264400 chars),\n product_type, tags, price, currency, available, image_url,\n storefront_url}\n - next_cursor: str or null \u2014 pass to the next call to paginate\n - has_more: bool \u2014 whether more products exist\n - live / source: provenance flags\n ",
"inputSchema": {
"properties": {
"cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Cursor"
},
"limit": {
"default": 10,
"title": "Limit",
"type": "integer"
}
},
"title": "list_productsArguments",
"type": "object"
},
"name": "list_products",
"outputSchema": {
"additionalProperties": true,
"title": "list_productsDictOutput",
"type": "object"
}
},
{
"description": "Search products in the connected store by keyword.\n\n Use this when a shopper's query suggests specific terms the agent can\n match against product titles or tags \u2014 e.g. \"HEPA air purifier\" or\n \"leather wristwatch\". Matches Shopify's native storefront search\n behavior, so results align with what customers would find on the site.\n\n Args:\n query: Keyword or phrase to match.\n limit: Max products to return (1-50, default 10).\n\n Returns:\n Same shape as ``list_products``. Empty products list when no matches.\n ",
"inputSchema": {
"properties": {
"limit": {
"default": 10,
"title": "Limit",
"type": "integer"
},
"query": {
"title": "Query",
"type": "string"
}
},
"required": [
"query"
],
"title": "search_productsArguments",
"type": "object"
},
"name": "search_products",
"outputSchema": {
"additionalProperties": true,
"title": "search_productsDictOutput",
"type": "object"
}
}
]
}
},
"url": "https://api.agenticshelf.ai/mcp"
},
"latency_ms": 64.07,
"status": "ok"
},
"transport_compliance_probe": {
"details": {
"bad_protocol_error": null,
"bad_protocol_headers": {
"content-type": "application/json"
},
"bad_protocol_payload": {
"error": {
"code": -32600,
"message": "Bad Request: Unsupported protocol version: 1999-99-99. Supported versions: 2024-11-05, 2025-03-26, 2025-06-18, 2025-11-25"
},
"id": "server-error",
"jsonrpc": "2.0"
},
"bad_protocol_status_code": 400,
"delete_error": null,
"delete_status_code": null,
"expired_session_error": null,
"expired_session_status_code": null,
"issues": [
"missing_session_id",
"missing_protocol_header"
],
"last_event_id_visible": false,
"protocol_header_present": false,
"requested_protocol_version": "2025-03-26",
"session_id_present": false,
"transport": "streamable-http"
},
"latency_ms": 61.13,
"status": "warning"
},
"utility_coverage_probe": {
"details": {
"completions": {
"advertised": false,
"live_probe": "not_executed",
"sample_target": null
},
"initialize_capability_keys": [
"experimental",
"prompts",
"resources",
"tools"
],
"pagination": {
"metadata_signal": false,
"next_cursor_methods": [],
"supported": false
},
"tasks": {
"advertised": false,
"http_status": 200,
"probe_status": "missing"
}
},
"latency_ms": 44.35,
"status": "missing"
}
},
"failures": {
"oauth_authorization_server": {
"reason": "no_authorization_server"
},
"oauth_protected_resource": {
"error": "Client error '404 Not Found' for url 'https://api.agenticshelf.ai/.well-known/oauth-protected-resource'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404",
"url": "https://api.agenticshelf.ai/.well-known/oauth-protected-resource"
},
"openid_configuration": {
"reason": "no_authorization_server"
}
},
"remote_url": "https://api.agenticshelf.ai/mcp",
"server_card_payload": {
"authentication": {
"description": "Anonymous tools/list works for discovery. Authenticated tool calls require an Authorization: Bearer <Firebase ID token> header \u2014 tokens are issued via the merchant console at agenticshelf.ai/console after a customer signs in with Google and OAuth-connects their Shopify store.",
"required": false,
"scheme": "firebase-id-token",
"tokenSource": "https://www.agenticshelf.ai/console",
"type": "bearer"
},
"capabilities": {
"tools": [
{
"description": "Real-time inventory, price, and shipping availability for a product SKU. Returns stock count, price in USD, can_ship_today flag.",
"inputSchema": {
"properties": {
"sku": {
"description": "Product SKU",
"type": "string"
}
},
"required": [
"sku"
],
"type": "object"
},
"name": "check_stock"
},
{
"description": "Full product metadata: title, description, image URL, tags, inventory quantity. Optimized for AI agents.",
"inputSchema": {
"properties": {
"sku": {
"description": "Product SKU",
"type": "string"
}
},
"required": [
"sku"
],
"type": "object"
},
"name": "get_product_details"
},
{
"description": "Current price in USD for a product SKU.",
"inputSchema": {
"properties": {
"sku": {
"description": "Product SKU",
"type": "string"
}
},
"required": [
"sku"
],
"type": "object"
},
"name": "get_price"
}
]
},
"schema_version": "2026-04",
"serverInfo": {
"description": "Real-time product catalog and inventory across multi-tenant e-commerce stores via MCP. Each merchant connects their Shopify store via OAuth at agenticshelf.ai/console; AI agents query their live catalog using a per-tenant Firebase ID token.",
"documentation": "https://www.agenticshelf.ai/console",
"homepage": "https://www.agenticshelf.ai",
"name": "Agentic Shelf \u2014 Live Inventory",
"repository": "https://github.com/vboykoCTO/agentic-shelf",
"vendor": "Agentic Shelf",
"version": "0.1.0"
},
"tags": [
"e-commerce",
"shopify",
"inventory",
"shopping",
"agent",
"multi-tenant"
],
"transport": {
"endpoint": "https://api.agenticshelf.ai/mcp",
"type": "streamable-http"
}
},
"server_identifier": "ai.agenticshelf/mcp"
}
Known versions
1.0.0
Validation history
| Timestamp | Status | Score | Latency | Tools |
|---|---|---|---|---|
| May 13, 2026 02:20:00 PM UTC | Healthy | 74.4 | 705.5 ms | 5 |
| May 13, 2026 02:19:09 AM UTC | Healthy | 74.8 | 597.5 ms | 5 |
| May 12, 2026 02:18:12 PM UTC | Healthy | 74.4 | 633.0 ms | 5 |
| May 12, 2026 02:17:42 AM UTC | Healthy | 70.7 | 553.8 ms | 5 |
Validation timeline
| Validated | Summary | Score | Protocol | Auth mode | Tools | High-risk tools | Changes |
|---|---|---|---|---|---|---|---|
| May 13, 2026 02:20:00 PM UTC | Healthy | 74.4 | 2025-03-26 | public | 5 | 1 | none |
| May 13, 2026 02:19:09 AM UTC | Healthy | 74.8 | 2025-03-26 | public | 5 | 1 | none |
| May 12, 2026 02:18:12 PM UTC | Healthy | 74.4 | 2025-03-26 | public | 5 | 1 | none |
| May 12, 2026 02:17:42 AM UTC | Healthy | 70.7 | 2025-03-26 | public | 5 | 1 | none |
Recent validation runs
| Started | Status | Summary | Latency | Checks |
|---|---|---|---|---|
| May 13, 2026 02:20:00 PM UTC | Completed | Healthy | 705.5 ms | action_safety_probe, advanced_capabilities_probe, connector_publishability_probe, connector_replay_probe, determinism_probe, initialize, interactive_flow_probe, oauth_authorization_server, oauth_protected_resource, official_registry_probe, openid_configuration, probe_noise_resilience, prompt_get, prompts_list, protocol_version_probe, provenance_divergence_probe, request_association_probe, resource_read, resources_list, server_card, session_resume_probe, step_up_auth_probe, tool_snapshot_probe, tools_list, transport_compliance_probe, utility_coverage_probe |
| May 13, 2026 02:19:08 AM UTC | Completed | Healthy | 597.5 ms | action_safety_probe, advanced_capabilities_probe, connector_publishability_probe, connector_replay_probe, determinism_probe, initialize, interactive_flow_probe, oauth_authorization_server, oauth_protected_resource, official_registry_probe, openid_configuration, probe_noise_resilience, prompt_get, prompts_list, protocol_version_probe, provenance_divergence_probe, request_association_probe, resource_read, resources_list, server_card, session_resume_probe, step_up_auth_probe, tool_snapshot_probe, tools_list, transport_compliance_probe, utility_coverage_probe |
| May 12, 2026 02:18:12 PM UTC | Completed | Healthy | 633.0 ms | action_safety_probe, advanced_capabilities_probe, connector_publishability_probe, connector_replay_probe, determinism_probe, initialize, interactive_flow_probe, oauth_authorization_server, oauth_protected_resource, official_registry_probe, openid_configuration, probe_noise_resilience, prompt_get, prompts_list, protocol_version_probe, provenance_divergence_probe, request_association_probe, resource_read, resources_list, server_card, session_resume_probe, step_up_auth_probe, tool_snapshot_probe, tools_list, transport_compliance_probe, utility_coverage_probe |
| May 12, 2026 02:17:42 AM UTC | Completed | Healthy | 553.8 ms | action_safety_probe, advanced_capabilities_probe, connector_publishability_probe, connector_replay_probe, determinism_probe, initialize, interactive_flow_probe, oauth_authorization_server, oauth_protected_resource, official_registry_probe, openid_configuration, probe_noise_resilience, prompt_get, prompts_list, protocol_version_probe, provenance_divergence_probe, request_association_probe, resource_read, resources_list, server_card, session_resume_probe, step_up_auth_probe, tool_snapshot_probe, tools_list, transport_compliance_probe, utility_coverage_probe |