Crawler Summary

zafari-mcp-server answer-first brief

MCP server for Zafari CRS API - safari property management and booking operations Zafari MCP Server with OAuth 2.1 A **production-ready**, security-hardened Model Context Protocol (MCP) server for the Zafari CRS API with OAuth 2.1 authentication, enabling secure remote access from Claude Desktop and other MCP clients for managing safari property operations. ๐Ÿ”’ Security Features โœ… **Password Hashing** - bcrypt with 10 salt rounds โœ… **Token Storage** - Redis OR in-memory (configurable) โœ… **Rate Limi Published capability contract available. No trust telemetry is available yet. Last updated 2/24/2026.

Freshness

Last checked 2/22/2026

Best For

Contract is available with explicit auth and schema references.

Not Ideal For

zafari-mcp-server is not ideal for teams that need stronger public trust telemetry, lower setup complexity, or more explicit contract coverage before production rollout.

Evidence Sources Checked

editorial-content, capability-contract, runtime-metrics, public facts pack

Claim this agent
Agent DossierGitHubSafety: 80/100

zafari-mcp-server

MCP server for Zafari CRS API - safari property management and booking operations Zafari MCP Server with OAuth 2.1 A **production-ready**, security-hardened Model Context Protocol (MCP) server for the Zafari CRS API with OAuth 2.1 authentication, enabling secure remote access from Claude Desktop and other MCP clients for managing safari property operations. ๐Ÿ”’ Security Features โœ… **Password Hashing** - bcrypt with 10 salt rounds โœ… **Token Storage** - Redis OR in-memory (configurable) โœ… **Rate Limi

MCPverified

Public facts

6

Change events

1

Artifacts

0

Freshness

Feb 22, 2026

Verifiededitorial-content1 verified compatibility signal

Published capability contract available. No trust telemetry is available yet. Last updated 2/24/2026.

Schema refs publishedTrust evidence available

Trust score

Unknown

Compatibility

MCP

Freshness

Feb 22, 2026

Vendor

Anthonylimo90

Artifacts

0

Benchmarks

0

Last release

1.0.0

Executive Summary

Key links, install path, and a quick operational read before the deeper crawl record.

Verifiededitorial-content

Summary

Published capability contract available. No trust telemetry is available yet. Last updated 2/24/2026.

Setup snapshot

git clone https://github.com/anthonylimo90/zafari-mcp-server.git
  1. 1

    Setup complexity is MEDIUM. Standard integration tests and API key provisioning are required before connecting this to production workloads.

  2. 2

    Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.

Evidence Ledger

Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.

Verifiededitorial-content
Vendor (1)

Vendor

Anthonylimo90

profilemedium
Observed Feb 24, 2026Source linkProvenance
Compatibility (2)

Protocol compatibility

MCP

contracthigh
Observed Feb 24, 2026Source linkProvenance

Auth modes

mcp, api_key, oauth

contracthigh
Observed Feb 24, 2026Source linkProvenance
Artifact (1)

Machine-readable schemas

OpenAPI or schema references published

contracthigh
Observed Feb 24, 2026Source linkProvenance
Security (1)

Handshake status

UNKNOWN

trustmedium
Observed unknownSource linkProvenance
Integration (1)

Crawlable docs

6 indexed pages on the official domain

search_documentmedium
Observed Apr 15, 2026Source linkProvenance

Release & Crawl Timeline

Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.

Self-declaredagent-index

Artifacts Archive

Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.

Self-declaredGITHUB MCP

Extracted files

0

Examples

6

Snippets

0

Languages

typescript

Executable Examples

bash

# Clone and install
npm install

# Generate JWT secret
openssl rand -base64 64

# Configure environment
cp .env.example .env

env

# Required
ZAFARI_API_KEY=your-zafari-api-key
JWT_SECRET=<paste-generated-secret-here>  # Must be 32+ characters
ADMIN_PASSWORD=MySecurePassword123!        # Minimum 12 characters
DEMO_PASSWORD=AnotherSecurePass456!        # Minimum 12 characters

# Server Configuration
TRANSPORT=http
PORT=3000

