ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

CDF Finance MCP

โดย VessellTechรุ่น 0.1.8i★ –iรันบนคลาวด์
ชื่อใน registryio.github.VessellTech/cdf.mcp

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Consulte contas, cartões, transações e orçamentos da sua conta financeira Vessell.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนคลาวด์
  • ช่องทาง (transport): Streamable HTTP
  • หมวด: บัญชี การเงิน และภาษี

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ต้องเตรียมก่อน

  • รันบนคลาวด์ไม่ต้องลงโปรแกรมเพิ่ม ต่อผ่านอินเทอร์เน็ตได้เลย

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:

  1. เปิด Settings → Connectors
  2. กด Add custom connector
  3. วางที่อยู่ด้านล่างแล้วกด Add
  4. ถ้าให้ล็อกอิน ให้ล็อกอินกับผู้ทำ
SettingsConnectors1+ Add2https://…3
https://mcp.cdf.finance/mcp

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add --transport http cdf https://mcp.cdf.finance/mcp

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "cdf": {
      "url": "https://mcp.cdf.finance/mcp"
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "cdf": {
      "type": "http",
      "url": "https://mcp.cdf.finance/mcp"
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:

  1. เปิด ChatGPT บนเว็บ → Settings → Connectors (Apps)
  2. กด Create หรือ Add (บางแพ็กเกจต้องเปิด Developer mode ใน Advanced ก่อน)
  3. วางที่อยู่ด้านล่าง ตั้งชื่อ แล้วบันทึก
  4. ถ้าให้ล็อกอิน ให้ล็อกอินกับผู้ทำ
SettingsConnectors1+ Create2https://…3
https://mcp.cdf.finance/mcp

ชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

ยังไม่ได้อ่านรายการเครื่องมือของตัวนี้ เราตรวจ endpoint ทีละชุดวนไป

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub VessellTech ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    endpoint ตอบ

    ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป

  • … ยังไม่ตรวจ

    ล็อกอินแบบ OAuth

    ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint

เทียบกับตัวอื่นในหมวด บัญชี การเงิน และภาษีi

  • ดาวมากกว่า 0% ของอีก 1722 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 41% ของอีก 1722 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 1722 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

CDF Finance MCP ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนคลาวด์ของผู้ทำ ต่อผ่านอินเทอร์เน็ตได้เลย ไม่ต้องลงโปรแกรม แต่ข้อมูลที่ส่งให้จะผ่านเซิร์ฟเวอร์ของผู้ทำ

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.8) เข้า registry 2 เดือนที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Finance Toolkit, SolidInvoice, Korea Tax Calculator

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Finance Toolkit

โดย JerBouma

500+ transparent financial methods calculated from raw statements, not third-party endpoints.

บนเครื่องหรือคลาวด์★ 5,496MITอัปเดต เมื่อวาน
ติดตั้ง

SolidInvoice

โดย SolidInvoice

Create and send invoices and quotes, manage clients, and track payments in SolidInvoice.

รันบนคลาวด์★ 981MITอัปเดต 7 วันที่ผ่านมา
ติดตั้ง

Korea Tax Calculator

โดย UpstageAI

Korean tax calculation and tax-audit judgment MCP: 96 tools with statutory citations.

รันบนเครื่อง★ 97MITอัปเดต วันนี้
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

CDF Finance MCP

Conecte Claude, ChatGPT e qualquer client MCP (OAuth 2.1) à sua conta CDF Finance — consulte e registre sua vida financeira por linguagem natural.

Remoto: https://mcp.cdf.finance/mcp (Streamable HTTP) · Website: https://cdf.finance/mcp · Status: https://status.cdf.finance · Suporte: support@cdf.finance


O que é

MCP server stateless e isolado para o CDF Finance — app de controle financeiro pessoal (contas, cartões, transações, faturas, orçamentos, metas, dívidas, investimentos e insights).

  • Para usuários: pergunte ao Claude/ChatGPT sobre seu dinheiro e registre lançamentos sem abrir o app.
  • Para desenvolvedores/revisores: código auditável, sem dependência do backend-husk — só HTTP sobre a API pública que o app mobile já usa.

Source-available sob BUSL-1.1: pode auditar, usar com o CDF Finance, contribuir. Uso em produção como produto concorrente exige licença comercial. Vira Apache-2.0 em 2030-09-01.

Exemplos
Você dizO que acontece
"Quanto sobrou do meu salário esse mês?"current_month_spending + categories_insights
"Minha próxima fatura vai caber no orçamento?"list_pending_invoices + budget_comparison
"Lança um Uber de R$ 27,50 no Nubank como Transporte"list_accounts + list_categories + create_transaction

English: *"How much is left of my salary?" / "Will my next bill fit the budget?" / "Log an Uber ride of R$27.50 on Nubank as Transportation."*


Arquitetura

Isolamento total do backend-husk — este serviço não importa código do backend.

Claude / ChatGPT (MCP client)

│ OAuth 2.1 — DCR + PKCE (S256) ▼ ┌───────────────────────────────┐ │ cdf-mcp-server (este repo) │ Postgres isolado (Railway) │ • Authorization Server │ ├─ oauth_clients / oauth_codes │ • Resource Server (/mcp) │ ├─ oauth_tokens (hash SHA-256) │ • Catálogo declarativo │ └─ sessions (JWT mobile criptografado │ ~50 tools → REST │ AES-256-GCM) └───────────────┬───────────────┘ │ HTTPS — Bearer ▼ backend-husk (api.vessell.app) API pública — mesmo contrato do app mobile

Fluxo de login:

  1. Client faz Dynamic Client Registration em /register.
  2. Usuário autoriza em /authorize (form server-rendered, sem terceiros) → POST /api/mobile/auth/login com device_id=mcp- , platform=mcp.
  3. access/refresh do backend ficam criptografados em sessions; client MCP recebe apenas token opaco (oauth_tokens).
  4. Cada tool renova o access_token via refresh automaticamente (getValidAccessToken).
  5. Sessão aparece como device em GET /api/mobile/devices — revogável em DELETE /api/mobile/devices/:id.

Por que isolado (README original): sem dependência circular, deploy/escala independentes (Railway vs Coolify no backend) e imune a troca de linguagem do backend — só fala HTTP.

Tools

Catálogo 100% declarativo em src/tools/catalog/ — cada tool é { name, method, path, input(zod) } executada por src/tools/register.ts. Nova rota no backend = nova entrada, sem handler.

DomínioTools (exemplos)
Userget_profile, update_profile
Accounts / Cardslist_accounts, create_account, list_cards, current_invoice
Categories / Cost Centerslist_categories, create_category, list_cost_centers
Transactionslist_transactions, create_transaction, confirm_pending_transaction, upcoming_transactions
Recurring / Invoiceslist_recurring_transactions, list_invoices, pay_invoice
Goals / Budgets / Debtslist_goals, budget_comparison, create_debt, debt_payoff_simulation
Equities / Investmentslist_equities, add_equity_valuation, investments_workspace
Insights / Analyticscashflow_forecast, spending_projection, networth_projection, categories_insights, behavior_insights, can_afford, analytics_history
Tagslist_tags, create_tag

Fora de escopo de propósito (igual ao backend): admin, Stripe/pagamentos, webhooks, S3/anexos, /api/ai/*.

Modo somente leitura: MCP_TOOLS_MODE=readonly expõe só readOnly:true — ideal para diretórios curados.


Quick start

cp .env.example .env   # preencha DATABASE_URL, TOKEN_ENCRYPTION_KEY, SESSION_SECRET

npm install npm run db:migrate npm run dev # http://localhost:8090

Teste com MCP Inspector:

npx @modelcontextprotocol/inspector

Transport: Streamable HTTP → http://localhost:8090/mcp

Variáveis de ambiente
VarObrigatóriaDescrição
PUBLIC_URLsimURL pública deste serviço (entra nos metadados OAuth). Gere o domínio antes do primeiro deploy
PORTnãodefault 8090
BACKEND_API_URLsimhttps://api.vessell.app (ou staging)
DATABASE_URLsimPostgres isolado deste serviço
TOKEN_ENCRYPTION_KEYsim32 bytes base64: node -e "console.log(require('crypto').randomBytes(32).toString('base64'))"
SESSION_SECRETsimstring longa aleatória p/ cookies /authorize
MCP_SERVICE_TOKENnãosegredo serviço-a-serviço (backend-husk → MCP via X-CDF-User-Token). Se ausente, só OAuth
MCP_TOOLS_MODEnãofull (default) ou readonly
OPENAI_APPS_CHALLENGE_TOKENnãoverificação de domínio OpenAI
ALLOWED_ORIGINSnãoCORS do /authorize — default https://claude.ai,https://chatgpt.com

Ver .env.example comentado.

Deploy (Railway)

  1. railway init ou conecte o repo no dashboard.
  2. Adicione addon Postgres (injeta DATABASE_URL).
  3. Configure envs acima — gere domínio em Settings → Networking primeiro.
  4. Deploy: Dockerfile → node dist/index.js (railway.json já configurado).
  5. Migration: railway run npm run db:migrate.
  6. No Claude.ai/ChatGPT aponte o connector para https:// .up.railway.app/mcp — DCR/OAuth é automático.

Segurança

  • PKCE S256 obrigatório em todo authorization_code.
  • Tokens opacos — só SHA-256 persiste (oauth_tokens), bruto é entregue uma vez.
  • JWT mobile criptografado AES-256-GCM em sessions — nunca exposto ao client (src/crypto.ts, src/mcp/http.ts).
  • Device isolado — cada sessão mcp- (src/backend/client.ts:45) revogável sem afetar outros logins.
  • Sanitização — redactLargeInlineData + redactFields (src/tools/register.ts:19) evita vazamento de data: URI e campos sensíveis pro LLM.

Reporte vulnerabilidades em SECURITY.md — não abra issue pública: support@cdf.finance [SECURITY].

Conformidade — Diretório Anthropic (Seção 4.A)

Este conector não transfere dinheiro/cripto/ativos e não executa pagamentos em nome do usuário — apenas lê e registra lançamentos no controle financeiro pessoal, igual ao app. Toda escrita é explícita e solicitada na conversa.

  • Para listagens curadas use MCP_TOOLS_MODE=readonly.
  • Pedido de exceção por escrito (previsto na própria 4.A): docs/4a-exception-request.md.
  • Conta de teste para revisores: joao@teste.com / 123456 (dados de amostra).

Contribuindo

Veja CONTRIBUTING.md — fork, branch feat/..., npm run build e PR com path validado no backend. Ao contribuir você licencia sob BUSL-1.1.

Licença

Source-available [BUSL-1.1](./LICENSE) — uso com o CDF Finance, pessoal, acadêmico e contribuições são livres. Proibido uso em produção como produto concorrente de gestão financeira (hosted/managed). Converte para Apache-2.0 em 2030-09-01.

Dúvidas comerciais: support@cdf.finance.


Construído com Model Context Protocol · Mantido por Vessell CDF Finance

ถาม PopNx