An MCP server for Georgian public data, read from the organizations that publish it.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Returns the newest air quality readings of the automatic stations of the National Environmental Agency of Georgia (NEA), for a city, one station, or every station. Each reading gives PM10, PM2.5, NO2, O3, SO2, or CO, its concentration (µg/m³, CO in mg/m³), its hour, and its level: good, fair, moderate, poor, or very_poor. A station level is its worst reading. Stations come worst first. A reading older than 24 hours is left out. The NEA stamps some readings a few hours ahead of the clock: the time is as published. Data from the NEA.
A city of Georgia in English or Georgian, for example Tbilisi or რუსთავი. Leave city and station empty for every station.
The maximum count of stations, 1 to 100. The default is 25.
A station code of the NEA, for example TSRT. Give a city or a station, not both.
The language of the addresses and the cities: ka or en. The default is en.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http georgia-mcp https://geo-mcp.abgeo.cloud/mcp
Returns the newest air quality readings of the automatic stations of the National Environmental Agency of Georgia (NEA), for a city, one station, or every station. Each reading gives PM10, PM2.5, NO2, O3, SO2, or CO, its concentration (µg/m³, CO in mg/m³), its hour, and its level: good, fair, moderate, poor, or very_poor. A station level is its worst reading. Stations come worst first. A reading older than 24 hours is left out. The NEA stamps some readings a few hours ahead of the clock: the time is as published. Data from the NEA.
| Argument | Type | Description |
|---|---|---|
| city | string | A city of Georgia in English or Georgian, for example Tbilisi or რუსთავი. Leave city and station empty for every station. |
| limit | integer | The maximum count of stations, 1 to 100. The default is 25. |
| station | string | A station code of the NEA, for example TSRT. Give a city or a station, not both. |
| language | string | The language of the addresses and the cities: ka or en. The default is en. |
{
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "A city of Georgia in English or Georgian, for example Tbilisi or რუსთავი. Leave city and station empty for every station."
},
"limit": {
"type": "integer",
"description": "The maximum count of stations, 1 to 100. The default is 25."
},
"station": {
"type": "string",
"description": "A station code of the NEA, for example TSRT. Give a city or a station, not both."
},
"language": {
"type": "string",
"description": "The language of the addresses and the cities: ka or en. The default is en."
}
},
"additionalProperties": false
}Returns the hourly readings of one station of the National Environmental Agency of Georgia (NEA) over at most 7 days of the last 7, newest first, with the level of each reading. The default is the last 24 hours. Call air_get_quality first to find the station code. The NEA stamps some readings a few hours ahead of the clock: the time is as published. Data from the NEA.
| Argument | Type | Description |
|---|---|---|
| to | string | The last date of the period, YYYY-MM-DD. At most 7 days with from, counted with both ends. |
| from | string | The first date of the period, YYYY-MM-DD, at most 7 days ago. Give from and to, or neither for the last 24 hours. |
| limit | integer | The maximum count of readings of each pollutant, newest first, 1 to 100. The default is 24. |
| station* | string | A station code of the NEA, for example TSRT. |
| language | string | The language of the address and the city: ka or en. The default is en. |
| pollutant | string | One pollutant: PM10, PM2.5, NO2, O3, SO2, or CO. The default is every pollutant of the station. |
{
"type": "object",
"required": [
"station"
],
"properties": {
"to": {
"type": "string",
"description": "The last date of the period, YYYY-MM-DD. At most 7 days with from, counted with both ends."
},
"from": {
"type": "string",
"description": "The first date of the period, YYYY-MM-DD, at most 7 days ago. Give from and to, or neither for the last 24 hours."
},
"limit": {
"type": "integer",
"description": "The maximum count of readings of each pollutant, newest first, 1 to 100. The default is 24."
},
"station": {
"type": "string",
"description": "A station code of the NEA, for example TSRT."
},
"language": {
"type": "string",
"description": "The language of the address and the city: ka or en. The default is en."
},
"pollutant": {
"type": "string",
"description": "One pollutant: PM10, PM2.5, NO2, O3, SO2, or CO. The default is every pollutant of the station."
}
},
"additionalProperties": false
}Returns the seats of the hall of one session of Cavea that has not started: each row, each seat with its class, a mark for a taken seat, and a mark for special needs. Gives the count of free seats and the price in lari of each seat class. The server reads the map at each call. It reserves no seat. A person buys the ticket on cavea.ge. Data from the web site of Cavea, cavea.ge.
| Argument | Type | Description |
|---|---|---|
| session* | string | The session code from cinema_list_sessions, for example cag_5/27-10-2026/22:15. |
| language | string | The language of the names and the texts: ka or en. The default is en. |
{
"type": "object",
"required": [
"session"
],
"properties": {
"session": {
"type": "string",
"description": "The session code from cinema_list_sessions, for example cag_5/27-10-2026/22:15."
},
"language": {
"type": "string",
"description": "The language of the names and the texts: ka or en. The default is en."
}
},
"additionalProperties": false
}Lists the open cinemas of Cavea, in Tbilisi and Batumi. Returns the code, the name, the city, and the address of each cinema. Use the code in cinema_list_sessions. Data from the web site of Cavea, cavea.ge.
| Argument | Type | Description |
|---|---|---|
| language | string | The language of the names and the texts: ka or en. The default is en. |
{
"type": "object",
"properties": {
"language": {
"type": "string",
"description": "The language of the names and the texts: ka or en. The default is en."
}
},
"additionalProperties": false
}Lists the movies that Cavea shows now, or the movies coming soon. Returns the code, the name, the genres, the duration in minutes, the age rating, the premiere, the directors, the actors, and a description of each movie. Use the code in cinema_list_sessions. Data from the web site of Cavea, cavea.ge.
| Argument | Type | Description |
|---|---|---|
| limit | integer | The maximum count of movies, 1 to 100. The default is 50. |
| status | string | now_showing or coming_soon. The default is now_showing. |
| language | string | The language of the names and the texts: ka or en. The default is en. |
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"description": "The maximum count of movies, 1 to 100. The default is 50."
},
"status": {
"type": "string",
"description": "now_showing or coming_soon. The default is now_showing."
},
"language": {
"type": "string",
"description": "The language of the names and the texts: ka or en. The default is en."
}
},
"additionalProperties": false
}Lists the sessions of the movies of Cavea on one date that have not started, in the order of the start time. Narrow the list by a movie, a cinema, an audio language, or a format. Returns the cinema, the hall, the start time, the languages, the formats, the price in lari, and the occupancy level of each session. With a movie, each session has the price of each seat class. With no movie, it has the price of the class Standard. Use the session code in cinema_get_seat_map. Data from the web site of Cavea, cavea.ge.
| Argument | Type | Description |
|---|---|---|
| date | string | The date in Tbilisi, YYYY-MM-DD. The default is today. Cavea publishes about 3 days. |
| limit | integer | The maximum count of sessions, 1 to 100. The default is 30. |
| movie | string | The code of a movie from cinema_list_movies or cinema_search_movies. |
| cinema | string | The code of a cinema from cinema_list_cinemas. |
| format | string | One format: 3d, imax, dolby_atmos, screenx, or infinity_vision. |
| language | string | The language of the names and the texts: ka or en. The default is en. |
| audio_language | string | The language of the sound: ka or en. |
Finds the movies of Cavea, now showing or coming soon, by a part of the English name. Give the text in English: Cavea does not match a Georgian name. Returns the code, the name, the status, the duration in minutes, and the age rating of each movie. Data from the web site of Cavea, cavea.ge.
| Argument | Type | Description |
|---|---|---|
| limit | integer | The maximum count of movies, 1 to 100. The default is 20. |
| query* | string | A part of the English name of the movie, 2 to 100 characters. |
| language | string | The language of the names and the texts: ka or en. The default is en. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"description": "The maximum count of movies, 1 to 100. The default is 20."
},
"query": {
"type": "string",
"description": "A part of the English name of the movie, 2 to 100 characters."
},
"language": {
"type": "string",
"description": "The language of the names and the texts: ka or en. The default is en."
}
},
"additionalProperties": false
}Returns the current fuel prices of Georgian fuel companies: the price in GEL of one unit of each product. Use it for the price of petrol, diesel, or gas at a company today, or to compare companies. Each product has a grade that every company shares: regular (litre), premium (litre), super (litre), super_100 (litre), diesel (litre), cng (cubic_metre), lpg (litre), other (litre). price: the price in GEL of one unit at a station with an attendant. self_service_price: the price in GEL of one unit at a self-service station of the same company. A product with no self_service_price has none. The fuel companies of this server: connect (Connect, publishes no effective date), gulf (Gulf), lukoil (Lukoil), neogas (Neogas, publishes no effective date), portal (Portal, publishes no effective date), rompetrol (Rompetrol, publishes no effective date), socar (SOCAR, publishes no effective date), wissol (Wissol). The prices are of today. The tool has no history.
| Argument | Type | Description |
|---|---|---|
| grades | null | array | Grades: regular, premium, super, super_100, diesel, cng, lpg, other. Empty asks every grade. |
| language | string | The language of the product names: ka or en. The default is en. |
| companies | null | array | Fuel company codes. Empty asks every company. The description of the tool lists the codes. |
{
"type": "object",
"properties": {
"grades": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
},
"description": "Grades: regular, premium, super, super_100, diesel, cng, lpg, other. Empty asks every grade."
},
"language": {
"type": "string",
"description": "The language of the product names: ka or en. The default is en."
},
"companies": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
},
"description": "Fuel company codes. Empty asks every company. The description of the tool lists the codes."
}
},
"additionalProperties": false
}Returns the full conditions of one offer of a Georgian bank. Use the bank and the id from offers_search_offers. Give the person the url of the offer with the conditions.
| Argument | Type | Description |
|---|---|---|
| id* | string | The offer id from offers_search_offers. |
| bank* | string | The bank code of the offer. |
| language | string | The language of the texts: ka or en. The default is en. |
{
"type": "object",
"required": [
"bank",
"id"
],
"properties": {
"id": {
"type": "string",
"description": "The offer id from offers_search_offers."
},
"bank": {
"type": "string",
"description": "The bank code of the offer."
},
"language": {
"type": "string",
"description": "The language of the texts: ka or en. The default is en."
}
},
"additionalProperties": false
}Finds the current offers that Georgian banks give to card holders at partners: discounts, cashback, and points. Filters by bank, customer tier, category, benefit kind, card, and period. For "this month", give the first and the last date of the month. When a bank has a next_offset, call again with that offset to read more. The benefit is the text of the bank. Compare the banks by reading it. Give the person the url of each offer that you name. benefit is the text of the bank. The server reads no number from it: read the percent, the cap, and the conditions from the text. kinds come from a field of the bank, and other means that the bank states none. tiers: standard is every customer, premium the premium package (SOLO at BOG), private the private banking (Wealth Management at BOG), youth the pupils and the students. The banks of this server: bog (Bank of Georgia), liberty (Liberty Bank), tbc (TBC Bank). The card codes of each bank: bog: amex (Amex), mastercard (Mastercard), mastercard_world_elite (Mastercard World Elite), plus (PLUS), scool_card (sCool Card), solo (SOLO), student_card (Student Card), super_plus (Super PLUS), teacher_card (Teacher Card), visa (Visa), visa_infinite (Visa Infinite), visa_platinum (Visa Platinum), visa_signature (Visa Signature); liberty: mastercard (Mastercard), top_card_black (Top|Card Black Edition), visa (Visa); tbc: concept_card (TBC Concept Card), credit_card (Credit Card), crypto (Crypto), installment (Installment), mastercard (Mastercard), pay_later (Pay Later), pupil_card (Pupil's Card), tbc_card (TBC Card), travel_card (Travel Card), visa (Visa).
| Argument | Type | Description |
|---|---|---|
| to | string | The last date of the period, YYYY-MM-DD, at most 366 days after from. The default is from. |
| from | string | The first date of the period, YYYY-MM-DD. The default is today in Tbilisi. |
| banks |
Finds the postal codes of Georgian Post for an address, a street, a town, or a village of Georgia, by text in Georgian or English. Returns each matching address with its 4-digit postal code and its district. Georgian Post gives a postal code for each street in Tbilisi, Batumi, and Kutaisi only. For another town or a village, search its name. Data from the web page of Georgian Post.
| Argument | Type | Description |
|---|---|---|
| limit | integer | The maximum count of addresses, 1 to 100. The default is 20. |
| query* | string | An address, a street, a town, or a village of Georgia, in Georgian or English. 3 to 100 characters. |
| language | string | The language of the addresses: ka or en. The default is en. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"description": "The maximum count of addresses, 1 to 100. The default is 20."
},
"query": {
"type": "string",
"description": "An address, a street, a town, or a village of Georgia, in Georgian or English. 3 to 100 characters."
},
"language": {
"type": "string",
"description": "The language of the addresses: ka or en. The default is en."
}
},
"additionalProperties": false
}Returns the current commercial exchange rates of Georgian banks: the prices in GEL at which a bank buys and sells one unit of a currency. Use it for the price of a currency at a bank today, or to compare banks. Ask for 1 to 10 currencies. buy: the price in GEL that the bank pays when you sell it one unit. sell: the price in GEL that the bank asks when you buy one unit from it. The banks of this server: basisbank (Basisbank), bog (Bank of Georgia), credo (Credo Bank), crystal (Crystal, a microfinance organization), halyk (Halyk Bank), inteli (Inteli Express, a microfinance organization), kursi (Kursi.ge, an online exchange bureau), liberty (Liberty Bank), mbc (MBC, a microfinance organization), mjc (MJC, a microfinance organization), rico (Rico Credit, a microfinance organization), scapp (Scapp, a microfinance organization), tbc (TBC Bank), terabank (Terabank). The list gives the kind of each one that is not a bank. The rates are of today. The tool has no history.
| Argument | Type | Description |
|---|---|---|
| banks | null | array | Bank codes. Empty asks every bank. The description of the tool lists the codes. |
| currencies* | null | array | 1 to 10 ISO 4217 codes, for example USD and EUR. |
{
"type": "object",
"required": [
"currencies"
],
"properties": {
"banks": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
},
"description": "Bank codes. Empty asks every bank. The description of the tool lists the codes."
},
"currencies": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
},
"description": "1 to 10 ISO 4217 codes, for example USD and EUR."
}
},
"additionalProperties": false
}Returns the official exchange rates of the lari that the National Bank of Georgia (NBG) sets, for one date. Use it for the rate of a currency today or on a past date, for a contract, an invoice, or a tax form. Each rate is the price in GEL of `quantity` units; `rate_per_unit` is the price of one unit. The NBG publishes the rates of each business day at about 17:00 Tbilisi time, in force from the next day until the next set. A weekend or a holiday returns the set in force on it. The official rate is indicative. It is not the price of a bank.
| Argument | Type | Description |
|---|---|---|
| date | string | The date in YYYY-MM-DD, in Tbilisi. Empty means today. At most the valid date of the newest set: tomorrow after about 17:00. |
| language | string | The language of the currency names: en or ka. Empty means en. |
| currencies | null | array | ISO 4217 codes, for example USD and EUR. Empty returns every currency. At most 50. |
{
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "The date in YYYY-MM-DD, in Tbilisi. Empty means today. At most the valid date of the newest set: tomorrow after about 17:00."
},
"language": {
"type": "string",
"description": "The language of the currency names: en or ka. Empty means en."
},
"currencies": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
},
"description": "ISO 4217 codes, for example USD and EUR. Empty returns every currency. At most 50."
}
},
"additionalProperties": false
}Returns the official exchange rates of one currency over a period of up to 31 days, as set by the National Bank of Georgia (NBG). Use it for the movement of a currency over a week or a month. The answer holds one point for each set in force in the period, the set in force on the first day included. Each rate is the price in GEL of `quantity` units.
| Argument | Type | Description |
|---|---|---|
| to* | string | The last date of the period, YYYY-MM-DD. At most 31 days after from, counted with both ends. |
| from* | string | The first date of the period, YYYY-MM-DD. |
| currency* | string | One ISO 4217 code, for example USD. |
| language | string | The language of the currency name: en or ka. Empty means en. |
{
"type": "object",
"required": [
"currency",
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"description": "The last date of the period, YYYY-MM-DD. At most 31 days after from, counted with both ends."
},
"from": {
"type": "string",
"description": "The first date of the period, YYYY-MM-DD."
},
"currency": {
"type": "string",
"description": "One ISO 4217 code, for example USD."
},
"language": {
"type": "string",
"description": "The language of the currency name: en or ka. Empty means en."
}
},
"additionalProperties": false
}Returns the figures of one table of Geostat for a selection: value codes, or the last values, for each dimension. A dimension with no selection takes every value. Selects at most 1000 cells. An unpublished figure is null. The title of the table names the unit. Data from Geostat.
| Argument | Type | Description |
|---|---|---|
| code* | string | The code of a table, from stats_search_tables. |
| language | string | The language of the texts: ka or en. The default is en. |
| selection | null | array | The values of each dimension. A dimension that this list omits takes every value. |
{
"type": "object",
"required": [
"code"
],
"properties": {
"code": {
"type": "string",
"description": "The code of a table, from stats_search_tables."
},
"language": {
"type": "string",
"description": "The language of the texts: ka or en. The default is en."
},
"selection": {
"type": [
"null",
"array"
],
"items": {
"type": "object",
"required": [
"dimension"
],
"properties": {
"last": {
"type": "integer",
"description": "The count of the last values of the dimension, the newest for a time dimension."
},
"values": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
},
"description": "The codes of the values. Give values or last, not both."
},
"dimension": {
"type": "string",
"description": "The code of a dimension, from stats_get_table."
}
},
"additionalProperties": false
},
"description": "The values of each dimension. A dimension that this list omits takes every value."
}
},
"additionalProperties": false
}Returns the inflation of Georgia for one month, in percent: annual (to the same month of the previous year), monthly (to the previous month), the 12 month average, and core inflation. For the whole country, a city, and a price group. The default is the newest published month. Data from the consumer price index of Geostat.
| Argument | Type | Description |
|---|---|---|
| group | string | The price group: total, food, alcohol_tobacco, clothing, housing, furnishings, health, transport, communication, recreation, education, restaurants, or miscellaneous. The default is total. |
| month | string | The month, YYYY-MM. The default is the newest published month. |
| region | string | georgia, tbilisi, kutaisi, batumi, gori, telavi, or zugdidi. The default is georgia. |
| language | string | The language of the names: ka or en. The default is en. |
{
"type": "object",
"properties": {
"group": {
"type": "string",
"description": "The price group: total, food, alcohol_tobacco, clothing, housing, furnishings, health, transport, communication, recreation, education, restaurants, or miscellaneous. The default is total."
},
"month": {
"type": "string",
"description": "The month, YYYY-MM. The default is the newest published month."
},
"region": {
"type": "string",
"description": "georgia, tbilisi, kutaisi, batumi, gori, telavi, or zugdidi. The default is georgia."
},
"language": {
"type": "string",
"description": "The language of the names: ka or en. The default is en."
}
},
"additionalProperties": false
}Returns the title and the dimensions of one table of Geostat, with the code and the text of each value. Read it before stats_get_cells. The values of a time dimension go from the oldest to the newest. A table has no unit field: the title names it. Data from Geostat.
| Argument | Type | Description |
|---|---|---|
| code* | string | The code of a table, from stats_search_tables: Social Statistics/Labour/Wages_Region.px. |
| language | string | The language of the texts: ka or en. The default is en. |
{
"type": "object",
"required": [
"code"
],
"properties": {
"code": {
"type": "string",
"description": "The code of a table, from stats_search_tables: Social Statistics/Labour/Wages_Region.px."
},
"language": {
"type": "string",
"description": "The language of the texts: ka or en. The default is en."
}
},
"additionalProperties": false
}Finds the tables of Geostat, the National Statistics Office of Georgia, whose title or folder holds every word of a text: for example prices, salaries, population, GDP, and trade. Returns the code, the title, the folder, and the update date of each table, the newest first. Then call stats_get_table with a code. Data from Geostat.
| Argument | Type | Description |
|---|---|---|
| limit | integer | The maximum count of tables, 1 to 100. The default is 20. |
| query* | string | The words to find in the title or the folder of a table, in the language of the request. 1 to 100 characters. |
| language | string | The language of the titles: ka or en. The default is en. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"description": "The maximum count of tables, 1 to 100. The default is 20."
},
"query": {
"type": "string",
"description": "The words to find in the title or the folder of a table, in the language of the request. 1 to 100 characters."
},
"language": {
"type": "string",
"description": "The language of the titles: ka or en. The default is en."
}
},
"additionalProperties": false
}Returns a route of the TTC with each direction: its headsign and its stops in order.
| Argument | Type | Description |
|---|---|---|
| kind | string | The kind, when two routes share the number: bus, minibus, metro, or cable_car. |
| route* | string | The route number (385) or the route id. |
| language | string | The language of the names: ka or en. The default is en. |
{
"type": "object",
"required": [
"route"
],
"properties": {
"kind": {
"type": "string",
"description": "The kind, when two routes share the number: bus, minibus, metro, or cable_car."
},
"route": {
"type": "string",
"description": "The route number (385) or the route id."
},
"language": {
"type": "string",
"description": "The language of the names: ka or en. The default is en."
}
},
"additionalProperties": false
}Returns the planned departure times of one direction of a route of the TTC at one stop, on a date of the current week. A time of 24:00 or later is after midnight, on the next date.
| Argument | Type | Description |
|---|---|---|
| date | string | The date, YYYY-MM-DD, in the current week. The default is today in Tbilisi. |
| kind | string | The kind, when two routes share the number: bus, minibus, metro, or cable_car. |
| stop* | string | The stop id or the stop code. The stop must be on the direction. |
| route* | string | The route number (385) or the route id. |
| language | string | The language of the names: ka or en. The default is en. |
| direction | null | integer | The direction number from transit_get_route. Required when the route has two directions. |
{
"type": "object",
"required": [
"route",
"stop"
],
"properties": {
"date": {
"type": "string",
"description": "The date, YYYY-MM-DD, in the current week. The default is today in Tbilisi."
},
"kind": {
"type": "string",
"description": "The kind, when two routes share the number: bus, minibus, metro, or cable_car."
},
"stop": {
"type": "string",
"description": "The stop id or the stop code. The stop must be on the direction."
},
"route": {
"type": "string",
"description": "The route number (385) or the route id."
},
"language": {
"type": "string",
"description": "The language of the names: ka or en. The default is en."
},
"direction": {
"type": [
"null",
"integer"
],
"description": "The direction number from transit_get_route. Required when the route has two directions."
}
},
"additionalProperties": false
}Lists the next vehicles of the TTC at a stop: route number, kind, headsign, minutes from as_of, and the expected instant. live is true when the TTC tracks the vehicle; else the time comes from the timetable. With a route, lists the next vehicles of that route only.
| Argument | Type | Description |
|---|---|---|
| stop* | string | The stop id (1:1000) or the stop code (1000). |
| limit | integer | The maximum count of arrivals, 1 to 30. The default is 10. |
| route | string | Only this route: its number (385) or its id. Empty gives the next vehicle of each route. |
| language | string | The language of the names: ka or en. The default is en. |
{
"type": "object",
"required": [
"stop"
],
"properties": {
"stop": {
"type": "string",
"description": "The stop id (1:1000) or the stop code (1000)."
},
"limit": {
"type": "integer",
"description": "The maximum count of arrivals, 1 to 30. The default is 10."
},
"route": {
"type": "string",
"description": "Only this route: its number (385) or its id. Empty gives the next vehicle of each route."
},
"language": {
"type": "string",
"description": "The language of the names: ka or en. The default is en."
}
},
"additionalProperties": false
}Lists the stops of the TTC within a distance of a point in Tbilisi, nearest first, with the distance in metres. Use transit_search_places to get the coordinates of a place.
| Argument | Type | Description |
|---|---|---|
| lat* | number | The latitude of the point, in degrees. |
| lon* | number | The longitude of the point, in degrees. |
| kind | string | Only stops of this kind: bus, metro, or cable_car. Empty gives every kind. |
| limit | integer | The maximum count of stops, 1 to 50. The default is 10. |
| language | string | The language of the names: ka or en. The default is en. |
| radius_m | integer | The distance from the point in metres, 1 to 2000. The default is 500. |
{
"type": "object",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"description": "The latitude of the point, in degrees."
},
"lon": {
"type": "number",
"description": "The longitude of the point, in degrees."
},
"kind": {
"type": "string",
"description": "Only stops of this kind: bus, metro, or cable_car. Empty gives every kind."
},
"limit": {
"type": "integer",
"description": "The maximum count of stops, 1 to 50. The default is 10."
},
"language": {
"type": "string",
"description": "The language of the names: ka or en. The default is en."
},
"radius_m": {
"type": "integer",
"description": "The distance from the point in metres, 1 to 2000. The default is 500."
}
},
"additionalProperties": false
}Plans a trip by public transport of the TTC in Tbilisi between two points, given as coordinates. Returns up to 3 itineraries with each leg: walk or ride, route, stops, instants, distance in metres. Use transit_search_places to get coordinates.
| Argument | Type | Description |
|---|---|---|
| to* | object | The end point in Tbilisi. |
| date | string | The date of depart_at or arrive_by, YYYY-MM-DD. The default is today in Tbilisi. |
| from* | object | The start point in Tbilisi. |
| time | string | The time of depart_at or arrive_by, HH:MM in Tbilisi. Required with them. |
| kinds | null | array | The kinds to ride: bus, minibus, metro, cable_car. bus and minibus go together. Empty gives every kind. A walk is always allowed. |
| timing | string | leave_now, depart_at, or arrive_by. The default is leave_now. |
| language | string | The language of the names: ka or en. The default is en. |
| preference | string | fastest, less_walking, or fewer_transfers. The default is fastest. |
Finds places in Tbilisi (addresses, streets, buildings) by text, with their coordinates, for transit_plan_trip and transit_list_nearby_stops. Data from OpenStreetMap through the TTC.
| Argument | Type | Description |
|---|---|---|
| limit | integer | The maximum count of places, 1 to 20. The default is 5. |
| query* | string | An address, a street, or a building in Tbilisi. |
| language | string | The language of the names: ka or en. The default is en. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"description": "The maximum count of places, 1 to 20. The default is 5."
},
"query": {
"type": "string",
"description": "An address, a street, or a building in Tbilisi."
},
"language": {
"type": "string",
"description": "The language of the names: ka or en. The default is en."
}
},
"additionalProperties": false
}Finds the routes of the TTC by number or by name. Kinds: bus, minibus, metro, cable_car. With no query, lists every route.
| Argument | Type | Description |
|---|---|---|
| kind | string | Only routes of this kind: bus, minibus, metro, or cable_car. |
| limit | integer | The maximum count of routes, 1 to 100. The default is 20. |
| query | string | A route number or a part of a route name. Empty gives every route. |
| language | string | The language of the names: ka or en. The default is en. |
{
"type": "object",
"properties": {
"kind": {
"type": "string",
"description": "Only routes of this kind: bus, minibus, metro, or cable_car."
},
"limit": {
"type": "integer",
"description": "The maximum count of routes, 1 to 100. The default is 20."
},
"query": {
"type": "string",
"description": "A route number or a part of a route name. Empty gives every route."
},
"language": {
"type": "string",
"description": "The language of the names: ka or en. The default is en."
}
},
"additionalProperties": false
}Finds the stops of the Tbilisi Transport Company (bus stops, metro stations, cable car stations) by name or stop code, in Georgian or English. Use the stop id of the result with transit_list_arrivals or transit_get_timetable.
| Argument | Type | Description |
|---|---|---|
| kind | string | Only stops of this kind: bus, metro, or cable_car. Empty gives every kind. |
| limit | integer | The maximum count of stops, 1 to 50. The default is 10. |
| query* | string | A stop name or a stop code, in Georgian or English. |
| language | string | The language of the names: ka or en. The default is en. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"kind": {
"type": "string",
"description": "Only stops of this kind: bus, metro, or cable_car. Empty gives every kind."
},
"limit": {
"type": "integer",
"description": "The maximum count of stops, 1 to 50. The default is 10."
},
"query": {
"type": "string",
"description": "A stop name or a stop code, in Georgian or English."
},
"language": {
"type": "string",
"description": "The language of the names: ka or en. The default is en."
}
},
"additionalProperties": false
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 6, 2026.
What changed in this server's tools since we started watching, newest first. Each change is scanned again.
Lists the open cinemas of Cavea, the largest cinema chain of Georgia, in Tbilisi and Batumi. Returns the code, the name, the city, and the address of each cinema. Use the code in cinema_list_sessions. Data from the web site of Cavea, cavea.ge.
{
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "The date in Tbilisi, YYYY-MM-DD. The default is today. Cavea publishes about 3 days."
},
"limit": {
"type": "integer",
"description": "The maximum count of sessions, 1 to 100. The default is 30."
},
"movie": {
"type": "string",
"description": "The code of a movie from cinema_list_movies or cinema_search_movies."
},
"cinema": {
"type": "string",
"description": "The code of a cinema from cinema_list_cinemas."
},
"format": {
"type": "string",
"description": "One format: 3d, imax, dolby_atmos, screenx, or infinity_vision."
},
"language": {
"type": "string",
"description": "The language of the names and the texts: ka or en. The default is en."
},
"audio_language": {
"type": "string",
"description": "The language of the sound: ka or en."
}
},
"additionalProperties": false
}| null | array |
| Bank codes. Empty asks every bank. The description lists the codes. |
| cards | null | array | Card codes of the banks. An offer that names no card matches every card. The description lists the codes of each bank. |
| kinds | null | array | Benefit kinds: discount, cashback, points, other. |
| limit | integer | The maximum count of offers for each bank, 1 to 30. The default is 10. |
| query | string | A text to find in the title, the partner, the benefit, or the bank category, 1 to 100 characters. |
| tiers | null | array | Customer tiers: standard, premium, private, youth. An offer matches when it has one of them. |
| offset | integer | The count of matching offers of each bank to skip, 0 or more. Give the next_offset of a bank to read its next page. The default is 0. |
| language | string | The language of the texts: ka or en. The default is en. |
| categories | null | array | Offer categories: dining, leisure, travel, health_beauty, auto, transport, shopping, electronics, home, education, kids, entertainment, real_estate, other. |
{
"type": "object",
"properties": {
"to": {
"type": "string",
"description": "The last date of the period, YYYY-MM-DD, at most 366 days after from. The default is from."
},
"from": {
"type": "string",
"description": "The first date of the period, YYYY-MM-DD. The default is today in Tbilisi."
},
"banks": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
},
"description": "Bank codes. Empty asks every bank. The description lists the codes."
},
"cards": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
},
"description": "Card codes of the banks. An offer that names no card matches every card. The description lists the codes of each bank."
},
"kinds": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
},
"description": "Benefit kinds: discount, cashback, points, other."
},
"limit": {
"type": "integer",
"description": "The maximum count of offers for each bank, 1 to 30. The default is 10."
},
"query": {
"type": "string",
"description": "A text to find in the title, the partner, the benefit, or the bank category, 1 to 100 characters."
},
"tiers": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
},
"description": "Customer tiers: standard, premium, private, youth. An offer matches when it has one of them."
},
"offset": {
"type": "integer",
"description": "The count of matching offers of each bank to skip, 0 or more. Give the next_offset of a bank to read its next page. The default is 0."
},
"language": {
"type": "string",
"description": "The language of the texts: ka or en. The default is en."
},
"categories": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
},
"description": "Offer categories: dining, leisure, travel, health_beauty, auto, transport, shopping, electronics, home, education, kids, entertainment, real_estate, other."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"from",
"to"
],
"properties": {
"to": {
"type": "object",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"description": "The latitude, in degrees."
},
"lon": {
"type": "number",
"description": "The longitude, in degrees."
}
},
"description": "The end point in Tbilisi.",
"additionalProperties": false
},
"date": {
"type": "string",
"description": "The date of depart_at or arrive_by, YYYY-MM-DD. The default is today in Tbilisi."
},
"from": {
"type": "object",
"required": [
"lat",
"lon"
],
"properties": {
"lat": {
"type": "number",
"description": "The latitude, in degrees."
},
"lon": {
"type": "number",
"description": "The longitude, in degrees."
}
},
"description": "The start point in Tbilisi.",
"additionalProperties": false
},
"time": {
"type": "string",
"description": "The time of depart_at or arrive_by, HH:MM in Tbilisi. Required with them."
},
"kinds": {
"type": [
"null",
"array"
],
"items": {
"type": "string"
},
"description": "The kinds to ride: bus, minibus, metro, cable_car. bus and minibus go together. Empty gives every kind. A walk is always allowed."
},
"timing": {
"type": "string",
"description": "leave_now, depart_at, or arrive_by. The default is leave_now."
},
"language": {
"type": "string",
"description": "The language of the names: ka or en. The default is en."
},
"preference": {
"type": "string",
"description": "fastest, less_walking, or fewer_transfers. The default is fastest."
}
},
"additionalProperties": false
}