# Optional: Token Storage (use redis for production)
STORAGE_BACKEND=memory  # or 'redis'
# REDIS_URL=redis://localhost:6379

# Optional: Security
ALLOWED_ORIGINS=https://claude.ai
ALLOWED_CLIENT_IDS=claude-desktop,mcp-inspector

bash

npm run build
npm start

bash

TRANSPORT=http npm start

bash

TRANSPORT=stdio npm start

text

zafari-mcp-server/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ index.ts              # Main server with OAuth & middleware
โ”‚   โ”œโ”€โ”€ types.ts              # TypeScript definitions
โ”‚   โ”œโ”€โ”€ constants.ts          # Configuration
โ”‚   โ”œโ”€โ”€ schemas/
โ”‚   โ”‚   โ””โ”€โ”€ index.ts          # Zod validation schemas
โ”‚   โ”œโ”€โ”€ services/
โ”‚   โ”‚   โ”œโ”€โ”€ api-client.ts     # Zafari API client
โ”‚   โ”‚   โ”œโ”€โ”€ formatters.ts     # Response formatting
โ”‚   โ”‚   โ”œโ”€โ”€ oauth.ts          # OAuth utilities (bcrypt, JWT)
โ”‚   โ”‚   โ”œโ”€โ”€ logger.ts         # Winston logging (NEW)
โ”‚   โ”‚   โ””โ”€โ”€ storage.ts        # Token storage abstraction (NEW)
โ”‚   โ”œโ”€โ”€ routes/
โ”‚   โ”‚   โ””โ”€โ”€ oauth.ts          # OAuth endpoints
โ”‚   โ”œโ”€โ”€ middleware/
โ”‚   โ”‚   โ””โ”€โ”€ auth.ts           # Authentication middleware
โ”‚   โ””โ”€โ”€ tools/
โ”‚       โ”œโ”€โ”€ properties.ts     # Property tools
โ”‚       โ”œโ”€โ”€ rooms.ts          # Room tools
โ”‚       โ”œโ”€โ”€ extras.ts         # Extra service tools
โ”‚       โ”œโ”€โ”€ bookings.ts       # Booking tools
โ”‚       โ””โ”€โ”€ webhooks.ts       # Webhook tools
โ”œโ”€โ”€ dist/                     # Compiled output
โ”œโ”€โ”€ .env.example              # Environment template
โ”œโ”€โ”€ test-security.sh          # Security verification script (NEW)
โ””โ”€โ”€ README.md                 # This file

Docs & README

Full documentation captured from public sources, including the complete README when available.

Self-declaredGITHUB MCP

Docs source

GITHUB MCP

Editorial quality

ready

MCP server for Zafari CRS API - safari property management and booking operations Zafari MCP Server with OAuth 2.1 A **production-ready**, security-hardened Model Context Protocol (MCP) server for the Zafari CRS API with OAuth 2.1 authentication, enabling secure remote access from Claude Desktop and other MCP clients for managing safari property operations. ๐Ÿ”’ Security Features โœ… **Password Hashing** - bcrypt with 10 salt rounds โœ… **Token Storage** - Redis OR in-memory (configurable) โœ… **Rate Limi

Full README

Zafari MCP Server with OAuth 2.1

A production-ready, security-hardened Model Context Protocol (MCP) server for the Zafari CRS API with OAuth 2.1 authentication, enabling secure remote access from Claude Desktop and other MCP clients for managing safari property operations.

๐Ÿ”’ Security Features

โœ… Password Hashing - bcrypt with 10 salt rounds
โœ… Token Storage - Redis OR in-memory (configurable)
โœ… Rate Limiting - Auth: 5/15min, API: 100/req/min
โœ… CORS Protection - Configurable allowed origins
โœ… Security Headers - Helmet (CSP, HSTS, X-Frame-Options)
โœ… Structured Logging - Winston with security event tracking
โœ… Client Validation - OAuth client ID whitelist
โœ… JWT Enforcement - 32+ character secret required
โœ… Replay Protection - Authorization code tracking

Status: โœ… Production-ready with proper configuration (0 npm vulnerabilities)


