Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Jabama

PYPI · JABAMA-MCP

Unofficial read-only Jabama: villas and stays with exact prices, group tours, events and theater.

Available components

+14 this week 78 Trust /100

Last scanned (14 hours ago)

Scores higher than 75% of PyPI servers

Category E-commerce

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security100
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • Runs hatchling.build at install time, a recognised build step with no custom scripting around it. View diagnostics → Pass
  • 1 of 35 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency97
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to sepehr071/jabama-mcp). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 0 days ago).Pass
  • Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability61
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 4892 tokens (~232/item across 21 items; 21 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management0
  • Stability check failed: the tool surface changed between 0.2.2 and 0.4.1: 0 tool removals, 21 breaking changes, 0 additions. See how to fix → Fail
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 21 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 22 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 22 Oct 26 +15
    • Stability: fail → unverified ▼ security
    • Tool safety: pass → unverified ▼ security
    • Malware scan: unverified → pass ▲ security
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • Package version: 0.4.0 → 0.4.1 functional
  • 20 Oct 26 0
    • Package version: 0.2.2 → 0.4.0 functional
  • 19 Oct 26 −15
    • Malware scan: pass → unverified ▼ security
  • 18 Oct 26 +15
    • Stability: fail → unverified ▼ security
    • Tool safety: pass → unverified ▼ security
    • Malware scan: unverified → pass ▲ security
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • Package version: 0.3.0 → 0.4.0 functional
  • 17 Oct 26 −15
    • Malware scan: pass → unverified ▼ security
  • 16 Oct 26 +14
    • Stability: unverified → fail ▼ security
    • Tool safety: pass → unverified ▼ security
    • Malware scan: unverified → pass ▲ security
    • Stability: Stability not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. security
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • Package version: 0.2.2 → 0.3.0 functional
  • 14 Oct 26 +15
    • Malware scan: pass → unverified ▼ security
    • Injection markers: unverified → pass ▲ security
    • First check of Judged manipulation: pass security
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • Tool coverage: unverified → 100 ▲ functional
    • MCP protocol: unverified → pass ▲ functional
    • First check of Schema quality: fail functional
    • First check of Destructive annotations: pass functional
    • First check of Schema quality: fail functional
    • First check of Schema quality: good functional
    • First check of Tool coverage: 100 functional
    • First check of Tool coverage: 100 functional
  • 13 Oct 26 0
    • Malware scan: pass → unverified ▼ security
    • Package version: 0.2.1 → 0.2.2 functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 22 Oct 2026 · Analysed pypi/jabama-mcp@0.4.1

Provenance Verified

A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.

Result Verified
Ecosystem pypi
Reason Verified
Discovered via Registry attestation endpoint
Source repo sepehr071/jabama-mcp
Certificate issuer https://token.actions.githubusercontent.com
Certificate SAN https://github.com/sepehr071/jabama-mcp/.github/workflows/publish.yml@refs/tags/v0.4.1
Rekor log index 3390393003
Predicate type PyPI publish attestation https://docs.pypi.org/attestations/publish/v1
Subject digest sha256:8a3cde914bb1e7501a36decfed99cad9b8ddedd2df478b1dcde39b2ff7c00780

Background: How many MCP packages publish verified provenance →

Install scripts 1 script
Hook Tier Command
build_backend allowlisted hatchling.build

Background: Why install scripts are a supply-chain risk →

Dependencies 35 packages
Packages resolved 35
No linked repository 1
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 21 exposed · ~4,159 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
jb_categories ~76

List Jabama's themed stay categories (special pool, A-frame, luxury, cheap, jungle, sea view, pet friendly, last-minute deals, instant booking, ...). Each has `search` = the jb_search_stays arguments that open it; add dates, guests and a city filter (cities=[...]) as needed.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

jb_event ~181

One event or experience: what it is, exact address, rules, what to bring, price, refundability, sessions with seats left, reviews and the organizer. Times are Tehran local; a start with no time is a day session (hours are in `when`). A session with seated=true has a seat map, and its price is only a "from" base: call jb_event_seats with its session_id for the free seats and real section prices. Buying a ticket needs login on jabama.events.

NameTypeReqDescription
event_idstringyesEvent id from jb_search_events, e.g. '69063962' or 'legacy-622'.
full_textboolean–Return long text (reviews, descriptions) unclipped, not cut at …
max_sessionsinteger–Max sessions (showtimes or days) to list.

No output schema declared.

No examples provided.

jb_event_filters ~53

Cities and categories of Jabama Events with event counts, for the city and category filters of jb_search_events.

NameTypeReqDescription
city––City slug to count categories in, e.g. 'tehran'; default all cities.

No output schema declared.

No examples provided.

jb_event_seats ~112

Live seat availability of one seated event session: free seats per section and row, with the section prices in Toman. Only for sessions with seated=true in jb_event; others are general admission (just seats_left). Section prices override the session `price`; cheapest_free_seat_price is what the cheapest free seat really costs. Holding or buying seats needs login on jabama.events.

NameTypeReqDescription
session_idstringyessession_id of a seated session from jb_event, e.g. '47540640'.

No output schema declared.

No examples provided.

jb_find_destination ~186

Turn a place name into ready jb_search_stays arguments (keyword and filters). Returns up to 20 matches (cities, provinces, areas, points of interest such as a beach or mall, host complexes, single listings), each with `search` = the arguments to pass to jb_search_stays. `listings` is an approximate listing count, for ranking only. A `listing` match carries its code for jb_stay. Persian only; for English place names try the Persian spelling. A city keyword (city-ramsar) also covers nearby towns (Tonekabon); for the city alone use keyword 'all' with cities=['ramsar'].

NameTypeReqDescription
querystringyesPlace name in Persian: city, province, area, landmark or complex, e.g. 'رامسر' or 'کیش مال'. English names do not match.

No output schema declared.

No examples provided.

jb_help ~145

Answer questions about Jabama's rules: cancellation and refunds, payment, tax, check-in, host and guest duties. Searches the official help center (long answers) and the support app's short tagged answers. For one listing's own cancellation windows use jb_stay or jb_price_quote.

NameTypeReqDescription
full_textboolean–Return long text (reviews, descriptions) unclipped, not cut at …
limitinteger–Max answers from each source.
querystringyesTopic in Persian, e.g. 'کنسلی' (cancellation), 'استرداد' (refund), 'مالیات' (tax), 'پرداخت' (payment).

No output schema declared.

No examples provided.

jb_host ~142

A host's listings (with ratings and a from-price per night) and guest reviews across all of them, newest first. Use to judge a host before booking. The host's average score and successful-booking count are in jb_stay's host block. listings_count can exceed the listings returned (inactive ones).

NameTypeReqDescription
full_textboolean–Return long text (reviews, descriptions) unclipped, not cut at …
host_idintegeryesHost id (host.host_id from jb_stay), e.g. 1288856.
limitinteger–Reviews per page.
pageinteger–1-based page number.

No output schema declared.

No examples provided.

jb_parse_request ~146

Turn a free-text stay request into jb_search_stays arguments with Jabama's own AI parser. Understands type, amenities, region, city, guests, dates (Jalali in the text becomes Gregorian) and price. Pass `search` straight to jb_search_stays (add dates if the user gave none). `understood` lists what it picked up; anything else in the request must be filtered by you. Parsing only: it does not search.

NameTypeReqDescription
textstringyesWhat the user wants, in Persian (English works partly), e.g. 'ویلای استخردار در رامسر برای ۶ نفر زیر ۱۰ میلیون تومان هر شب'.

No output schema declared.

No examples provided.

jb_price_quote ~259

Get the exact amount to pay for one listing, dates and guest count (Toman), with per-night lines and the cancellation windows. The same quote the listing page shows; it creates no booking. payable is after long-stay and host discounts, extra-guest charges included. For a multi-unit complex, unit_options shows how the group can split across units. An error means the dates cannot be booked (blocked nights, past or beyond the calendar, too many guests): check jb_stay_calendar. per_night day_type 'custom' means a host-set price (jb_stay_calendar shows weekday/weekend). Each cancellation phase runs until its Gregorian `until` date. Booking itself happens on the site.

NameTypeReqDescription
check_instringyesCheck-in date, Gregorian YYYY-MM-DD, e.g. '2026-10-20'.
check_outstringyesCheck-out date, Gregorian YYYY-MM-DD, e.g. '2026-10-23'.
codeintegeryesListing code from a search or URL, e.g. 328353.
guestsinteger–Everyone who stays, children included (the quote has no child price), e.g. 4.

No output schema declared.

No examples provided.

jb_reviews ~146

Read guest reviews of a listing: stars 1-5, text, when they stayed, nights, and the host's reply. sort=lowest_rated surfaces complaints. The overall score and per-category scores are in jb_stay. Reviews carry no exact date, only the Jalali month or "N days ago".

NameTypeReqDescription
codeintegeryesListing code from a search or URL, e.g. 328353.
full_textboolean–Return long text (reviews, descriptions) unclipped, not cut at …
limitinteger–Reviews per page.
pageinteger–1-based page number.
sortstring–Order.

No output schema declared.

No examples provided.

jb_search_events ~308

Search Jabama Events: concerts, shows, workshops, exhibitions and experiences (offroad, boats, riding, food tours) with prices in Toman. Only events with an upcoming session are returned. Theater plays are separate: jb_theaters. For seated=true, price is the "from" base; seat sections cost more (jb_event_seats). on_date is one day; for a weekend call once per day. Next: jb_event for sessions, seats left, details and reviews.

NameTypeReqDescription
category––Category slug from jb_event_filters, e.g. 'offroad', 'pottery', 'event-and-workshop'.
city––City slug from jb_event_filters, e.g. 'tehran', 'ramsar', 'bandar_anzali'.
cursor––next_cursor of the previous page, to get the next one.
kindstring–events = shows, workshops, exhibitions; experiences = tours, boats, riding, food, ...
limitinteger–Events per page.
on_date––Only events with a session that day, Gregorian YYYY-MM-DD, e.g. '2026-10-10'.
pricestring–Free or paid events.
query––Words, e.g. 'آفرود' or 'کنسرت'.
rated_4_plusboolean–Only events rated 4 or more.
sortstring–cheapest puts free events first.

No output schema declared.

No examples provided.

jb_search_stays ~729

Search Jabama stays (villas, suites, apartments, cottages, eco-lodges) with prices for your dates and guests. With dates, total_price is the whole stay in Toman for `guests` (extra-guest charges included) and cheapest_night is the cheapest single night; without dates, prices are for one default night. image is the cover photo; with dates url opens the listing for those dates and guests. Get the keyword from jb_find_destination, themes from jb_categories, or free text via jb_parse_request. total 0 with dates can mean nothing is free; try other dates. For the exact payable amount call jb_price_quote with a code; for details jb_stay.

NameTypeReqDescription
amenities––Amenity slugs (all required), e.g. ['swimming-pool', 'jacuzzi']. Others: sauna, billiard, barbeque, internet-wifi, parking, kitchen, air-conditioning-system, elevator (see amenity_options).
areas––Area slugs from jb_find_destination, e.g. ['sadaf-kish'].
check_in––Check-in date, Gregorian YYYY-MM-DD, e.g. '2026-10-20'.
check_out––Check-out date, Gregorian YYYY-MM-DD, e.g. '2026-10-23'.
cities––English city slugs, with keyword 'all', e.g. ['ramsar'].
codes––Only these listing codes (keyword 'all'), e.g. [403515, 328353].
guests––Number of guests; count children too (the site prices every guest), e.g. 4.
instant_onlyboolean–Only instantly bookable listings.
keywordstring–Keyword from jb_find_destination or jb_categories, e.g. 'city-ramsar' (with nearby towns), 'province-gilan', 'list-33183', 'landing-categories', or 'all' with filters (cities=['ramsar'] is the city a…
limitinteger–Stays per page.
max_price––Highest price in Toman for the whole stay, e.g. 30000000.
min_price––Lowest price in Toman for the whole stay.
min_score––Minimum guest rating: 3, 3.5, 4, 4.5 or 5.
name_contains––Words in the listing title (full-text), not a place filter.
pageinteger–1-based page number.
poi––Point-of-interest token from jb_find_destination, unchanged.
price_per_nightboolean–Treat min_price / max_price as per night (whole-stay price divided by nights).
provinces––English province slugs, with keyword 'all', e.g. ['gilan'].
regions––Setting, e.g. ['jungle'].
rooms––Bedrooms, 0 = studio, 5 = five or more.
sortstring–default = Jabama's ranking; cheapest / most_expensive by whole-stay price; rating = weighted by review count.
tags––Tags from jb_categories, e.g. ['AmazingPoolCategory'], ['pricing-affordable'], ['LongStaysDiscount'].
types––Listing types, e.g. ['villa'].
zones––Zone slugs, with keyword 'all', e.g. ['north'].

No output schema declared.

No examples provided.

jb_search_tours ~478

Search Jabama group tours (nature, desert, hiking, history, food tours across Iran) with price per person in Toman. For tours to a place, get its id from jb_tour_places (has_tours false = no tours there) and pass destination_id; `query` is fuzzy and matches unrelated tours. Cards show the next departure dates; free seats and the price of each package per departure only come from jb_tour. A few tours carry obviously wrong prices (a 1,850 Toman tour): set min_price when sorting by cheapest.

NameTypeReqDescription
available_onlyboolean–Only tours with an upcoming departure that can be booked.
category––Tour category.
destination_id––Destination place id from jb_tour_places, e.g. 50 (Yazd city).
difficulty––Difficulty levels (any of).
durationstring–One-day or multi-day trips.
end_date––Departure on or before this Gregorian date, e.g. '2026-10-31'.
limitinteger–Tours per page.
max_price––Highest price per person in Toman, e.g. 5000000.
min_free_seats––Group size that must fit, e.g. 4.
min_price––Lowest price per person in Toman.
min_rating––Minimum traveller rating 1-5, e.g. 4.
origin_id––Start place id from jb_tour_places, e.g. 4 (Tehran).
pageinteger–1-based page number.
query––Loose text match over all tour text, e.g. 'کویر'; it also returns tours to other places, so for a place use destination_id.
sortstring–Order; bookable tours always come first.
start_date––Departure on or after this Gregorian date, e.g. '2026-10-20'.
tags––Tag slugs (any of), e.g. ['desert'], ['forest', 'lake']. Others: plain, coast, safari, Mountainous, offroad, rafting, camping, historical, village-tour, city-tour, nomad-eco, food-tour, ritual, yoga.

No output schema declared.

No examples provided.

jb_similar_stays ~219

Find alternatives to a listing: similar stays nearby, and other units of the same property. Use when a listing is full, too small or too expensive. With dates, prices are the whole stay in Toman for those dates and guests (stays not free then are listed in not_free_for_dates); without dates, one default night (stays too small for `guests` are left out). same_property.keyword lists every unit of the complex in jb_search_stays. Inactive listings have no alternatives: search the area.

NameTypeReqDescription
check_in––Check-in date, Gregorian YYYY-MM-DD, e.g. '2026-10-20'.
check_out––Check-out date, Gregorian YYYY-MM-DD, e.g. '2026-10-23'.
codeintegeryesListing code from a search or URL, e.g. 328353.
guests––Number of guests, children included, e.g. 4.
limitinteger–Max similar stays.

No output schema declared.

No examples provided.

jb_stay ~159

Get one listing: capacity, beds, rooms, check-in/out times, house rules, amenities (and what is missing), cancellation policy, host, review scores. Use after jb_search_stays to answer "is it right for us". from_per_night is the cheapest night in the next ~76 days (Toman, base guests). For nightly prices and free dates call jb_stay_calendar; for the exact price of a stay, jb_price_quote; for reviews, jb_reviews; for the host, jb_host.

NameTypeReqDescription
codeintegeryesListing code from a search or URL, e.g. 328353.
full_textboolean–Return long text (reviews, descriptions) unclipped, not cut at …

No output schema declared.

No examples provided.

jb_stay_calendar ~176

Nightly availability and price of one listing for the next ~76 days, with weekend and holiday flags. price is Toman for one night for base_guests; each guest above that adds extra_guest. Weekend (Wednesday and Thursday nights) and holiday nights can cost more or less. Use it to find free dates or the cheapest nights; then confirm a stay with jb_price_quote (it adds long-stay discounts). Dates past the calendar cannot be booked yet. Blocked nights show only date and available=false.

NameTypeReqDescription
codeintegeryesListing code from a search or URL, e.g. 328353.
nightsinteger–How many nights to show.
start––First night to show, Gregorian YYYY-MM-DD; default today, e.g. '2026-10-20'.

No output schema declared.

No examples provided.

jb_theater ~160

One theater play: venue, cast and crew, reviews, showtimes with live seats left; with showtime_id also the free seats by row and their prices. Prices are Toman per seat. The seat map is fetched live from the partner and is sometimes unavailable for a while (seats then holds the error); seats_left still works. Buying needs login.

NameTypeReqDescription
full_textboolean–Return long text (reviews, descriptions) unclipped, not cut at …
play_idstringyesPlay id from jb_theaters, e.g. '65745'.
showtime_id––A showtime id from this tool's showtimes, e.g. '65745:642277', to list its free seats.

No output schema declared.

No examples provided.

jb_theaters ~88

List theater plays on sale on Jabama Events (Tehran, via the partner Zirbana): venue, address, from-price in Toman, rating, writer, director and cast. Next: jb_theater for showtimes, seats left and the free seats of a showtime.

NameTypeReqDescription
cursor––next_cursor of the previous page.
limitinteger–Plays per page.

No output schema declared.

No examples provided.

jb_tour ~152

One group tour: packages, every departure with free seats and the per-person price of each package, day plan, meals, what is included, cancellation rules, guide, operator and reviews. Prices are Toman per person; a group pays the package price times the number of people. Pick a departure with free_seats >= group size. Booking needs login on jabama.tours.

NameTypeReqDescription
full_textboolean–Return long text (reviews, descriptions) unclipped, not cut at …
include_pastboolean–Also list past (completed) departures.
tour_idstringyesTour id (8 digits) from jb_search_tours, e.g. '26314786'.

No output schema declared.

No examples provided.

jb_tour_places ~109

Turn a place name into a Jabama Tours place id for jb_search_tours (destination_id / origin_id). Cities and provinces come first, then areas and attractions. has_tours is false for places no tour visits yet.

NameTypeReqDescription
directionstring–destination = where tours go; origin = where they start.
limitinteger–Max places.
querystringyesPlace name, e.g. 'یزد', 'تهران' or 'masal'.

No output schema declared.

No examples provided.

jb_travel_guide ~135

Search Jabama's travel magazine (/mag): guides on attractions, best time to visit, how to get there, food. Returns the top matches (the site gives at most 10) with a summary and link; set text_chars to read the articles themselves. Use for trip planning next to jb_search_stays.

NameTypeReqDescription
limitinteger–Max articles.
querystringyesDestination or topic in Persian, e.g. 'رامسر' or 'جاهای دیدنی کیش'.
text_charsinteger–Characters of article text to include per article; 0 = summary only.

No output schema declared.

No examples provided.

Install

How do I install the Jabama MCP server?

Jabama runs locally as a PyPI package, launched with uvx jabama-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

pypi · jabama-mcp

# add to Claude Code
claude mcp add sepehr071-jabama-mcp -- uvx jabama-mcp
Common questions

What is the Jabama MCP server?

Jabama is an MCP server listed in the public MCP registry as io.github.sepehr071/jabama-mcp. Unofficial read-only Jabama: villas and stays with exact prices, group tours, events and theater. This page covers its PyPI package (jabama-mcp).

Is the Jabama MCP server safe to use?

Jabama scores 78 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 22 October 2026. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Jabama MCP server expose?

Jabama exposes 21 tools: jb_find_destination, jb_parse_request, jb_search_stays, jb_categories, jb_stay, and 16 more. Their descriptions and schemas cost roughly 4,159 tokens of context every time the server is loaded.

Is the Jabama MCP server still maintained?

Jabama is still listed as active in the MCP registry. We last reached this channel on 22 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the Jabama MCP server under?

Jabama declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.