Open-source B2B and marketplace ecommerce; new stores include an MCP server for AI agents.
SatGate – Economic Firewall for AI Agents
ภาพรวม
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Budget, payment and audit controls for AI agent API calls and MCP tool calls.
สามเสาของ PopNx MCP
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
- เสียงผู้ใช้iยังไม่มีรีวิวรีวิวเปิดพร้อมระบบบัญชีในขั้นถัดไป
- ผลตรวจเบื้องต้นของเราiผ่าน 1 จาก 1 ข้อตรวจจากข้อมูลที่เปิดอยู่ ยังไม่ได้สแกนโค้ด
- การใช้งานiยังไม่ได้วัด★ –
ใช้ทำอะไรได้
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
ติดตั้ง
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ก่อนติดตั้ง
- ผลตรวจเบื้องต้น: ผ่าน 1 จาก 1 ข้อ
- รันบนเครื่องของผู้ทำ สิ่งที่คุณถามจะผ่านเครื่องของเขา
- ค่าที่คุณต้องใส่เอง:
SATGATE_URL,SATGATE_TOKEN,Authorization
ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
- รันบนคลาวด์ไม่ต้องลงโปรแกรมเพิ่ม ต่อผ่านอินเทอร์เน็ตได้เลย
- npmติดตั้ง Node.js (มีคำสั่ง npx) ในเครื่อง
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ที่อยู่นี้ต้องใส่ key ใน header ของคำขอ ซึ่งเมนูเพิ่ม connector ใส่ให้ไม่ได้ ใช้ Claude Code, Cursor หรือ VS Code แทน
หรือรันในเครื่องคุณ
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"satgate": {
"command": "npx",
"args": [
"-y",
"satgate-mcp-bridge"
],
"env": {
"SATGATE_URL": "ใส่ค่าของคุณ",
"SATGATE_TOKEN": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport sse satgate https://satgate-mcp-saas.fly.dev/sse --header 'Authorization: ใส่ค่าของคุณ'หรือรันในเครื่องคุณ
claude mcp add satgate --env SATGATE_URL='ใส่ค่าของคุณ' --env SATGATE_TOKEN='ใส่ค่าของคุณ' -- npx -y satgate-mcp-bridgeเติมค่าที่เว้นว่างไว้ก่อนรัน
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"satgate": {
"url": "https://satgate-mcp-saas.fly.dev/sse",
"headers": {
"Authorization": "ใส่ค่าของคุณ"
}
}
}
}หรือรันในเครื่องคุณ
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"satgate": {
"command": "npx",
"args": [
"-y",
"satgate-mcp-bridge"
],
"env": {
"SATGATE_URL": "ใส่ค่าของคุณ",
"SATGATE_TOKEN": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"satgate": {
"type": "sse",
"url": "https://satgate-mcp-saas.fly.dev/sse",
"headers": {
"Authorization": "ใส่ค่าของคุณ"
}
}
}
}หรือรันในเครื่องคุณ
หรือคัดลอกค่าตั้งเอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"satgate": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"satgate-mcp-bridge"
],
"env": {
"SATGATE_URL": "ใส่ค่าของคุณ",
"SATGATE_TOKEN": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ที่อยู่นี้ต้องใส่ key ใน header ของคำขอ ซึ่งเมนูเพิ่ม connector ใส่ให้ไม่ได้ ใช้ Claude Code, Cursor หรือ VS Code แทน
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าที่ต้องใส่เอง
- SatGate Cloud MCP URL
- Agent token minted in SatGate Cloud (MCP Setup)
Authorizationความลับ จำเป็น HTTP headerBearer token minted in SatGate Cloud (MCP Setup)
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ทำอะไรได้บ้าง
ยังไม่ได้อ่านรายการเครื่องมือของตัวนี้ เราตรวจ endpoint ทีละชุดวนไป
ผลตรวจเบื้องต้นi
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
- ✓ ผ่าน
ตัวตนผู้ทำตรงกับ repo
ชื่อใน registry ยืนยันด้วยบัญชี GitHub SatGate-io ซึ่งเป็นเจ้าของ repo
- … ยังไม่ตรวจ
ยังมีคนดูแล
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
- … ยังไม่ตรวจ
มีสัญญาอนุญาต (license)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
- … ยังไม่ตรวจ
endpoint ตอบ
ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป
- … ยังไม่ตรวจ
ล็อกอินแบบ OAuth
ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป
- … ยังไม่ตรวจ
คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง
ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint
เทียบกับตัวอื่นในหมวด ร้านค้าออนไลน์และรับเงินi
- ดาวมากกว่า 0% ของอีก 1745 ตัวในหมวดนี้
- ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 47% ของอีก 1745 ตัวในหมวดนี้
- ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 1745 ตัวในหมวดนี้
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
คำถามที่พบบ่อย
SatGate – Economic Firewall for AI Agents ปลอดภัยไหม?
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใช้กุญแจหรือรหัสอะไรบ้าง?
ต้องใส่ค่าเหล่านี้: SATGATE_URL, SATGATE_TOKEN, Authorization
ตัวนี้รันบนเครื่องหรือบนคลาวด์?
ได้ทั้งสองแบบ จะลงในเครื่องหรือต่อผ่านคลาวด์ก็ได้
ยังมีคนดูแลอยู่ไหม?
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.5.0) เข้า registry 39 วันที่ผ่านมา
ใช้กับโปรแกรมไหนได้บ้าง?
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
มีตัวไหนใช้แทนได้บ้าง?
ในหมวดเดียวกันมี Spree Commerce: open-source B2B and marketplace ecommerce, Stripe MCP, MCP Cn Commerce
ตัวที่ใช้แทนได้
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
Stripe MCP
server ทางการของ Stripe ให้ AI ดูและจัดการลูกค้า สินค้า การชำระเงิน และใบแจ้งหนี้ ต่อผ่านคลาวด์ของ Stripe และล็อกอินแบบ OAuth
MCP Cn Commerce
8 read-only MCP platform entries; support is operation-specific; merchant live acceptance pending
README จากผู้ทำ
เปิดอ่าน README
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
SatGate
Observe, control and admit AI agent traffic
Every allow or deny comes with a signed receipt
Why • Build • Features • Quick Start • Docs • Website • Blog
SatGate is a gateway in front of APIs and MCP tools. It meters agent and MCP traffic (Observe), enforces owner budgets before work runs (Control), and charges external agents on the routes you choose (Admit; the Charge policy in the dashboard). Every allow or deny comes with a signed receipt.
Try it as an agent. This hosted route returns HTTP 402 with a Lightning invoice and a macaroon. The price is 10 sats, and one payment buys access until the credential_expires_at time in that response, not just one request:
curl -i -H "X-SatGate-Tenant: satgate-demo" https://api.satgate.io/paid/agent-demo
Agent instructions are in llms.txt.
Build Agents with SatGate
SatGate's developer primitive is three calls: issue(), pay(), and verify().
import os
from satgate import SatGate
satgate = SatGate(api_key=os.getenv("SATGATE_API_KEY"))
capability = satgate.issue( task="research market prices", agent="research-agent", allow=["mcp:web.search", "api:prices.read"], budget_usd=25, expires_in="1h", )
receipt = satgate.pay( upstream="https://api.example.com/search", capability=capability, max_usd=4.20, )
verified = satgate.verify(receipt) print(verified.decision, verified.evidence_pack_id)
Install today:
pip install satgate
npm install @satgate/sdk
The public packages install today; the issue/pay/verify API namespace is in private beta. Calls without private-beta access raise a structured error instead of returning fake receipts:
SatGateAuthError: This API namespace requires private beta access. Visit cloud.satgate.io/docs to request access.
Runnable examples:
examples/python/issue_pay_verify.pyexamples/node/issue-pay-verify.mjs
Works with: MCP · OpenAI tools · Anthropic tools · LangChain · CrewAI · Raw HTTP
🎬 See SatGate in Action
☁️ Don't want to self-host? Try SatGate Cloud
Managed SaaS — zero setup, multi-tenant isolation, enterprise dashboard.
Free Observe tier. No credit card required.
The Problem
AI agents are making API calls autonomously. They spawn sub-agents, call MCP tools, and run overnight while you sleep.
Your existing stack answers: *"Is this request authenticated?"*
Nobody answers: "Should this agent have authority to spend, delegate, or invoke this paid resource?"
✓ Network Firewall → "Can this packet enter?"
✓ Application Firewall → "Is this request safe?" ? Economic Firewall → "Should this agent act, spend, or pay?"
That's the gap. SatGate fills it.
What is SatGate?
SatGate is an Economic Firewall for AI agent requests. Drop it in front of your APIs and MCP tools to enforce scoped authority, budgets, paid-rail context, and Evidence Pack receipts before agents act.
Not another routing layer. Routing gateways (Bifrost, LiteLLM, Portkey) optimize *which provider* handles a call. SatGate governs *whether the call should happen at all* based on authority, policy, budget, and paid-rail context.
Use them together:
Agent → SatGate (economic governance) → Routing Gateway → LLM Providers
Features
- 🛡️ Capability Tokens (Macaroons) — Cryptographic credentials with built-in caveats, delegation, and next-request revocation. Not API keys — tokens that agents can safely sub-delegate.
- 🎯 MCP-Aware — Parses MCP JSON-RPC tool calls. Know that Agent X spent $47 on
search_databaseand $12 onsend_email— not just "1,000 requests." - 💰 Budget Enforcement — Hard stops per agent, team, or API. When the budget hits zero, requests are *blocked*. Not logged. Not alerted. Blocked.
- ⚡ Paid-Rail Governance — Govern paid API access across L402, x402, API-key billing, and enterprise ledgers without making any one rail the control plane.
- 🔒 Default-Deny — All routes require valid credentials unless explicitly public. Zero Trust by design.
- 🚀 <50ms Overhead — Lightweight Go proxy. Adds governance without adding latency.
- 📦 Self-Hosted — Your infrastructure, your rules. Single binary, Docker, or Kubernetes.
- 🔌 Drop-in — Works with any HTTP backend. REST, GraphQL, MCP servers. No code changes.
Quick Start
60-Second Demo
# Run from a clone. The example config is examples/gateway.yaml in this repo.
macOS Apple Silicon. Other v0.5.2 assets: satgate-darwin-amd64, satgate-linux-amd64,
satgate-linux-arm64, satgate-windows-amd64.exe
git clone https://github.com/SatGate-io/satgate.git cd satgate curl -L https://github.com/SatGate-io/satgate/releases/download/v0.5.2/satgate-darwin-arm64 -o satgate chmod +x satgate
Mock Lightning. Demo mode prints:
SECURITY WARNING: Using ephemeral root key. Set CAPABILITY_ROOT_KEY for production use.
That warning is expected. Tokens do not persist across restarts.
export ADMIN_TOKEN=my-secret-token export LIGHTNING_BACKEND=mock ./satgate --config examples/gateway.yaml
Try the three policies:
# 1. Public — no auth needed
curl http://localhost:8080/health
2. Protected — mint a capability token, then use it
curl -X POST http://localhost:8080/api/capability/mint \ -H "X-Admin-Token: my-secret-token" \ -H "Content-Type: application/json" \ -d '{"scope": "api:read", "duration": "1h"}'
Use the token:
curl -H "Authorization: Bearer YOUR_CAPABILITY_TOKEN" \ http://localhost:8080/api/capability/ping
3. Paid — get a payment challenge (L402 today; x402/other rails as governed context)
curl http://localhost:8080/api/micro
Public → Protected → Paid. Three policies, one gateway; paid rails are governed context, not the product boundary.
Hosted paid demo (Admit; Charge in the dashboard). No local Lightning node:
curl -i -H "X-SatGate-Tenant: satgate-demo" https://api.satgate.io/paid/agent-demo
Unpaid calls return 402 with a Lightning invoice and a macaroon. The price is 10 sats, and one payment buys access until the credential_expires_at time in that response, not just one request. For Lightning, show the invoice to the owner, poll payment status, then retry. Poll rules are in llms.txt.
📖 [Full Quick Start Guide →](docs/getting-started/quickstart.md)
Other Install Methods
# Release binary. ghcr.io/satgate-io/satgate:latest is private; anonymous pulls get 401.
Assets: satgate-darwin-arm64, satgate-darwin-amd64, satgate-linux-amd64,
satgate-linux-arm64, satgate-windows-amd64.exe
curl -L https://github.com/SatGate-io/satgate/releases/download/v0.5.2/satgate-darwin-arm64 -o satgate chmod +x satgate
Build from source
git clone https://github.com/SatGate-io/satgate.git cd satgate && go build -o satgate ./cmd/satgate
Configuration
version: 1
server: listen: ":8080"
admin: capabilityRootKey: "${CAPABILITY_ROOT_KEY}"
lightning: provider: "${LIGHTNING_BACKEND}" config: connectionString: "${NWC_CONNECTION_STRING}"
upstreams: api: url: "http://localhost:3000"
routes:
- name: public-health match: pathPrefix: /health upstream: api policy: kind: public
- name: protected-api match: pathPrefix: /api/ upstream: api policy: kind: capability scope: "api:read"
- name: premium-api match: pathPrefix: /premium/ upstream: api policy: kind: l402 # paid-rail policy; use payment_context to preserve L402/x402/ledger evidence priceSats: 100
Policy Types
| Policy | Description | Use Case |
|---|---|---|
public | No authentication | Health checks, docs, webhooks |
capability | Requires valid Macaroon | Protected API endpoints |
l402 | Requires Lightning payment and records paid-rail context | Monetized endpoints; x402/ledger context can be preserved in Evidence Packs |
How It's Different
| SatGate | Routing Gateways | Traditional API Gateways | |
|---|---|---|---|
| Primary concern | Economic governance | Provider routing | Traffic management |
| Budget enforcement | Hard caps (blocked at limit) | Soft alerts only | ❌ |
| MCP cost attribution | Per-tool granularity | ❌ | ❌ |
| Credential model | Macaroons (delegatable) | API keys | API keys / OAuth |
| Agent delegation | Sub-tokens with reduced budgets | ❌ | ❌ |
| Paid-rail governance | L402, x402, API-key billing, enterprise ledgers | ❌ | ❌ |
| Works alongside | — | ✅ Use together | ✅ Use together |
Architecture
┌──────────────────────────────────────────────────┐
│ SatGate │ │ │ │ Request → Route Match → Policy Check → Proxy │ │ │ │ │ ┌──────────────┼──────────────┐ │ │ │ │ │ │ │ [public] [capability] [paid rail] │ │ pass verify token verify │ │ check budget payment │ │ log MCP tool context │ └──────────────────────────────────────────────────┘
Key Concepts:
- Macaroons: Bearer tokens with embedded caveats (expiry, scope, budget, IP). Not API keys — they support *delegation* without server roundtrips.
- Delegation: Agent A gives Agent B a sub-token with reduced permissions and a $50 budget cap. B can't escalate.
- MCP Parsing: SatGate reads MCP JSON-RPC payloads to attribute costs to specific tool calls, not just HTTP endpoints.
- Paid-rail context: SatGate treats L402, x402, API-key billing, and enterprise ledgers as rails to govern around. Evidence Packs preserve which rail was involved without making the rail the product.
SDKs
| Language | Package | Docs |
|---|---|---|
| Python | pip install satgate | README |
| JavaScript | npm install @satgate/sdk | README |
MCP Proxy (NEW)
SatGate now includes a native MCP proxy that governs tool calls for any MCP-compatible agent:
# Run MCP proxy with 1000-credit budget
satgate-mcp --config satgate-mcp.yaml
- Budget enforcement:
ตัดมาแค่ช่วงต้น อ่านต่อใน repo