edwinux/makeup-land-mcp
Public metadata + integrator guide for the makeup.land MCP server (catalog ΔE shade matching, customer wallet, cart, orders). Server hosted at https://makeup.land/api/mcp
Executive verdict
trustsnap_02bffda8bdf91224Current trust snapshot
trustsnap_02bffda8bdf91224Canonical machine links
Own this MCP?
Claim ownership, prove control with a GitHub, DNS, HTTP, MCP metadata, or email-domain challenge, revalidate now, publish a badge, configure monitoring, and unlock a verified server profile.
POST /v1/servers/github-edwinux/makeup-land-mcp/revalidateBadge embed
[](https://verify.sentinelsignal.io/servers/github-edwinux/makeup-land-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/decideAlert subscription types
MCP Runtime hosting
Verify Hosted MCP turns a trusted server report into a managed remote MCP endpoint with GitHub deployment provenance, sandbox policy, encrypted secrets, release history, rollback, and audit/usage events.
/hosted/{namespace}/{name}/mcp| Deployment | Status | Endpoint | Release |
|---|---|---|---|
| No hosted runtime deployments yet. | |||
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• Warningconnector_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• OK
Evidence provenance
tool_snapshot_probe• OKconnector_replay_probe• OK
Why compatibility is limited by client
Remediation checklist
Dynamic client registration materially improves connector setup.OAuth interoperability should be strong.write actions present is not yet satisfiedadmin refresh required is not yet satisfiedsafe for messages api remote mcp is not yet satisfiedTransport compliance issues should be resolved before wider client rollout.
Remediation checklist
write actions present is not yet satisfiedadmin refresh required is not yet satisfiedsafe for messages api remote mcp is not yet satisfiedTransport compliance issues should be resolved before wider client rollout.
Remediation checklist
- No explicit blockers recorded.
Verdict traces
tool_snapshot_changed• high • Tool snapshot changedauth_mode_changed• high • Auth mode changed
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 allowed | action_safety_probe | live_validation | none |
snapshot_churn_risk |
Medium | tool_snapshot_probe, connector_replay_probe | history | none |
Publishability policy profiles
- Search Fetch Only: Yes
- Write Actions Present: No
- Oauth Configured: Yes
- Admin Refresh Required: No
- Safe For Company Knowledge: Yes
- Safe For Messages Api Remote Mcp: No
- Search Fetch Only: Yes
- Write Actions Present: No
- Oauth Configured: Yes
- Admin Refresh Required: No
- Safe For Company Knowledge: Yes
- Safe For Messages Api Remote Mcp: No
Compatibility fixtures
- remote_http_endpoint: Passes
- oauth_discovery: Passes
- frozen_tool_snapshot_refresh: Passes
- request_association: Passes
- remote_transport: Passes
- tool_discovery: Passes
- auth_connect: Passes
- safe_write_review: Passes
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 25, 2026 07:38:09 AM UTC | Latest validation: healthy | Score 70.6 with status healthy. |
| May 25, 2026 07:38:09 AM UTC | Score changed | Score delta -0.1 versus the previous run. |
| May 25, 2026 07:38:09 AM UTC | Tool snapshot changed | Added 8, removed 0, and changed 0 tool contracts. |
| May 25, 2026 07:38:09 AM UTC | Auth mode changed | Auth mode moved from unknown to oauth_supported. |
Capabilities
- OAuth:
- DCR/CIMD:
- Prompts:
- Homepage: https://makeup.land/api/mcp
- Docs: https://makeup.land/api/mcp
- Support: https://github.com/edwinux/makeup-land-mcp
- Icon: https://avatars.githubusercontent.com/u/13358200?v=4
- Remote endpoint: https://makeup.land/api/mcp
- Server card: none
Security posture
Tool capability & risk inventory
| Tool | Capabilities | Risk | Findings | Notes |
|---|---|---|---|---|
list_products |
read write admin export | Medium | bulk data access admin mutation | No explicit safeguard hints detected. |
list_brands |
read | Low | none | No explicit safeguard hints detected. |
validate_gift_card |
other | Low | freeform input surface | No explicit safeguard hints detected. |
get_customer |
read | Low | none | No explicit safeguard hints detected. |
get_cart |
read write admin | Medium | admin mutation | No explicit safeguard hints detected. |
list_orders |
read export | Medium | bulk data access | No explicit safeguard hints detected. |
list_payment_links |
read network | Medium | none | No explicit safeguard hints detected. |
get_customer_best_deals |
read admin export | Medium | bulk data access | No explicit safeguard hints detected. |
Write-action governance
Status detail: No unsafe write-action governance gaps detected on the latest validation.
| Tool | Risk | Flags | Safeguards |
|---|---|---|---|
| No high-risk tools were detected on the latest run. | |||
Action-controls diff
New actions
| Action | Risk | Flags |
|---|---|---|
get_cart | Medium | admin mutation |
get_customer | Low | none |
get_customer_best_deals | Medium | bulk data access |
list_brands | Low | none |
list_orders | Medium | bulk data access |
list_payment_links | Medium | none |
list_products | Medium | bulk data access admin mutation |
validate_gift_card | Low | freeform input surface |
Changed actions
| Action | Change types | Risk |
|---|---|---|
| No materially changed actions. | ||
Why this score?
Algorithmic score breakdown
Compatibility profiles
Connector URL: https://makeup.land/api/mcp # Complete OAuth in the client when prompted. # Server: github-edwinux/makeup-land-mcp
{
"mcpServers": {
"makeup-land-mcp": {
"command": "npx",
"args": ["mcp-remote", "https://makeup.land/api/mcp"]
}
}
}
smithery mcp add "https://makeup.land/api/mcp"
curl -sS https://makeup.land/api/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 | 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 | Publish a complete server card | Missing or incomplete server-card metadata weakens discovery, documentation, and trust signals. | Serve /.well-known/mcp/server-card.json and include tools, prompts/resources, homepage, and support links.Playbook
|
| High | Respond to auth mode changed | Auth mode changed from unknown to oauth_supported. | Document the new auth posture and confirm protected-resource and challenge metadata still match reality.Playbook
|
| High | Respond to tool snapshot changed | Tools were added, removed, or materially changed between the latest two validations. | Publish a first-class changelog for tool additions, removals, and breaking schema changes.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 | Repair prompts/list or stop advertising prompts | Prompt metadata should either work live or be removed from the advertised capability set. | Only advertise prompts if prompts/list works and prompt arguments are documented.Playbook
|
| Medium | Repair resources/list or stop advertising resources | Resource metadata should either work live or be removed from the advertised capability set. | Only advertise resources if resources/list works and resources expose stable URIs/types.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
|
| Low | Publish or reconcile the server in the official MCP registry | Official registry presence improves discovery confidence and cross-source consistency. | 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 |
| Dependency Supply Chain Signal | 0.5/4 | -3.5 |
| Utility Coverage | 2/4 | -2.0 |
| Transport Compliance | 2/4 | -2.0 |
| Spec Recency | 2/4 | -2.0 |
| Schema Completeness | 2/4 | -2.0 |
| Safety Transparency | 2/4 | -2.0 |
| Resource Contract | 2/4 | -2.0 |
| Registry Consistency | 2/4 | -2.0 |
| Rate Limit Semantics | 2/4 | -2.0 |
| Prompt Contract | 2/4 | -2.0 |
| OAUTH Interop | 2/4 | -2.0 |
Validation diff
Regressed checks: openid_configuration, server_card
Improved checks: action_safety_probe, connector_replay_probe, determinism_probe, initialize, interactive_flow_probe, oauth_authorization_server, oauth_protected_resource, probe_noise_resilience, provenance_divergence_probe, tool_snapshot_probe, tools_list
| Component | Previous | Latest | Delta |
|---|---|---|---|
maintenance_signal_score | 3.95 | 2.0 | -1.95 |
data_exfiltration_resilience_score | 3.75 | 2.0 | -1.75 |
registry_consistency_score | 3.6 | 2.0 | -1.6 |
trust_confidence_score | 1.75 | 2.94 | 1.19 |
backward_compatibility_score | 2.0 | 3.0 | 1.0 |
connector_replay_score | 3.0 | 4.0 | 1.0 |
result_shape_stability_score | 2.0 | 3.0 | 1.0 |
tool_snapshot_churn_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 | Passes |
|
| Safe write flow with confirmation | Passes |
|
Registry & provenance divergence
| Field | Registry | Live server card |
|---|---|---|
| Title | n/a | n/a |
| Version | n/a | n/a |
| Homepage | n/a | n/a |
Active alerts
- Tool snapshot changed (high)
Tools were added, removed, or materially changed between the latest two validations. - Auth mode changed (high)
Auth mode changed from unknown to oauth_supported.
Aliases & registry graph
| Identifier | Source | Canonical | Score |
|---|---|---|---|
github-edwinux/makeup-land-mcp |
github_topic_registry | yes | 70.63 |
Alias consolidation
Source disagreements
| Field | What differs | Observed values |
|---|---|---|
| No source disagreements detected. | ||
Install snippets
Connector URL: https://makeup.land/api/mcp # Complete OAuth in the client when prompted. # Server: github-edwinux/makeup-land-mcp
{
"mcpServers": {
"makeup-land-mcp": {
"command": "npx",
"args": ["mcp-remote", "https://makeup.land/api/mcp"]
}
}
}
smithery mcp add "https://makeup.land/api/mcp"
curl -sS https://makeup.land/api/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.github-edwinux/makeup-land-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
openid_configurationExpecting value: line 1 column 1 (char 0)server_cardClient error '404 Not Found' for url 'https://makeup.land/.well-known/mcp/server-card.json' For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404
Checks
| Check | Status | Latency | Evidence |
|---|---|---|---|
action_safety_probe |
OK | n/a | No high-risk write, destructive, or exec tools detected. |
advanced_capabilities_probe |
Missing | n/a | No advanced MCP capability signals detected. |
connector_publishability_probe |
Warning | n/a | Publishability blockers: server card. |
connector_replay_probe |
OK | n/a | Backward compatible with no breaking tool-surface changes. |
determinism_probe |
OK | 218.3 ms | Check completed |
initialize |
OK | 126.7 ms | Protocol 2025-03-26 |
interactive_flow_probe |
OK | n/a | Check completed |
oauth_authorization_server |
OK | 119.5 ms | agent_auth, authorization_endpoint, grant_types_supported, issuer |
oauth_protected_resource |
OK | 322.1 ms | 1 authorization server(s) |
official_registry_probe |
Warning | n/a | Check completed |
openid_configuration |
Error | 281.4 ms | Expecting value: line 1 column 1 (char 0) |
probe_noise_resilience |
OK | 131.5 ms | Fetched https://makeup.land/robots.txt |
prompt_get |
Missing | n/a | not advertised |
prompts_list |
Missing | 345.4 ms | not supported |
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 |
Missing | 327.6 ms | not supported |
server_card |
Error | 486.6 ms | Client error '404 Not Found' for url 'https://makeup.land/.well-known/mcp/server-card.json' For more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404 |
session_resume_probe |
Warning | n/a | no session id |
step_up_auth_probe |
Warning | n/a | Scopes=full, giftcards, proposals, read only, +1 more; broad scopes=full. |
tool_snapshot_probe |
OK | n/a | Check completed |
tools_list |
OK | 332.5 ms | 8 tool(s) exposed |
transport_compliance_probe |
Warning | 130.9 ms | Issues: missing session id, missing protocol header (bad protocol=400). |
utility_coverage_probe |
Missing | 117.0 ms | No completions evidence; no pagination evidence; tasks missing. |
Raw evidence view
Show raw JSON evidence
{
"checks": {
"action_safety_probe": {
"details": {
"auth_present": true,
"confirmation_signals": [],
"safeguard_count": 0,
"summary": {
"bulk_access_tools": 3,
"capability_distribution": {
"admin": 3,
"export": 3,
"network": 1,
"other": 1,
"read": 7,
"write": 2
},
"destructive_tools": 0,
"egress_tools": 0,
"exec_tools": 0,
"high_risk_tools": 0,
"risk_distribution": {
"critical": 0,
"high": 0,
"low": 3,
"medium": 5
},
"secret_tools": 0,
"tool_count": 8
}
},
"latency_ms": null,
"status": "ok"
},
"advanced_capabilities_probe": {
"details": {
"capabilities": {
"completions": false,
"elicitation": false,
"prompts": false,
"resource_links": false,
"resources": false,
"roots": false,
"sampling": false,
"structured_outputs": false
},
"enabled": [],
"enabled_count": 0,
"initialize_capability_keys": [
"tools"
]
},
"latency_ms": null,
"status": "missing"
},
"connector_publishability_probe": {
"details": {
"blockers": [
"server_card"
],
"criteria": {
"action_safety": true,
"auth_flow": true,
"connector_replay": true,
"initialize": true,
"protocol_version": true,
"remote_transport": true,
"request_association": true,
"server_card": false,
"session_resume": true,
"step_up_auth": true,
"tool_surface": true,
"tools_list": true,
"transport_compliance": true
},
"high_risk_tools": 0,
"tool_count": 8,
"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": "4e3aa5577fa593bb696b5c52c900c0ec7e7978137fe4a7c09bc180d36988449b",
"errors": [],
"matches": 2,
"stable_ratio": 1.0,
"successful": 2
},
"latency_ms": 218.3,
"status": "ok"
},
"initialize": {
"details": {
"headers": {
"content-type": "text/event-stream",
"strict-transport-security": "max-age=31536000; includeSubDomains"
},
"http_status": 200,
"payload": {
"id": 1,
"jsonrpc": "2.0",
"result": {
"capabilities": {
"tools": {
"listChanged": true
}
},
"instructions": "makeup.land \u2014 Israeli professional cosmetics retailer. Use this MCP server to search the product catalog (with \u0394E shade matching), look up customers by phone, fetch carts and orders, and validate gift cards. Most customer-data tools require BOTH a bearer token (`Authorization: Bearer ml_...`) AND a phone identifier \u2014 the bearer authenticates the caller, the phone selects the customer. Catalog tools (`list_products`) work anonymously for tag/brand/near_hex/sort filters. See https://makeup.land/llms-full.txt for the long-form integration guide.",
"protocolVersion": "2025-03-26",
"serverInfo": {
"name": "makeup.land",
"title": "makeup.land MCP server",
"version": "1.0.0"
}
}
},
"url": "https://makeup.land/api/mcp"
},
"latency_ms": 126.72,
"status": "ok"
},
"interactive_flow_probe": {
"details": {
"oauth_supported": true,
"prompt_available": false,
"risk_hits": [],
"safe_hits": []
},
"latency_ms": null,
"status": "ok"
},
"oauth_authorization_server": {
"details": {
"headers": {
"content-type": "application/json; charset=utf-8",
"strict-transport-security": "max-age=31536000; includeSubDomains"
},
"http_status": 200,
"payload": {
"agent_auth": {
"events_supported": [
"credential.issued",
"credential.revoked"
],
"identity_assertion": {
"credentials_issued": [
"api_key"
],
"methods": [
"email_manual"
]
},
"identity_types_supported": [
"identity_assertion"
],
"register_uri": "mailto:info@makeup.land?subject=API%20access%20request",
"skill": "https://makeup.land/auth.md"
},
"authorization_endpoint": null,
"grant_types_supported": [],
"issuer": "https://makeup.land",
"op_policy_uri": "https://makeup.land/auth.md",
"response_types_supported": [],
"scopes_supported": [
"full",
"register",
"giftcards",
"proposals",
"read_only"
],
"service_documentation": "https://makeup.land/openapi.json",
"token_endpoint": null,
"token_endpoint_auth_methods_supported": []
},
"url": "https://makeup.land/.well-known/oauth-authorization-server"
},
"latency_ms": 119.5,
"status": "ok"
},
"oauth_protected_resource": {
"details": {
"headers": {
"content-type": "application/json; charset=utf-8",
"strict-transport-security": "max-age=31536000; includeSubDomains"
},
"http_status": 200,
"payload": {
"authorization_servers": [
"https://makeup.land"
],
"bearer_methods_supported": [
"header"
],
"resource": "https://makeup.land/api/v1/",
"resource_documentation": "https://makeup.land/openapi.json",
"resource_name": "makeup.land V1 API",
"resource_policy_uri": "https://makeup.land/.well-known/ai-manifest.json",
"resource_tos_uri": "https://makeup.land/auth.md",
"scopes_supported": [
"full",
"register",
"giftcards",
"proposals",
"read_only"
],
"x-agent-auth-skill": "https://makeup.land/auth.md"
},
"url": "https://makeup.land/.well-known/oauth-protected-resource"
},
"latency_ms": 322.09,
"status": "ok"
},
"official_registry_probe": {
"details": {
"direct_match": false,
"official_identifiers": [
"io.github.martc03/federal-financial-intel",
"ai.smithery/arjunkmrm-clock",
"ai.smithery/keremurat-json",
"ai.smithery/Pratiksha-Kanoja-magicslide-mcp-test",
"io.github.TheNextGenNexus/real-estate-mcp-server",
"io.github.human-pages-ai/humanpages",
"io.github.gagandeeppra/mcp-observability-server",
"ai.smithery/BigVik193-reddit-ads-mcp-api",
"io.github.iowarp/adios-mcp",
"io.github.KaiErikNiermann/task-warrior-mcp"
],
"official_peer_count": 10,
"registry_source": "github_topic_registry"
},
"latency_ms": null,
"status": "warning"
},
"openid_configuration": {
"details": {
"error": "Expecting value: line 1 column 1 (char 0)",
"url": "https://makeup.land/.well-known/openid-configuration"
},
"latency_ms": 281.42,
"status": "error"
},
"probe_noise_resilience": {
"details": {
"headers": {
"content-type": "text/plain; charset=utf-8",
"strict-transport-security": "max-age=31536000; includeSubDomains"
},
"http_status": 200,
"url": "https://makeup.land/robots.txt"
},
"latency_ms": 131.5,
"status": "ok"
},
"prompt_get": {
"details": {
"reason": "not_advertised"
},
"latency_ms": null,
"status": "missing"
},
"prompts_list": {
"details": {
"headers": {
"content-type": "text/event-stream",
"strict-transport-security": "max-age=31536000; includeSubDomains"
},
"http_status": 200,
"payload": {
"error": {
"code": -32601,
"message": "Method not found"
},
"id": 3,
"jsonrpc": "2.0"
},
"reason": "not_supported",
"url": "https://makeup.land/api/mcp"
},
"latency_ms": 345.36,
"status": "missing"
},
"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": false,
"drift_fields": [],
"metadata_document_count": 1,
"registry_homepage": null,
"registry_repository": null,
"registry_title": null,
"registry_version": null,
"server_card_homepage": null,
"server_card_repository": null,
"server_card_title": null,
"server_card_version": null
},
"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": "text/event-stream",
"strict-transport-security": "max-age=31536000; includeSubDomains"
},
"http_status": 200,
"payload": {
"error": {
"code": -32601,
"message": "Method not found"
},
"id": 5,
"jsonrpc": "2.0"
},
"reason": "not_supported",
"url": "https://makeup.land/api/mcp"
},
"latency_ms": 327.6,
"status": "missing"
},
"server_card": {
"details": {
"error": "Client error '404 Not Found' for url 'https://makeup.land/.well-known/mcp/server-card.json'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404",
"url": "https://makeup.land/.well-known/mcp/server-card.json"
},
"latency_ms": 486.61,
"status": "error"
},
"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": [
"full"
],
"challenge_headers": [],
"minimal_scope_documented": false,
"oauth_present": true,
"scope_specificity_ratio": 0.2857,
"step_up_signals": [],
"supported_scopes": [
"full",
"giftcards",
"proposals",
"read_only",
"register"
]
},
"latency_ms": null,
"status": "warning"
},
"tool_snapshot_probe": {
"details": {
"added": [],
"changed_outputs": [],
"current_tool_count": 8,
"previous_tool_count": 8,
"removed": [],
"similarity": 1.0
},
"latency_ms": null,
"status": "ok"
},
"tools_list": {
"details": {
"headers": {
"content-type": "text/event-stream",
"strict-transport-security": "max-age=31536000; includeSubDomains"
},
"http_status": 200,
"payload": {
"id": 2,
"jsonrpc": "2.0",
"result": {
"tools": [
{
"description": "Browse the catalog with tag, brand, near_hex (\u0394E shade match), hue_family, and sort filters. Bearer becomes required when passing `phone` (rewards projection).",
"execution": {
"taskSupport": "forbidden"
},
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"brand": {
"description": "Filter by brand slug or name.",
"type": "string"
},
"hue_family": {
"description": "Post-filter on hue family. Must be paired with another filter.",
"enum": [
"red",
"orange",
"yellow",
"green",
"blue",
"purple",
"pink",
"brown",
"neutral"
],
"type": "string"
},
"limit": {
"description": "Page size, default 20.",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"near_hex": {
"description": "Target hex color for \u0394E-ranked shade matching. Examples: '#C2185B', 'E8D4B8'. Each returned product carries a `shade_match: {hex, delta_e}` field with the closest variant swatch and its perceptual distance.",
"pattern": "^#?[0-9A-Fa-f]{6}$",
"type": "string"
},
"page": {
"description": "1-indexed page number.",
"maximum": 9007199254740991,
"minimum": 1,
"type": "integer"
},
"phone": {
"description": "E.164 phone for per-customer rewards projection. REQUIRES bearer auth. Omit for anonymous catalog browse.",
"pattern": "^\\+\\d{6,15}$",
"type": "string"
},
"q": {
"description": "Natural-language query. Cross-lingual semantic search \u2014 `lipstick`, `\u05e9\u05e4\u05ea\u05d5\u05df`, `l\u00e1piz labial` each return Hebrew-tagged lipsticks (the sets may differ across languages but are semantically equivalent). Prefer this over `tag` for any category lookup that isn't already in exact Hebrew.",
"type": "string"
},
"sort": {
"description": "Sort order. Default: relevance.",
"enum": [
"price_asc",
"price_desc",
"popularity",
"rating",
"relevance"
],
"type": "string"
},
"tag": {
"description": "Filter by an EXACT tag string. Tags are Hebrew (e.g. \u05e9\u05e4\u05ea\u05d5\u05df, \u05d1\u05d9\u05d5\u05d8\u05d9, \u05e2\u05d9\u05e0\u05d9\u05d9\u05dd, \u05e9\u05e4\u05ea\u05d9\u05d9\u05dd). English category names rarely match \u2014 use `q` instead for natural-language queries.",
"type": "string"
}
},
"type": "object"
},
"name": "list_products",
"title": "List / search products"
},
{
"description": "Return every brand with product counts and slugs. Bearer required.",
"execution": {
"taskSupport": "forbidden"
},
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "list_brands",
"title": "List all brands"
},
{
"description": "Check a gift card's remaining balance using its code. Public endpoint \u2014 no bearer required (gated on knowledge of the code).",
"execution": {
"taskSupport": "forbidden"
},
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"code": {
"description": "Gift card code (full string as printed on the card).",
"minLength": 1,
"type": "string"
}
},
"required": [
"code"
],
"type": "object"
},
"name": "validate_gift_card",
"title": "Validate a gift card code"
},
{
"description": "Return tags, \u2133-credit balance, M Club tier for the customer with the given E.164 phone. Bearer required.",
"execution": {
"taskSupport": "forbidden"
},
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"phone": {
"description": "E.164 phone number, e.g. +972501234567.",
"pattern": "^\\+\\d{6,15}$",
"type": "string"
}
},
"required": [
"phone"
],
"type": "object"
},
"name": "get_customer",
"title": "Lookup customer by phone"
},
{
"description": "Return the customer's most-recently-updated cart with per-line and total reward projection. Bearer + phone required.",
"execution": {
"taskSupport": "forbidden"
},
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"phone": {
"description": "E.164 phone selecting the customer whose cart to return.",
"pattern": "^\\+\\d{6,15}$",
"type": "string"
}
},
"required": [
"phone"
],
"type": "object"
},
"name": "get_cart",
"title": "Fetch a customer's cart"
},
{
"description": "Recent orders with 6-axis status (order / payment / fulfillment / delivery / return / review). Bearer + phone required.",
"execution": {
"taskSupport": "forbidden"
},
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"description": "Page size.",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"page": {
"description": "1-indexed page number.",
"maximum": 9007199254740991,
"minimum": 1,
"type": "integer"
},
"phone": {
"description": "E.164 phone selecting the customer.",
"pattern": "^\\+\\d{6,15}$",
"type": "string"
}
},
"required": [
"phone"
],
"type": "object"
},
"name": "list_orders",
"title": "List a customer's orders"
},
{
"description": "Pending payment_requests on the customer's unpaid orders. Bearer + phone required.",
"execution": {
"taskSupport": "forbidden"
},
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"phone": {
"description": "E.164 phone selecting the customer.",
"pattern": "^\\+\\d{6,15}$",
"type": "string"
}
},
"required": [
"phone"
],
"type": "object"
},
"name": "list_payment_links",
"title": "List pending payment links"
},
{
"description": "Top deal projections based on the customer's tags + M Club tier. Bearer + phone required.",
"execution": {
"taskSupport": "forbidden"
},
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"limit": {
"description": "Max deals to return.",
"maximum": 20,
"minimum": 1,
"type": "integer"
},
"phone": {
"description": "E.164 phone selecting the customer.",
"pattern": "^\\+\\d{6,15}$",
"type": "string"
}
},
"required": [
"phone"
],
"type": "object"
},
"name": "get_customer_best_deals",
"title": "Personalised best deals for a customer"
}
]
}
},
"url": "https://makeup.land/api/mcp"
},
"latency_ms": 332.49,
"status": "ok"
},
"transport_compliance_probe": {
"details": {
"bad_protocol_error": null,
"bad_protocol_headers": {
"content-type": "application/json",
"strict-transport-security": "max-age=31536000; includeSubDomains"
},
"bad_protocol_payload": {
"error": {
"code": -32000,
"message": "Bad Request: Unsupported protocol version: 1999-99-99 (supported versions: 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05, 2024-10-07)"
},
"id": null,
"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": 130.87,
"status": "warning"
},
"utility_coverage_probe": {
"details": {
"completions": {
"advertised": false,
"live_probe": "not_executed",
"sample_target": null
},
"initialize_capability_keys": [
"tools"
],
"pagination": {
"metadata_signal": false,
"next_cursor_methods": [],
"supported": false
},
"tasks": {
"advertised": false,
"http_status": 200,
"probe_status": "missing"
}
},
"latency_ms": 116.97,
"status": "missing"
}
},
"failures": {
"openid_configuration": {
"error": "Expecting value: line 1 column 1 (char 0)",
"url": "https://makeup.land/.well-known/openid-configuration"
},
"server_card": {
"error": "Client error '404 Not Found' for url 'https://makeup.land/.well-known/mcp/server-card.json'\nFor more information check: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404",
"url": "https://makeup.land/.well-known/mcp/server-card.json"
}
},
"remote_url": "https://makeup.land/api/mcp",
"server_card_payload": null,
"server_identifier": "github-edwinux/makeup-land-mcp"
}
Known versions
- No versions recorded.
Validation history
| Timestamp | Status | Score | Latency | Tools |
|---|---|---|---|---|
| May 25, 2026 07:38:09 AM UTC | Healthy | 70.6 | 3172.4 ms | 8 |
| May 24, 2026 07:37:45 PM UTC | Healthy | 70.7 | 3404.4 ms | 0 |
Validation timeline
| Validated | Summary | Score | Protocol | Auth mode | Tools | High-risk tools | Changes |
|---|---|---|---|---|---|---|---|
| May 25, 2026 07:38:09 AM UTC | Healthy | 70.6 | 2025-03-26 | oauth_supported | 8 | 0 | auth_mode_changed tool_snapshot_changed |
| May 24, 2026 07:37:45 PM UTC | Healthy | 70.7 | unknown | unknown | 0 | 0 | none |
Recent validation runs
| Started | Status | Summary | Latency | Checks |
|---|---|---|---|---|
| May 25, 2026 07:38:06 AM UTC | Completed | Healthy | 3172.4 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 24, 2026 07:37:42 PM UTC | Completed | Healthy | 3404.4 ms | |