Skip to main content
Glama
goni-b

GHL Multi-Account MCP Proxy

by goni-b

GHL Multi-Account MCP Proxy

חיבור כל חשבונות ה-JONSON לקלוד דרך MCP אחד


מה זה עושה

במקום חיבור MCP נפרד לכל לקוח — שרת אחד שמנתב לפי שם הלקוח:

קלוד → [שרת זה] → JONSON של חופית וגוני
                 → JONSON של Futures Finance
                 → JONSON של לקוח 3
                 → ...

קלוד קורא לכלי: ghl_create_post(client="hofit_goni", ...) — השרת יודע לאיזה JONSON לשלוח.


Related MCP server: MCP Data Gateway

🎛️ עמוד ניהול הטוקנים (מקומי)

הדרך הקלה להזין ולנהל את הטוקנים — עמוד מעוצב שרץ על המחשב שלך:

npm install
npm start

פתחי בדפדפן: http://localhost:3000

בעמוד אפשר:

  • להוסיף לקוח — שם, מפתח (key), Private Integration Token, ו-User ID

  • ✏️ לערוך / 🗑️ למחוק לקוח קיים

  • "בדיקה" — בודק מול JONSON שהטוקן תקין ומחזיר כמה חשבונות מחוברים

  • 📋 להעתיק את כתובת ה-MCP לחיבור בקלוד

הטוקנים נשמרים בקובץ clients.json (מקומי בלבד — לא נכנס ל-Git). כל לקוח שמתווסף בעמוד נראה לקלוד אוטומטית (אין צורך לערוך קוד).

🔒 סיסמת ניהול: אם תגדירי ADMIN_PASSWORD ב-.env, העמוד וה-API ידרשו סיסמה. מומלץ מאוד להגדיר לפני פריסה חיה כדי שהעמוד לא יהיה פתוח לכולם.

☁️ בפריסה חיה (Railway): מערכת הקבצים של Railway זמנית — לכן לפריסה יציבה הזיני את הטוקנים כ-Environment Variables (TOKEN_HOFIT_GONI וכו'), והם ייטענו אוטומטית לצד clients.json.


הגדרה ראשונית — 3 שלבים

שלב 1: קבל Token + Location ID לכל לקוח

Token (Private Integration):

JONSON → Settings → Integrations → Private Integrations
→ Create New Integration
→ שם: "Claude MCP" → סמן את כל ההרשאות
→ העתק את ה-Token (pit-xxxx...)

Location ID:

פתח את הסאב-אקאונט של הלקוח ב-JONSON
→ ה-URL יראה: .../location/ABC123.../...  ← ABC123 זה ה-Location ID

ה-Token כבר משויך ל-Location, אז יחד הם מזהים את החשבון. (User ID נדרש רק לתזמון פוסטים — נטען אוטומטית, או נוסף ידנית בהגדרות מתקדמות.)

שלב 2: פרוס ל-Railway (חינמי)

הפריסה דרך GitHub — Railway מושך את הקוד מהריפו ומריץ אוטומטית:

1. railway.com → Login with GitHub
2. New Project → Deploy from GitHub repo → goni-b/jonson-mcp-connector
3. Railway מזהה Node.js, מריץ npm install + npm start אוטומטית

הגדר Environment Variables (לשונית Variables):

ADMIN_PASSWORD = סיסמה-חזקה-לעמוד-הניהול      ← מגן על עמוד הניהול
MCP_KEY        = מחרוזת-אקראית-ארוכה-32-תווים  ← מגן על חיבור ה-MCP (חובה!)
DATA_DIR       = /data                          ← שומר clients.json על ה-Volume

⚠️ אל תגדיר PORT — Railway מזריק אותו לבד.

הוסף Volume (כדי שהלקוחות יישמרו לצמיתות):

Service → Settings → Volumes → New Volume
Mount path: /data

צור כתובת ציבורית:

Service → Settings → Networking → Generate Domain
לדוגמה: https://jonson-mcp-connector-production.up.railway.app

שלב 3: הוסף לקוחות דרך עמוד הניהול

פתח בדפדפן את הכתובת מה-Railway (עמוד הניהול), הזן את ADMIN_PASSWORD, והוסף כל לקוח עם המפתח, השם, ה-Token וה-Location ID. הכל נשמר ב-Volume ושורד פריסות.

שלב 4: חבר עובדים ל-MCP

כל עובד מוסיף את ה-connector מה-Claude שלו. חובה לכלול את מפתח הגישה:

ב-Claude Code (טרמינל):

claude mcp add jonson --transport http https://[railway-url]/mcp \
  --header "Authorization: Bearer <MCP_KEY>"

ב-Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "jonson": {
      "type": "http",
      "url": "https://[railway-url]/mcp",
      "headers": { "Authorization": "Bearer <MCP_KEY>" }
    }
  }
}