๐ŸŒŸ Features

  • ๐Ÿ” OAuth 2.1 Authentication: Secure token-based authentication with PKCE support
  • ๐Ÿจ Property Management: List and view safari properties
  • ๐Ÿ›๏ธ Room Operations: Availability, rates, and inventory management
  • โœจ Extra Services: Park fees, activities, and add-on management
  • ๐Ÿ“… Booking Management: Create, list, update, and track bookings
  • ๐Ÿ”” Webhook Configuration: Event notification setup

๐Ÿš€ Quick Start

Prerequisites

  • Node.js 18+
  • Zafari CRS API key
  • Claude Desktop (Pro, Max, Team, or Enterprise plan)
  • (Production) Redis server (optional, recommended)

Installation

# Clone and install
npm install

# Generate JWT secret
openssl rand -base64 64

# Configure environment
cp .env.example .env

Edit .env and set required values:

# Required
ZAFARI_API_KEY=your-zafari-api-key
JWT_SECRET=<paste-generated-secret-here>  # Must be 32+ characters
ADMIN_PASSWORD=MySecurePassword123!        # Minimum 12 characters
DEMO_PASSWORD=AnotherSecurePass456!        # Minimum 12 characters

# Server Configuration
TRANSPORT=http
PORT=3000

# Optional: Token Storage (use redis for production)
STORAGE_BACKEND=memory  # or 'redis'
# REDIS_URL=redis://localhost:6379

# Optional: Security
ALLOWED_ORIGINS=https://claude.ai
ALLOWED_CLIENT_IDS=claude-desktop,mcp-inspector

Build and start:

npm run build
npm start

Add to Claude Desktop

  1. Open Claude Desktop โ†’ Settings > Connectors
  2. Click "Add custom connector"
  3. Enter URL: http://localhost:3000/mcp
  4. Click "Add"
  5. Browser opens โ†’ Login with your credentials
  6. Click "Authorize"
  7. Done! โœจ

๐Ÿ“– Detailed Setup Guide: See CLAUDE_DESKTOP_SETUP.md

โš™๏ธ Configuration

Required Environment Variables

| Variable | Description | Example | |----------|-------------|---------| | ZAFARI_API_KEY | Your Zafari CRS API key | za_live_... | | JWT_SECRET | JWT signing secret (32+ chars) | Generate: openssl rand -base64 64 | | ADMIN_PASSWORD | Admin user password (12+ chars) | MySecurePass123! | | DEMO_PASSWORD | Demo user password (12+ chars) | AnotherPass456! |

Optional Environment Variables

| Variable | Default | Description | |----------|---------|-------------| | TRANSPORT | stdio | Use http for OAuth, stdio for legacy | | HOST | localhost | Server host | | PORT | 3000 | Server port | | STORAGE_BACKEND | memory | Token storage: memory or redis | | REDIS_URL | - | Redis connection string (required if using Redis) | | ALLOWED_ORIGINS | https://claude.ai | CORS allowed origins (comma-separated) | | ALLOWED_CLIENT_IDS | claude-desktop,mcp-inspector | Whitelisted OAuth clients | | LOG_LEVEL | info | Logging level (error/warn/info/debug) | | NODE_ENV | development | Environment (production/development) | | OAUTH_ISSUER | zafari-mcp-server | JWT issuer claim | | OAUTH_AUDIENCE | zafari-mcp-api | JWT audience claim |

Transport Modes

HTTP Mode (Recommended for Claude Desktop):

TRANSPORT=http npm start
  • OAuth 2.1 authentication
  • Remote access support
  • Compatible with Claude Desktop 2025+

Stdio Mode (Legacy):

TRANSPORT=stdio npm start
  • Local CLI usage
  • No authentication
  • For testing with MCP Inspector

๐Ÿ”’ Security Implementation

Password Security

  • Hashing: bcrypt with 10 salt rounds
  • Minimum Length: 12 characters enforced
  • Complexity: Uppercase, lowercase, numbers, and symbols recommended
  • No Defaults: Server won't start without strong passwords
  • Constant-Time Comparison: Prevents timing attacks

