Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Open-source MCP server connecting Claude to Filevine practice management. Built by Oktopeak.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
FILEVINE_CLIENT_ID, FILEVINE_CLIENT_SECRET, FILEVINE_PAT, FILEVINE_REGION, ENCRYPTION_KEYค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"filevine": {
"command": "npx",
"args": [
"-y",
"@oktopeak/filevine-mcp"
],
"env": {
"FILEVINE_CLIENT_ID": "ใส่ค่าของคุณ",
"FILEVINE_CLIENT_SECRET": "ใส่ค่าของคุณ",
"FILEVINE_PAT": "ใส่ค่าของคุณ",
"FILEVINE_REGION": "ใส่ค่าของคุณ",
"ENCRYPTION_KEY": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add filevine --env FILEVINE_CLIENT_ID='ใส่ค่าของคุณ' --env FILEVINE_CLIENT_SECRET='ใส่ค่าของคุณ' --env FILEVINE_PAT='ใส่ค่าของคุณ' --env FILEVINE_REGION='ใส่ค่าของคุณ' --env ENCRYPTION_KEY='ใส่ค่าของคุณ' -- npx -y @oktopeak/filevine-mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"filevine": {
"command": "npx",
"args": [
"-y",
"@oktopeak/filevine-mcp"
],
"env": {
"FILEVINE_CLIENT_ID": "ใส่ค่าของคุณ",
"FILEVINE_CLIENT_SECRET": "ใส่ค่าของคุณ",
"FILEVINE_PAT": "ใส่ค่าของคุณ",
"FILEVINE_REGION": "ใส่ค่าของคุณ",
"ENCRYPTION_KEY": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"filevine": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@oktopeak/filevine-mcp"
],
"env": {
"FILEVINE_CLIENT_ID": "ใส่ค่าของคุณ",
"FILEVINE_CLIENT_SECRET": "ใส่ค่าของคุณ",
"FILEVINE_PAT": "ใส่ค่าของคุณ",
"FILEVINE_REGION": "ใส่ค่าของคุณ",
"ENCRYPTION_KEY": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
FILEVINE_REGION envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 8 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub oktopeak ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: FILEVINE_CLIENT_ID, FILEVINE_CLIENT_SECRET, FILEVINE_PAT, ENCRYPTION_KEY
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.0.1) เข้า registry 6 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Tethered Trust
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Fit, compatibility and recall checks for AI agents before they buy: verdicts, evidence, receipts.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
### Built by Oktopeak — AI transformation & automation for law firms
Digital transformation for legal and healthcare businesses. We build AI integrations, workflow automation, and custom software your firm owns outright — including this connector. → Book a 30-min call
An open-source MCP (Model Context Protocol) server connecting Claude to Filevine practice management platform. Access cases, contacts, documents, notes, tasks, and custom PI data from Claude with automatic rate limiting and audit logging.
Supported Endpoints: 15 tools covering the Filevine v2 REST API.
[!TIP]
Not a developer? You don't need to be.
The README below assumes someone comfortable editing a JSON config file. If that's not you or your team, we deploy this for law firms: scoped credentials, audit log wired in, one custom workflow, training.
→ Whole firm? The Firm Plan: $300 a month. Set up in your own cloud, every attorney signs in with their own login, one audit log, one automation built for you each month, no setup fee, cancel any time. → oktopeak.com/firm-plan/, or book a 30-min call
Jump to: Setup · Available tools · Compliance & security · Need it deployed for you? · Other connectors
/v2/users/me on first runCopy .env.example to .env:
# Filevine OAuth client credentials
FILEVINE_CLIENT_ID= FILEVINE_CLIENT_SECRET= FILEVINE_PAT=
FILEVINE_REGION=us
ENCRYPTION_KEY=<64-character-hex-string>
npm install
npm run build
# Start the server
npm start
npm run inspect
The server listens on stdio and outputs connection status to stderr.
Before using any Filevine tools, call the authenticate tool:
Tool: authenticate
→ Exchanges PAT for access token → Discovers org_id and user_id → Stores encrypted tokens in ~/.oktopeak-filevine/tokens.enc
Tokens auto-refresh before expiry (3600s TTL). Call logout to clear stored tokens.
| Tool | Purpose |
|---|---|
authenticate | Exchange PAT for access token and cache org/user IDs |
auth-status | Check authentication status and token expiry |
logout | Clear stored tokens |
| Tool | Purpose |
|---|---|
list-cases | List cases (active, closed, pending); search by name/number |
get-case | Get full case details by ID |
| Tool | Purpose |
|---|---|
search-contacts | Search contacts by name, email, or phone across all cases |
get-contact | Get contact details by ID |
list-case-contacts | List all contacts on a specific case |
| Tool | Purpose |
|---|---|
list-notes | List case notes; supports general, phone_call, and internal types |
create-note | Create a note (e.g., AI summary, findings, follow-ups) |
| Tool | Purpose |
|---|---|
list-documents | List case documents with metadata (name, type, size, URL, dates) |
Note: Returns document metadata only — no binary content. Use returned URLs to fetch document content if needed.
| Tool | Purpose |
|---|---|
list-tasks | List case tasks by status (open, completed, overdue) |
create-task | Create a new task with title, description, assignee, due date |
Known Issue: The targetDate field may be ignored by the Filevine API as of Aug 2025. Workaround: set tasks via UI.
| Tool | Purpose |
|---|---|
discover-schema | Map your firm's custom sections (medical records, liens, settlements, etc.) |
get-collection | Fetch custom collection data using discovered selectors |
Why collections matter: Unlike standardized case fields, each firm builds custom "Collection sections" for PI workflows. The discover-schema tool finds your firm's structure.
Example workflow:
discover-schema → see available sections (e.g., "MedicalRecords", "Liens")get-collection to fetch PI-specific dataFilevine Rate Limits:
| Endpoint | Limit |
|---|---|
| Standard | 320 req/endpoint/min |
| Billing | 250 req/endpoint/min |
| Reports/Vitals | 5 req/endpoint/min |
| VineSign | 10 req/user/month |
Implementation:
POST https://identity.filevine.com/connect/token
client_id, client_secret, grant_type=personal_access_token, token=PAT → access_token (3600s), refresh_token, scopes
GET /v2/users/me
Authorization: Bearer {access_token} → {id: user_id, org_id: org_id}
Authorization: Bearer {access_token}
x-fv-orgid: {org_id} x-fv-userid: {user_id}
https://api.filevine.iohttps://api.filevine.caSet via FILEVINE_REGION environment variable.
The biggest difference from other legal APIs: every request needs 3 headers, not just Authorization. Filevine uses x-fv-orgid and x-fv-userid to scope queries to the correct organization and user context.
src/
├── index.ts # Server entry point ├── filevine-client.ts # API client with 3-header middleware ├── auth/ │ ├── authTools.ts # authenticate, auth-status, logout │ ├── oauth.ts # PAT token exchange + org/user discovery │ └── token-store.ts # AES-256-GCM encrypted token storage ├── tools/ │ ├── cases.ts # list-cases, get-case │ ├── contacts.ts # search-contacts, get-contact, list-case-contacts │ ├── notes.ts # list-notes, create-note │ ├── documents.ts # list-documents │ ├── tasks.ts # list-tasks, create-task │ └── collections.ts # discover-schema, get-collection ├── resources/ │ ├── auth-status.ts # Auth status resource (filevine://auth/status) │ └── compliance.ts # Compliance notice ├── audit/ │ └── logger.ts # Audit logging (JSON-lines) └── utils/ └── rate-limiter.ts # Token bucket + 429 backoff
Tokens are encrypted with AES-256-GCM and stored locally:
~/.oktopeak-filevine/tokens.encENCRYPTION_KEY from .env (64-char hex)Every tool call is logged to ~/.oktopeak-filevine/audit.log:
| Error | Cause | Fix |
|---|---|---|
ENCRYPTION_KEY is not set | Missing env var | Generate key: node -e "console.log(require('crypto').randomBytes(32).toString('hex'))" |
PAT exchange failed (401) | Invalid credentials | Verify Client ID, Secret, PAT from Filevine Settings |
Failed to discover user info | Token doesn't have required scopes | Regenerate PAT and Client Credentials in Filevine |
429 Too Many Requests | Rate limit hit | Server auto-backs off; normal behavior under load |
Unknown collection selector | Selector not found | Run discover-schema to find available selectors |
npm run build → build/ directory@modelcontextprotocol/sdk — MCP protocoldotenv — Environment loadingzod — Schema validation for tool parameterscrypto, fs, http — Node builtinsnpm run inspect
Opens MCP inspector at http://localhost:3000 — test tools, check parameters, verify responses.
npm run build
npm start
npm run inspect
ENCRYPTION_KEYcreate-note and create-task modify dataSee src/resources/compliance.ts for full compliance notice.
MIT — Oktopeak
The open-source connector reads your Filevine data and lets Claude work with it. That handles about 20% of what most firms eventually want.
We help two ways, depending on your scope:
→ Whole firm? The Firm Plan: $300 a month. Set up in your own cloud, every attorney signs in with their own login, one audit log, one automation built for you each month, no setup fee, cancel any time. → oktopeak.com/firm-plan/
→ Filevine Integration: For custom reporting, project schema work, document and intake automation, and the production software layer around Filevine. → [oktopeak.com/services/filevine-integration/](https
ตัดมาแค่ช่วงต้น อ่านต่อใน repo