Türkiye'de online mektup yaz; basıp PTT ile cezaevi, asker, kurum ve adrese gönderelim.
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.
Taslağı oluşturur. Yanıt: id, token (sakla), handoff_url (kullanıcıya ver), missing (eksik alanlar), quote. Bilmediğin alanı boş bırak; kullanıcı devir sayfasında tamamlar.
mektup metni (en az 20 karakter)
/options → font kodu; boş = varsayılan
ajan adı (ör. ChatGPT)
kartpostal kategorisi kodu; görseli kullanıcı seçer
hükümlü / sicil no (isteğe bağlı)
koğuş, bölük, servis…
T.C. kimlik no; uydurma, boş bırak
cezaevi: zorunlu
cezaevi / birlik / kurum adı
katalog kaydı (/destinations); cezaevi için zorunlu
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http letters https://mekktup.com/api/v1/agents/mcp
Taslağı oluşturur. Yanıt: id, token (sakla), handoff_url (kullanıcıya ver), missing (eksik alanlar), quote. Bilmediğin alanı boş bırak; kullanıcı devir sayfasında tamamlar.
| Argument | Type | Description |
|---|---|---|
| body* | string | mektup metni (en az 20 karakter) |
| font | string | /options → font kodu; boş = varsayılan |
| agent | string | ajan adı (ör. ChatGPT) |
| scent | string | |
| category | string | |
| postcard | string | kartpostal kategorisi kodu; görseli kullanıcı seçer |
| ink_color | string | |
| paper_color | string | |
| sender_city | string | |
| sender_name | string | |
| sender_email | string | |
| sender_phone | string | |
| recipient_ref | string | hükümlü / sicil no (isteğe bağlı) |
| envelope_color | string | |
| recipient_city | string | |
| recipient_name | string | |
| recipient_unit | string | koğuş, bölük, servis… |
| sender_address | string | |
| sender_district | string | |
| recipient_address | string | |
| recipient_district | string | |
| sender_national_id | string | T.C. kimlik no; uydurma, boş bırak |
| sender_postal_code | string | |
| recipient_father_name | string | cezaevi: zorunlu |
| recipient_institution | string | cezaevi / birlik / kurum adı |
| recipient_postal_code | string | |
| recipient_destination_id | string | katalog kaydı (/destinations); cezaevi için zorunlu |
{
"type": "object",
"required": [
"body"
],
"properties": {
"body": {
"type": "string",
"maxLength": 40000,
"description": "mektup metni (en az 20 karakter)"
},
"font": {
"type": "string",
"description": "/options → font kodu; boş = varsayılan"
},
"agent": {
"type": "string",
"maxLength": 60,
"description": "ajan adı (ör. ChatGPT)"
},
"scent": {
"type": "string"
},
"category": {
"enum": [
"adres",
"cezaevi",
"askeri",
"kurum"
],
"type": "string"
},
"postcard": {
"type": "string",
"description": "kartpostal kategorisi kodu; görseli kullanıcı seçer"
},
"ink_color": {
"type": "string"
},
"paper_color": {
"type": "string"
},
"sender_city": {
"type": "string",
"maxLength": 80
},
"sender_name": {
"type": "string",
"maxLength": 120
},
"sender_email": {
"type": "string",
"maxLength": 200
},
"sender_phone": {
"type": "string",
"maxLength": 32
},
"recipient_ref": {
"type": "string",
"maxLength": 40,
"description": "hükümlü / sicil no (isteğe bağlı)"
},
"envelope_color": {
"type": "string"
},
"recipient_city": {
"type": "string",
"maxLength": 80
},
"recipient_name": {
"type": "string",
"maxLength": 120
},
"recipient_unit": {
"type": "string",
"maxLength": 80,
"description": "koğuş, bölük, servis…"
},
"sender_address": {
"type": "string",
"maxLength": 400
},
"sender_district": {
"type": "string",
"maxLength": 80
},
"recipient_address": {
"type": "string",
"maxLength": 400
},
"recipient_district": {
"type": "string",
"maxLength": 80
},
"sender_national_id": {
"type": "string",
"maxLength": 11,
"description": "T.C. kimlik no; uydurma, boş bırak"
},
"sender_postal_code": {
"type": "string",
"maxLength": 10
},
"recipient_father_name": {
"type": "string",
"maxLength": 80,
"description": "cezaevi: zorunlu"
},
"recipient_institution": {
"type": "string",
"maxLength": 200,
"description": "cezaevi / birlik / kurum adı"
},
"recipient_postal_code": {
"type": "string",
"maxLength": 10
},
"recipient_destination_id": {
"type": "string",
"format": "uuid",
"nullable": true,
"description": "katalog kaydı (/destinations); cezaevi için zorunlu"
}
},
"additionalProperties": false
}Adımlar, kurallar ve devir (handoff) açıklaması. Akışa başlamadan bir kez oku.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Durum ve içerik: draft (taslak) → paid → printing → shipped → delivered; handed_off kullanıcı devraldı demektir (artık düzeltilemez).
| Argument | Type | Description |
|---|---|---|
| id* | string | create_letter yanıtındaki id |
| token* | string | create_letter yanıtındaki token |
{
"type": "object",
"required": [
"id",
"token"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "create_letter yanıtındaki id"
},
"token": {
"type": "string",
"description": "create_letter yanıtındaki token"
}
},
"additionalProperties": false
}Kategoriler ve ek zorunlu alanları, ödeme öncesi zorunlu alanlar, kağıt / zarf / koku / kartpostal / yazı tipi / mürekkep kodları (ücretli mi, fiyat), fiyat tablosu (kuruş).
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Fiyat teklifi: mektup alanları + photo_count (fotoğraf adedi) + document_pages (belge sayfası). Sunucu hesaplar; kalemler ve toplam kuruş cinsinden.
| Argument | Type | Description |
|---|---|---|
| body | string | mektup metni (en az 20 karakter) |
| font | string | /options → font kodu; boş = varsayılan |
| scent | string | |
| category | string | |
| postcard | string | kartpostal kategorisi kodu; görseli kullanıcı seçer |
| ink_color | string | |
| paper_color | string | |
| photo_count | integer | |
| sender_city | string | |
| sender_name | string | |
| sender_email |
Cezaevi / askeri birlik / kurum kataloğu. city ve q boşsa illeri (ad + kayıt sayısı) döner; q kelime kelime ad + ilçe + il + adres içinde aranır (ör. 'silivri kadın'). Dönen kayıttaki id recipient_destination_id olarak kullanılır; adres alanları da kayıttan alınır.
| Argument | Type | Description |
|---|---|---|
| q | string | arama metni |
| city | string | il adı (ör. İstanbul) |
| limit | integer | |
| category | string |
{
"type": "object",
"properties": {
"q": {
"type": "string",
"description": "arama metni"
},
"city": {
"type": "string",
"description": "il adı (ör. İstanbul)"
},
"limit": {
"type": "integer",
"default": 40,
"maximum": 200,
"minimum": 1
},
"category": {
"enum": [
"cezaevi",
"askeri",
"kurum"
],
"type": "string",
"default": "cezaevi"
}
},
"additionalProperties": false
}Devralınmadan önce taslağı düzeltir (yalnız verilen alanlar değişir).
| Argument | Type | Description |
|---|---|---|
| id* | string | create_letter yanıtındaki id |
| token* | string | create_letter yanıtındaki token |
| changes* | object |
{
"type": "object",
"required": [
"id",
"token",
"changes"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "create_letter yanıtındaki id"
},
"token": {
"type": "string",
"description": "create_letter yanıtındaki token"
},
"changes": {
"type": "object",
"properties": {
"body": {
"type": "string",
"maxLength": 40000,
"description": "mektup metni (en az 20 karakter)"
},
"font": {
"type": "string",
"description": "/options → font kodu; boş = varsayılan"
},
"scent": {
"type": "string"
},
"category": {
"enum": [
"adres",
"cezaevi",
"askeri",
"kurum"
],
"type": "string"
},
"postcard": {
"type": "string",
"description": "kartpostal kategorisi kodu; görseli kullanıcı seçer"
},
"ink_color": {
"type": "string"
},
"paper_color": {
"type": "string"
},
"sender_city": {
"type": "string",
"maxLength": 80
},
"sender_name": {
"type": "string",
"maxLength": 120
},
"sender_email": {
"type": "string",
"maxLength": 200
},
"sender_phone": {
"type": "string",
"maxLength": 32
},
"recipient_ref": {
"type": "string",
"maxLength": 40,
"description": "hükümlü / sicil no (isteğe bağlı)"
},
"envelope_color": {
"type": "string"
},
"recipient_city": {
"type": "string",
"maxLength": 80
},
"recipient_name": {
"type": "string",
"maxLength": 120
},
"recipient_unit": {
"type": "string",
"maxLength": 80,
"description": "koğuş, bölük, servis…"
},
"sender_address": {
"type": "string",
"maxLength": 400
},
"sender_district": {
"type": "string",
"maxLength": 80
},
"recipient_address": {
"type": "string",
"maxLength": 400
},
"recipient_district": {
"type": "string",
"maxLength": 80
},
"sender_national_id": {
"type": "string",
"maxLength": 11,
"description": "T.C. kimlik no; uydurma, boş bırak"
},
"sender_postal_code": {
"type": "string",
"maxLength": 10
},
"recipient_father_name": {
"type": "string",
"maxLength": 80,
"description": "cezaevi: zorunlu"
},
"recipient_institution": {
"type": "string",
"maxLength": 200,
"description": "cezaevi / birlik / kurum adı"
},
"recipient_postal_code": {
"type": "string",
"maxLength": 10
},
"recipient_destination_id": {
"type": "string",
"format": "uuid",
"nullable": true,
"description": "katalog kaydı (/destinations); cezaevi için zorunlu"
}
},
"additionalProperties": false
}
},
"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.
Takes a password, API key or token as an argument, so the secret passes through the model's context and chat logs.
Fix: Read credentials from the server's own configuration (environment, OAuth) instead of a tool argument.
| string |
| sender_phone | string |
| recipient_ref | string | hükümlü / sicil no (isteğe bağlı) |
| document_pages | integer |
| envelope_color | string |
| recipient_city | string |
| recipient_name | string |
| recipient_unit | string | koğuş, bölük, servis… |
| sender_address | string |
| sender_district | string |
| recipient_address | string |
| recipient_district | string |
| sender_national_id | string | T.C. kimlik no; uydurma, boş bırak |
| sender_postal_code | string |
| recipient_father_name | string | cezaevi: zorunlu |
| recipient_institution | string | cezaevi / birlik / kurum adı |
| recipient_postal_code | string |
| recipient_destination_id | string | katalog kaydı (/destinations); cezaevi için zorunlu |
{
"type": "object",
"properties": {
"body": {
"type": "string",
"maxLength": 40000,
"description": "mektup metni (en az 20 karakter)"
},
"font": {
"type": "string",
"description": "/options → font kodu; boş = varsayılan"
},
"scent": {
"type": "string"
},
"category": {
"enum": [
"adres",
"cezaevi",
"askeri",
"kurum"
],
"type": "string"
},
"postcard": {
"type": "string",
"description": "kartpostal kategorisi kodu; görseli kullanıcı seçer"
},
"ink_color": {
"type": "string"
},
"paper_color": {
"type": "string"
},
"photo_count": {
"type": "integer",
"default": 0,
"maximum": 50,
"minimum": 0
},
"sender_city": {
"type": "string",
"maxLength": 80
},
"sender_name": {
"type": "string",
"maxLength": 120
},
"sender_email": {
"type": "string",
"maxLength": 200
},
"sender_phone": {
"type": "string",
"maxLength": 32
},
"recipient_ref": {
"type": "string",
"maxLength": 40,
"description": "hükümlü / sicil no (isteğe bağlı)"
},
"document_pages": {
"type": "integer",
"default": 0,
"maximum": 500,
"minimum": 0
},
"envelope_color": {
"type": "string"
},
"recipient_city": {
"type": "string",
"maxLength": 80
},
"recipient_name": {
"type": "string",
"maxLength": 120
},
"recipient_unit": {
"type": "string",
"maxLength": 80,
"description": "koğuş, bölük, servis…"
},
"sender_address": {
"type": "string",
"maxLength": 400
},
"sender_district": {
"type": "string",
"maxLength": 80
},
"recipient_address": {
"type": "string",
"maxLength": 400
},
"recipient_district": {
"type": "string",
"maxLength": 80
},
"sender_national_id": {
"type": "string",
"maxLength": 11,
"description": "T.C. kimlik no; uydurma, boş bırak"
},
"sender_postal_code": {
"type": "string",
"maxLength": 10
},
"recipient_father_name": {
"type": "string",
"maxLength": 80,
"description": "cezaevi: zorunlu"
},
"recipient_institution": {
"type": "string",
"maxLength": 200,
"description": "cezaevi / birlik / kurum adı"
},
"recipient_postal_code": {
"type": "string",
"maxLength": 10
},
"recipient_destination_id": {
"type": "string",
"format": "uuid",
"nullable": true,
"description": "katalog kaydı (/destinations); cezaevi için zorunlu"
}
},
"additionalProperties": false
}