Token Management

  • Storage Options:
    • Memory (development): Simple, fast, tokens lost on restart
    • Redis (production): Persistent, scalable, survives restarts
  • Access Tokens: JWT, 1-hour expiration, HS256 algorithm
  • Refresh Tokens: 30-day expiration with rotation
  • Auto-Cleanup: Expired tokens automatically purged

Rate Limiting

  • Auth Endpoints (/oauth/authorize, /oauth/token): 5 attempts per 15 minutes
  • MCP Endpoints (/mcp): 100 requests per minute
  • Response: 429 Too Many Requests with retry headers
  • Logging: All violations logged for monitoring

CORS Protection

  • Configurable Origins: Set via ALLOWED_ORIGINS environment variable
  • Secure Default: https://claude.ai (no wildcards)
  • Credentials Support: Enabled for cookie-based auth
  • Multiple Origins: Comma-separated list supported

Security Headers

Implemented via Helmet.js:

  • Content-Security-Policy: Prevents XSS attacks
  • HSTS: Enforces HTTPS (1-year max-age)
  • X-Content-Type-Options: Prevents MIME sniffing
  • X-Frame-Options: Prevents clickjacking
  • X-XSS-Protection: Browser XSS filter

Logging & Monitoring

Structured logging with Winston:

  • Security Events: Auth attempts, token failures, rate limits
  • Request Logging: Method, path, IP, user agent
  • Production Files: error.log, combined.log (5MB rotation)
  • No Sensitive Data: Passwords and tokens never logged

OAuth Security

  • Client Validation: Whitelist-based client ID checking
  • Replay Protection: Authorization codes tracked and invalidated
  • JWT Secret: 32+ character requirement enforced
  • PKCE Support: Proof Key for Code Exchange (S256)
  • Redirect Validation: HTTPS required (localhost exempted for dev)

๐Ÿ“‹ Available Tools

Properties

  • zafari_list_properties - Fetch all safari properties/lodges

Rooms

  • zafari_list_rooms - Get room types for a property
  • zafari_get_room_availability - Check daily availability
  • zafari_get_room_rates - Retrieve pricing
  • zafari_update_room_availability - Set availability levels
  • zafari_update_room_rates - Update pricing

Bookings

  • zafari_list_bookings - List bookings with filters
  • zafari_get_booking - Get booking details
  • zafari_create_booking - Create new booking
  • zafari_update_booking_status - Update status

Extra Services

  • zafari_list_extra_services - List add-ons (park fees, activities)
  • zafari_get_extra_service_availability - Check availability
  • zafari_update_extra_service_availability - Update capacity

Webhooks

  • zafari_get_webhook_config - Get webhook settings
  • zafari_update_webhook_config - Configure notifications

๐Ÿ” OAuth 2.1 Authentication

Authentication Flow

  1. Client requests access โ†’ /oauth/authorize
  2. User authenticates โ†’ Browser login page
  3. Server issues code โ†’ Authorization code with PKCE
  4. Client exchanges code โ†’ Access token (JWT)
  5. Client uses token โ†’ Bearer token for MCP calls

OAuth Endpoints

  • Authorization: http://localhost:3000/oauth/authorize
  • Token Exchange: http://localhost:3000/oauth/token
  • Server Metadata: http://localhost:3000/.well-known/oauth-authorization-server
  • Protected MCP: http://localhost:3000/mcp

Security Features

โœ… JWT Tokens: 1-hour access tokens with signature verification โœ… Refresh Tokens: 30-day refresh tokens for long-term access โœ… PKCE Support: Proof Key for Code Exchange for public clients โœ… Scope Management: Fine-grained permission control โœ… Redirect Validation: HTTPS enforcement for production

๐Ÿ“š Documentation

User Guides

Technical Documentation

Tutorials

๐Ÿ—๏ธ Project Structure

