GitHub
server ทางการของ GitHub ให้ AI อ่านและจัดการโค้ด issue และ pull request ในบัญชีของคุณได้ ใช้ผ่านคลาวด์ของ GitHub หรือรันในเครื่องด้วย Docker ก็ได้
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
MCP server for Samotpravil API — docs, typed tools, Python SDK parity, safety flags.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
SAMOTPRAVIL_API_KEY, SAMOTPRAVIL_READ_ONLY, SAMOTPRAVIL_ALLOW_SEND, SAMOTPRAVIL_ALLOW_MUTATIONS, SAMOTPRAVIL_ALLOW_GENERIC_API, SAMOTPRAVIL_HTTP_HOST, POSTMAN_API_KEY, POSTMAN_COLLECTION_UID, SAMOTPRAVIL_HTTP_AUTH_TOKEN, SAMOTPRAVIL_HTTP_PORT, SAMOTPRAVIL_DOCS_MODEค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"samotpravil": {
"command": "npx",
"args": [
"-y",
"samotpravil-mcp"
],
"env": {
"SAMOTPRAVIL_API_KEY": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_READ_ONLY": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_ALLOW_SEND": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_ALLOW_MUTATIONS": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_ALLOW_GENERIC_API": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_HTTP_HOST": "ใส่ค่าของคุณ",
"POSTMAN_API_KEY": "ใส่ค่าของคุณ",
"POSTMAN_COLLECTION_UID": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_HTTP_AUTH_TOKEN": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_HTTP_PORT": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_DOCS_MODE": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add samotpravil --env SAMOTPRAVIL_API_KEY='ใส่ค่าของคุณ' --env SAMOTPRAVIL_READ_ONLY='ใส่ค่าของคุณ' --env SAMOTPRAVIL_ALLOW_SEND='ใส่ค่าของคุณ' --env SAMOTPRAVIL_ALLOW_MUTATIONS='ใส่ค่าของคุณ' --env SAMOTPRAVIL_ALLOW_GENERIC_API='ใส่ค่าของคุณ' --env SAMOTPRAVIL_HTTP_HOST='ใส่ค่าของคุณ' --env POSTMAN_API_KEY='ใส่ค่าของคุณ' --env POSTMAN_COLLECTION_UID='ใส่ค่าของคุณ' --env SAMOTPRAVIL_HTTP_AUTH_TOKEN='ใส่ค่าของคุณ' --env SAMOTPRAVIL_HTTP_PORT='ใส่ค่าของคุณ' --env SAMOTPRAVIL_DOCS_MODE='ใส่ค่าของคุณ' -- npx -y samotpravil-mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"samotpravil": {
"command": "npx",
"args": [
"-y",
"samotpravil-mcp"
],
"env": {
"SAMOTPRAVIL_API_KEY": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_READ_ONLY": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_ALLOW_SEND": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_ALLOW_MUTATIONS": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_ALLOW_GENERIC_API": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_HTTP_HOST": "ใส่ค่าของคุณ",
"POSTMAN_API_KEY": "ใส่ค่าของคุณ",
"POSTMAN_COLLECTION_UID": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_HTTP_AUTH_TOKEN": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_HTTP_PORT": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_DOCS_MODE": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"samotpravil": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"samotpravil-mcp"
],
"env": {
"SAMOTPRAVIL_API_KEY": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_READ_ONLY": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_ALLOW_SEND": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_ALLOW_MUTATIONS": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_ALLOW_GENERIC_API": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_HTTP_HOST": "ใส่ค่าของคุณ",
"POSTMAN_API_KEY": "ใส่ค่าของคุณ",
"POSTMAN_COLLECTION_UID": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_HTTP_AUTH_TOKEN": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_HTTP_PORT": "ใส่ค่าของคุณ",
"SAMOTPRAVIL_DOCS_MODE": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
SAMOTPRAVIL_READ_ONLY envSAMOTPRAVIL_ALLOW_SEND envSAMOTPRAVIL_ALLOW_MUTATIONS envSAMOTPRAVIL_ALLOW_GENERIC_API envSAMOTPRAVIL_HTTP_HOST envPOSTMAN_COLLECTION_UID envSAMOTPRAVIL_HTTP_PORT envSAMOTPRAVIL_DOCS_MODE envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub dkanster ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: SAMOTPRAVIL_API_KEY, POSTMAN_API_KEY, SAMOTPRAVIL_HTTP_AUTH_TOKEN
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.8.0) เข้า registry 4 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี GitHub, Desktop Commander, Cloudflare MCP
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:↓ ดาวน์โหลดต่อสัปดาห์i★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
server ทางการของ GitHub ให้ AI อ่านและจัดการโค้ด issue และ pull request ในบัญชีของคุณได้ ใช้ผ่านคลาวด์ของ GitHub หรือรันในเครื่องด้วย Docker ก็ได้
MCP server for terminal commands, file operations, and process management
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
MCP-сервер вокруг документации API СамОтправил и HTTP API api.samotpravil.ru.
Версия: 1.8.0 · npm: samotpravil-mcp · MCP Registry: io.github.dkanster/samotpravil-api-mcp · Smithery: smithery.yaml · Cursor Directory: .mcp.json
Хостинг: репозиторий временно в dkanster/samotpravil-api-mcp.
Планируется: переезд в org Samotpravil →
@samotpravil/mcp— docs/ORG_MIGRATION.md.
Сервер подтягивает Postman-коллекцию с documenter (live + offline snapshot) и даёт агенту tools для поиска методов, вызова API и безопасных пресетов (READ_ONLY, dry_run). Имена typed tools совпадают с Python SDK samotpravil.
Экосистема: Postman → snapshot → MCP / OpenAPI / Docusaurus — docs/ECOSYSTEM.md · live preview: https://dkanster.github.io/samotpravil-api-mcp/
npx -y samotpravil-mcp@latest
Cursor — .cursor/mcp.json:
{
"mcpServers": { "samotpravil": { "command": "npx", "args": ["-y", "samotpravil-mcp@latest"], "env": { "SAMOTPRAVIL_API_KEY": "your_api_key_here", "SAMOTPRAVIL_READ_ONLY": "1", "SAMOTPRAVIL_ALLOW_SEND": "0" } } } }
SAMOTPRAVIL_API_KEY опционален для docs-only tools. После правок: Settings → MCP → Reload.
Бесплатного тестового ключа нет: регистрация в ЛК → верификация домена отправителя → ключ в env. Пакетную боевую отправку по умолчанию не открываем (SAMOTPRAVIL_ALLOW_SEND=0).
| Артефакт | Ссылка |
|---|---|
| Спека OpenAPI | https://spec.samotpravil.ru/openapi.yaml |
| Node-клиент API | npm i samotpravil |
| Пример SaaS (два ключа TX/MKT) | dkanster/samotpravil-example |
| Python MCP (pip) | mailganer-samotpravil-mcp |
| Smithery | daniil-kozemiakin/samotpravil |
| Cursor Directory | samotpravil-api-mcp |
Для SaaS сразу два API-ключа (разные стоп-листы и webhook URL) — см. пример выше.
Сценарии и конфиги для Claude / VS Code: [docs/EXAMPLES.md](./docs/EXAMPLES.md)
Каталог сообщества cursor.directory автодетектит MCP из корневого .mcp.json (дубль: mcp.json, манифест plugin.json). Первая отправка: cursor.directory/plugins/new → URL этого репозитория (вход GitHub/Google). В листинг не входят swagger-mcp и Postman maintainer.
Дальше править код и карточку — docs/PUBLISH.md § «Cursor Directory»: релиз npm по tag v*; карточку Directory не слать второй раз (дубли). Add to Cursor у уже поставивших сам не обновляется.
| Компонент | Кол-во | Нужен ключ |
|---|---|---|
| Docs tools | 4 | нет |
| Core typed API | 9 + api_request | SAMOTPRAVIL_API_KEY |
| Python SDK parity | 28 | SAMOTPRAVIL_API_KEY |
Auto tools (api_*) | ~16 | SAMOTPRAVIL_API_KEY |
| Postman maintainer | 4 | POSTMAN_API_KEY |
| MCP Resources | 9 | нет |
| MCP Prompts | 5 | нет |
Итого: ~59 tools ( +4 postman при POSTMAN_API_KEY).
| Tool | Описание |
|---|---|
get_overview | Авторизация, SMTP, лимиты, категории |
list_endpoints | Список всех методов API |
search_docs | Поиск по документации |
get_endpoint | Подробности по методу |
SAMOTPRAVIL_API_KEY)| Tool | Описание |
|---|---|
send_email | POST /api/v1/smtp_send |
send_mail_v2 | POST /api/v2/mail/send |
get_delivery_status | GET /api/v2/issue/status (message_id или x_track_id) |
get_package_status | GET /api/v2/package/status |
search_stop_list | Поиск email в стоп-листах |
add_stop_list_email / remove_stop_list_email | Стоп-лист (mail_from или domain) |
validate_email | POST /api/v2/emails/validate/ |
list_allowed_domains | GET /api/v2/blist/domains |
api_request | Generic escape hatch |
Typed tools с именами как в PyPI-пакете samotpravil: send_package, get_statistics, get_ext_status, stop_list_export_create, domain_add, get_blist, create_authkey и др.
Полный список и маппинг: [docs/EXAMPLES.md#python-sdk-parity](./docs/EXAMPLES.md#python-sdk-parity) · prompt python_sdk_parity
POSTMAN_API_KEY)| Tool | Описание |
|---|---|
postman_get_collection | Коллекция из Postman API |
postman_sync_snapshot | Postman API → data/collection.snapshot.json |
postman_diff_snapshot | Diff Postman vs локальный snapshot |
postman_search_requests | Поиск запросов в коллекции |
Подробнее: [docs/EXAMPLES.md#postman-tools](./docs/EXAMPLES.md#postman-tools)
api_{method}_{path} — для HTTP-методов, не покрытых typed tools (legacy v1, tickets, email check/clean и т.д.).
| Prompt | Описание |
|---|---|
integration_overview | Обзор SMTP + HTTP + лимиты |
send_transactional | Чеклист отправки письма |
stop_list_workflow | Работа со стоп-листами |
check_delivery | Статус по X-Track-ID / выпуску |
python_sdk_parity | Python SDK → MCP tools |
| URI | Содержимое |
|---|---|
samotpravil://overview | Обзор API |
samotpravil://endpoints | Индекс методов |
samotpravil://endpoint/{slug} | Один метод |
samotpravil://errors | Популярные ошибки |
samotpravil://integration | SMTP, X-Track-ID, трекинг |
samotpravil://sdk-mapping | Python SDK → MCP tools |
samotpravil://changelog | Фрагмент CHANGELOG пакета |
samotpravil://rate-limits | Лимиты API и отправки |
samotpravil://api-wishlist | Предложения по HTTP API (фрагмент) |
| Env | Эффект | ||
|---|---|---|---|
SAMOTPRAVIL_READ_ONLY=1 | Только GET/HEAD | ||
SAMOTPRAVIL_ALLOW_SEND=0 | Блок send/package | ||
SAMOTPRAVIL_ALLOW_MUTATIONS=0 | Блок stop-list, доменов, authkey | ||
SAMOTPRAVIL_ALLOW_GENERIC_API=0 | Отключить api_request | ||
SAMOTPRAVIL_DOCS_MODE | auto \ | live \ | snapshot |
dry_run: true | Preview запроса без отправки |
Секреты (api_key, key= в query) маскируются в ответах MCP.
npx samotpravil-mcp --http --port 3000
Env: SAMOTPRAVIL_HTTP_HOST, SAMOTPRAVIL_HTTP_PORT, SAMOTPRAVIL_HTTP_AUTH_TOKEN, SAMOTPRAVIL_HTTP_JSON_LOG=1 (structured logs).
docker build -t samotpravil-mcp .
docker run --rm -p 3000:3000 -e SAMOTPRAVIL_API_KEY=... -e SAMOTPRAVIL_HTTP_AUTH_TOKEN=... samotpravil-mcp
npm run export-openapi # → data/openapi.yaml
npm run upload-swaggerhub # SwaggerHub (нужен .env.swaggerhub) npm run prepare-swagger-mcp # Vizioz/Swagger-MCP
Спека: mailganer/samotpravil-smtp-api@1.0.0 · docs/SWAGGERHUB.md
npm run docusaurus:install && npm run docusaurus:start
Live: https://dkanster.github.io/samotpravil-api-mcp/ · docs/DOCS_SITE.md
| Площадка | Ссылка |
|---|---|
| npm | https://www.npmjs.com/package/samotpravil-mcp |
| MCP Registry | https://registry.modelcontextprotocol.io |
| Smithery | smithery.yaml в корне — docs/PUBLISH.md |
| Официальный promo | docs/official/ |
Шаблон: .env.samotpravil.example
SAMOTPRAVIL_API_KEY=your_key_here
Ключ API: https://samotpravil.ru/get-access
Полный список env: [docs/EXAMPLES.md](./docs/EXAMPLES.md#переменные-окружения)
git clone https://github.com/dkanster/samotpravil-api-mcp.git
cd samotpravil-api-mcp npm install && npm test && npm run dev npm run setup-hooks # optional: pre-commit (lint + test) npm run lint # ESLint npm run pre-publish-check # перед npm tag npm run release-prepare # pre-flight перед npm tag npm run generate-tool-catalog npm run scaffold-typed-tool send_package
npm run plan-org-migrationdata/collection.snapshot.jsonnpm run sync-docs или postman_sync_snapshotapi.samotpravil.ru:1126 / :1127/path/to/samotpravil-api-mcp/setup.sh .
MIT