🔑 תן את ה-MCP_KEY רק לעובדים שאתה רוצה שיהיו להם גישה. אם עובד עוזב — החלף את MCP_KEY ב-Railway ועדכן את הנותרים.

זהו. חיבור אחד מאובטח לכל הלקוחות, לכל העובדים.


הוספת לקוח חדש

אין צורך לגעת בקוד! פשוט פתח את עמוד הניהול (הכתובת מה-Railway), הזן את הסיסמה, ולחץ ➕ להוספת לקוח. הכלים בקלוד יתעדכנו אוטומטית עבור כל העובדים.


כלים שקלוד מקבל

כלי

תיאור

ghl_list_clients

רשימת כל הלקוחות המחוברים

ghl_get_accounts

חשבונות סושיאל של לקוח

ghl_create_post

תזמון Reel/Post/Story ללקוח

ghl_get_posts

פוסטים מתוזמנים של לקוח


דוגמת שימוש בקלוד

"תתזמן את הרילס של חופית וגוני ל-1 ביולי 19:00"

קלוד קורא:
1. ghl_get_accounts(client="hofit_goni") → מוצא accountId
2. ghl_create_post(
     client="hofit_goni",
     account_id="...",
     type="reel",
     summary="Caption...",
     media_url="https://drive.google.com/...",
     schedule_date="2026-07-01T19:00:00+03:00",
     status="scheduled"
   )

בדיקה שהשרת עובד

# Health check
curl https://[railway-url]/

# MCP initialize (עם מפתח הגישה)
curl -X POST https://[railway-url]/mcp \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <MCP_KEY>" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}'

# רשימת כלים
curl -X POST https://[railway-url]/mcp \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <MCP_KEY>" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'

אבטחה

  • MCP_KEY — מפתח גישה ל-/mcp. בלעדיו כל אחד באינטרנט עם הכתובת יקבל גישה לכל לקוחות ה-GHL. חובה להגדיר בפריסה חיה. העובדים שולחים אותו ככותרת Authorization: Bearer.

  • ADMIN_PASSWORD — מגן על עמוד הניהול וה-API שלו.

  • הטוקנים של הלקוחות נשמרים ב-clients.json על ה-Volume (לא בקוד, לא ב-Git).

  • אל תשמור .env או clients.json ב-Git — רק .env.example.

  • אל תשתף את MCP_KEY או טוקנים בצ'אט. אם מפתח דלף — החלף אותו ב-Railway.


מבנה הפרויקט

ghl-multi-proxy/
├── server.js       ← השרת הראשי + API לעמוד הניהול
├── public/
│   └── index.html  ← עמוד ניהול הטוקנים (מעוצב)
├── clients.json    ← הטוקנים שנשמרו (מקומי / Volume — לא ל-Git!)
├── package.json
├── .env            ← הגדרות מקומיות (PORT, ADMIN_PASSWORD, MCP_KEY) — לא ל-Git!
├── .env.example    ← תבנית
├── .gitignore      ← מוודא ש-.env ו-clients.json לא נשמרים ב-Git
└── README.md
F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/goni-b/jonson-mcp-connector'

If you have feedback or need assistance with the MCP directory API, please join our Discord server