zafari-mcp-server/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ index.ts              # Main server with OAuth & middleware
โ”‚   โ”œโ”€โ”€ types.ts              # TypeScript definitions
โ”‚   โ”œโ”€โ”€ constants.ts          # Configuration
โ”‚   โ”œโ”€โ”€ schemas/
โ”‚   โ”‚   โ””โ”€โ”€ index.ts          # Zod validation schemas
โ”‚   โ”œโ”€โ”€ services/
โ”‚   โ”‚   โ”œโ”€โ”€ api-client.ts     # Zafari API client
โ”‚   โ”‚   โ”œโ”€โ”€ formatters.ts     # Response formatting
โ”‚   โ”‚   โ”œโ”€โ”€ oauth.ts          # OAuth utilities (bcrypt, JWT)
โ”‚   โ”‚   โ”œโ”€โ”€ logger.ts         # Winston logging (NEW)
โ”‚   โ”‚   โ””โ”€โ”€ storage.ts        # Token storage abstraction (NEW)
โ”‚   โ”œโ”€โ”€ routes/
โ”‚   โ”‚   โ””โ”€โ”€ oauth.ts          # OAuth endpoints
โ”‚   โ”œโ”€โ”€ middleware/
โ”‚   โ”‚   โ””โ”€โ”€ auth.ts           # Authentication middleware
โ”‚   โ””โ”€โ”€ tools/
โ”‚       โ”œโ”€โ”€ properties.ts     # Property tools
โ”‚       โ”œโ”€โ”€ rooms.ts          # Room tools
โ”‚       โ”œโ”€โ”€ extras.ts         # Extra service tools
โ”‚       โ”œโ”€โ”€ bookings.ts       # Booking tools
โ”‚       โ””โ”€โ”€ webhooks.ts       # Webhook tools
โ”œโ”€โ”€ dist/                     # Compiled output
โ”œโ”€โ”€ .env.example              # Environment template
โ”œโ”€โ”€ test-security.sh          # Security verification script (NEW)
โ””โ”€โ”€ README.md                 # This file

๐Ÿ› ๏ธ Development

Scripts

npm run build    # Compile TypeScript
npm start        # Run server
npm run dev      # Watch mode

Security Testing

Run security verification:

./test-security.sh

Tests include:

  • Password hashing functionality
  • Dependency installation
  • TypeScript compilation
  • NPM vulnerability audit

Testing with MCP Inspector

npx @modelcontextprotocol/inspector node dist/index.js

Manual OAuth Testing

# 1. Health check
curl http://localhost:3000/health

# 2. OAuth metadata
curl http://localhost:3000/.well-known/oauth-authorization-server

# 3. Get authorization (browser)
open "http://localhost:3000/oauth/authorize?response_type=code&client_id=claude-desktop&redirect_uri=http://localhost:3000/callback"

# 4. Exchange code for token
curl -X POST http://localhost:3000/oauth/token \
  -d "grant_type=authorization_code" \
  -d "code=YOUR_CODE" \
  -d "client_id=claude-desktop"

# 5. Use token
curl -X POST http://localhost:3000/mcp \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Rate Limiting Test

# Make 6 rapid requests (6th should be rate limited)
for i in {1..6}; do 
  curl -I http://localhost:3000/oauth/authorize
done
# Expected: 6th returns 429 Too Many Requests

CORS & Security Headers Test

# Test CORS
curl -H "Origin: https://claude.ai" -I http://localhost:3000/health

# Test security headers
curl -I http://localhost:3000/health
# Should include: X-Content-Type-Options, Strict-Transport-Security, X-Frame-Options

๐Ÿšข Production Deployment

Prerequisites

โœ… Security Checklist Completed:

  • [x] Password hashing with bcrypt
  • [x] Rate limiting implemented
  • [x] Security headers configured
  • [x] CORS protection enabled
  • [x] Structured logging active
  • [x] Client ID validation
  • [x] JWT secret enforcement
  • [ ] Redis configured for token storage
  • [ ] HTTPS enabled
  • [ ] Strong passwords set (16+ characters)
  • [ ] Environment variables configured
  • [ ] Monitoring and alerts set up

Deployment Options

Docker:

FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm ci --production
COPY dist ./dist
ENV NODE_ENV=production TRANSPORT=http PORT=3000
CMD ["node", "dist/index.js"]

Cloud Platforms:

  • Railway, Render, Fly.io
  • AWS ECS, Google Cloud Run, Azure Container Apps
  • Set environment variables in platform dashboard

Production Environment Variables

# Required
NODE_ENV=production
ZAFARI_API_KEY=your-production-api-key
JWT_SECRET=<64-char-secret>
ADMIN_PASSWORD=<strong-16-char-password>
DEMO_PASSWORD=<strong-16-char-password>

# Redis (Recommended)
STORAGE_BACKEND=redis
REDIS_URL=redis://your-redis-server:6379

# Security
ALLOWED_ORIGINS=https://your-domain.com
ALLOWED_CLIENT_IDS=claude-desktop,your-custom-client
TRANSPORT=http
PORT=3000

HTTPS Setup (Required)

Option 1: Reverse Proxy

# nginx, Apache, or Caddy
# Configure SSL/TLS certificates

Option 2: Cloud Platform

  • Most platforms provide automatic HTTPS
  • Configure custom domain with SSL

Option 3: CDN

  • Cloudflare, CloudFront
  • Enable SSL/TLS termination

Post-Deployment Checklist

  • [ ] Test OAuth flow end-to-end
  • [ ] Verify rate limiting is working
  • [ ] Check security headers with securityheaders.com
  • [ ] Review logs for security events
  • [ ] Set up monitoring alerts
  • [ ] Test token persistence (if using Redis)
  • [ ] Verify CORS with your domain
  • [ ] Run OWASP ZAP security scan

๐Ÿ” API Examples

List Properties

Request:

{
  "tool": "zafari_list_properties",
  "params": {
    "response_format": "json"
  }
}

Create Booking

Request:

{
  "tool": "zafari_create_booking",
  "params": {
    "property_id": "prop_123",
    "check_in": "2025-02-01",
    "check_out": "2025-02-05",
    "guest_first_name": "John",
    "guest_last_name": "Doe",
    "guest_email": "john@example.com",
    "rooms": [{"room_id": "room_456", "quantity": 1}]
  }
}

Update Room Rates

Request:

{
  "tool": "zafari_update_room_rates",
  "params": {
    "property_id": "prop_123",
    "room_id": "room_456",
    "from": "2025-03-01",
    "to": "2025-03-31",
    "rate": 500,
    "resident_type": "non_resident"
  }
}

๐Ÿ› Troubleshooting

Server Won't Start

# Check API key is set
echo $ZAFARI_API_KEY

# Verify build completed
npm run build

# Check port availability
lsof -i :3000

OAuth Authentication Fails

  • Verify credentials: demo / demo123
  • Check JWT_SECRET is set
  • Review server logs for errors
  • Clear browser cookies

Claude Desktop Can't Connect

# 1. Verify server is running
curl http://localhost:3000/health

# 2. Test OAuth metadata
curl http://localhost:3000/.well-known/oauth-authorization-server

# 3. Check URL in connector settings (no typos)
# 4. Restart Claude Desktop
# 5. Try removing and re-adding connector

Tools Not Working

  • Check ZAFARI_API_KEY is valid
  • Verify API key has correct permissions
  • Review server logs for API errors
  • Test API directly with curl

๐Ÿ”— Resources

๐Ÿ“„ License

Apache-2.0

๐Ÿค Support

For issues or questions:

  • Zafari API: Contact Zafari support team
  • MCP Integration: Review documentation in this repository
  • OAuth Issues: See OAUTH_SETUP.md

Version: 2.1.0 (Security-Hardened)
Security: โœ… Production-ready (0 vulnerabilities)
Built with: MCP SDK v1.0.4, OAuth 2.1, bcrypt, Express, JWT (jose), Winston, Helmet
API: Zafari CRS v2

๐Ÿฆ Built for safari property management excellence

Contract & API

Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.

Verifiedcapability-contract

Contract coverage

Status

ready

Auth

mcp, api_key, oauth

Streaming

No

Data region

global

Protocol support

MCP: verified

Requires: mcp, lang:typescript

Forbidden: none

Guardrails

Operational confidence: medium

Contract is available with explicit auth and schema references.
Trust confidence is not low and verification freshness is acceptable.
Protocol support is explicitly confirmed in contract metadata.
Invocation examples
curl -s "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/snapshot"
curl -s "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/contract"
curl -s "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/trust"

Reliability & Benchmarks

Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.

Missingruntime-metrics

Trust signals

Handshake

UNKNOWN

Confidence

unknown

Attempts 30d

unknown

Fallback rate

unknown

Runtime metrics

Observed P50

unknown

Observed P95

unknown

Rate limit

unknown

Estimated cost

unknown

No benchmark suites or observed failure patterns are available.

Media & Demo

Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.

Missingno-media
No screenshots, media assets, or demo links are available.

Related Agents

Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.

Self-declaredprotocol-neighbors
GITLAB_AI_CATALOGgitlab-mcp

Rank

83

A Model Context Protocol (MCP) server for GitLab

Traction

No public download signal

Freshness

Updated 2d ago

MCP
GITLAB_PUBLIC_PROJECTSgitlab-mcp

Rank

80

A Model Context Protocol (MCP) server for GitLab

Traction

No public download signal

Freshness

Updated 2d ago

MCP
GITLAB_AI_CATALOGrmcp-openapi

Rank

74

Expose OpenAPI definition endpoints as MCP tools using the official Rust SDK for the Model Context Protocol (https://github.com/modelcontextprotocol/rust-sdk)

Traction

No public download signal

Freshness

Updated 2d ago

MCP
GITLAB_AI_CATALOGrmcp-actix-web

Rank

72

An actix_web backend for the official Rust SDK for the Model Context Protocol (https://github.com/modelcontextprotocol/rust-sdk)

Traction

No public download signal

Freshness

Updated 2d ago

MCP
Machine Appendix

Contract JSON

{
  "contractStatus": "ready",
  "authModes": [
    "mcp",
    "api_key",
    "oauth"
  ],
  "requires": [
    "mcp",
    "lang:typescript"
  ],
  "forbidden": [],
  "supportsMcp": true,
  "supportsA2a": false,
  "supportsStreaming": false,
  "inputSchemaRef": "https://github.com/anthonylimo90/zafari-mcp-server#input",
  "outputSchemaRef": "https://github.com/anthonylimo90/zafari-mcp-server#output",
  "dataRegion": "global",
  "contractUpdatedAt": "2026-02-24T19:44:58.017Z",
  "sourceUpdatedAt": "2026-02-24T19:44:58.017Z",
  "freshnessSeconds": 4431814
}

Invocation Guide

{
  "preferredApi": {
    "snapshotUrl": "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/snapshot",
    "contractUrl": "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/contract",
    "trustUrl": "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/trust"
  },
  "curlExamples": [
    "curl -s \"https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/snapshot\"",
    "curl -s \"https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/contract\"",
    "curl -s \"https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/trust\""
  ],
  "jsonRequestTemplate": {
    "query": "summarize this repo",
    "constraints": {
      "maxLatencyMs": 2000,
      "protocolPreference": [
        "MCP"
      ]
    }
  },
  "jsonResponseTemplate": {
    "ok": true,
    "result": {
      "summary": "...",
      "confidence": 0.9
    },
    "meta": {
      "source": "GITHUB_MCP",
      "generatedAt": "2026-04-17T02:48:32.468Z"
    }
  },
  "retryPolicy": {
    "maxAttempts": 3,
    "backoffMs": [
      500,
      1500,
      3500
    ],
    "retryableConditions": [
      "HTTP_429",
      "HTTP_503",
      "NETWORK_TIMEOUT"
    ]
  }
}

Trust JSON

{
  "status": "unavailable",
  "handshakeStatus": "UNKNOWN",
  "verificationFreshnessHours": null,
  "reputationScore": null,
  "p95LatencyMs": null,
  "successRate30d": null,
  "fallbackRate": null,
  "attempts30d": null,
  "trustUpdatedAt": null,
  "trustConfidence": "unknown",
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Capability Matrix

{
  "rows": [
    {
      "key": "MCP",
      "type": "protocol",
      "support": "supported",
      "confidenceSource": "contract",
      "notes": "Confirmed by capability contract"
    },
    {
      "key": "mcp",
      "type": "capability",
      "support": "supported",
      "confidenceSource": "profile",
      "notes": "Declared in agent profile metadata"
    },
    {
      "key": "zafari",
      "type": "capability",
      "support": "supported",
      "confidenceSource": "profile",
      "notes": "Declared in agent profile metadata"
    },
    {
      "key": "crs",
      "type": "capability",
      "support": "supported",
      "confidenceSource": "profile",
      "notes": "Declared in agent profile metadata"
    },
    {
      "key": "safari",
      "type": "capability",
      "support": "supported",
      "confidenceSource": "profile",
      "notes": "Declared in agent profile metadata"
    },
    {
      "key": "booking",
      "type": "capability",
      "support": "supported",
      "confidenceSource": "profile",
      "notes": "Declared in agent profile metadata"
    },
    {
      "key": "hospitality",
      "type": "capability",
      "support": "supported",
      "confidenceSource": "profile",
      "notes": "Declared in agent profile metadata"
    }
  ],
  "flattenedTokens": "protocol:MCP|supported|contract capability:mcp|supported|profile capability:zafari|supported|profile capability:crs|supported|profile capability:safari|supported|profile capability:booking|supported|profile capability:hospitality|supported|profile"
}

Facts JSON

[
  {
    "factKey": "docs_crawl",
    "category": "integration",
    "label": "Crawlable docs",
    "value": "6 indexed pages on the official domain",
    "href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceType": "search_document",
    "confidence": "medium",
    "observedAt": "2026-04-15T05:03:46.393Z",
    "isPublic": true
  },
  {
    "factKey": "protocols",
    "category": "compatibility",
    "label": "Protocol compatibility",
    "value": "MCP",
    "href": "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/contract",
    "sourceUrl": "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/contract",
    "sourceType": "contract",
    "confidence": "high",
    "observedAt": "2026-02-24T19:44:58.017Z",
    "isPublic": true
  },
  {
    "factKey": "auth_modes",
    "category": "compatibility",
    "label": "Auth modes",
    "value": "mcp, api_key, oauth",
    "href": "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/contract",
    "sourceUrl": "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/contract",
    "sourceType": "contract",
    "confidence": "high",
    "observedAt": "2026-02-24T19:44:58.017Z",
    "isPublic": true
  },
  {
    "factKey": "schema_refs",
    "category": "artifact",
    "label": "Machine-readable schemas",
    "value": "OpenAPI or schema references published",
    "href": "https://github.com/anthonylimo90/zafari-mcp-server#input",
    "sourceUrl": "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/contract",
    "sourceType": "contract",
    "confidence": "high",
    "observedAt": "2026-02-24T19:44:58.017Z",
    "isPublic": true
  },
  {
    "factKey": "vendor",
    "category": "vendor",
    "label": "Vendor",
    "value": "Anthonylimo90",
    "href": "https://github.com/anthonylimo90/zafari-mcp-server",
    "sourceUrl": "https://github.com/anthonylimo90/zafari-mcp-server",
    "sourceType": "profile",
    "confidence": "medium",
    "observedAt": "2026-02-24T19:43:14.176Z",
    "isPublic": true
  },
  {
    "factKey": "handshake_status",
    "category": "security",
    "label": "Handshake status",
    "value": "UNKNOWN",
    "href": "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/trust",
    "sourceUrl": "https://xpersona.co/api/v1/agents/mcp-anthonylimo90-zafari-mcp-server/trust",
    "sourceType": "trust",
    "confidence": "medium",
    "observedAt": null,
    "isPublic": true
  }
]

Change Events JSON

[
  {
    "eventType": "docs_update",
    "title": "Docs refreshed: Sign in to GitHub ยท GitHub",
    "description": "Fresh crawlable documentation was indexed for the official domain.",
    "href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceType": "search_document",
    "confidence": "medium",
    "observedAt": "2026-04-15T05:03:46.393Z",
    "isPublic": true
  }
]

Sponsored

Ads related to zafari-mcp-server and adjacent AI workflows.