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

DealMachine

โดย DealMachineรุ่น 0.3.1i★ –iรันบนคลาวด์
ชื่อใน registryio.github.DealMachine/dealmachine

ติดตั้ง

ภาพรวม

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

Find US property owners, including LLCs, plus owner phones and emails. Needs a DealMachine account.

สามเสาของ PopNx MCP

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

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

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

  • การเชื่อมต่อ: รันบนคลาวด์
  • ช่องทาง (transport): Streamable HTTP
  • หมวด: อื่น ๆ

ติดตั้ง

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

ก่อนติดตั้ง

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

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

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

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

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

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

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

claude mcp add --transport http dealmachine https://mcp.dealmachine.com

เปิดใน Cursor

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

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

{
  "mcpServers": {
    "dealmachine": {
      "url": "https://mcp.dealmachine.com"
    }
  }
}

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

เปิดใน VS Code

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

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

{
  "servers": {
    "dealmachine": {
      "type": "http",
      "url": "https://mcp.dealmachine.com"
    }
  }
}

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

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

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

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

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

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

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

ชื่อและคำอธิบายเครื่องมือตามที่ server ตอบมาเมื่อ 6 พ.ย. 2569 ผู้ทำเป็นคนเขียน ไม่ใช่เรา แสดงเป็นข้อความล้วน

  • dealmachine_signup

    Start a free DealMachine account. Returns the secure browser signup URL. Ask the user to finish signup and connect DealMachine using OAuth. Never ask for passwords, payment details or API keys in chat. Signup does not purchase a plan.

  • dealmachine_account

    Read your active plan and remaining data credits. Free accounts can use this. After Stripe payment, check plan.is_paid and the current balance before retrying approved enrichment. A checkout URL or the user saying they paid is not proof of activation.

  • dealmachine_enrich_address

    Finds who owns a US property from its street address, given as full_address or as street, city, state and zip. Returns the property details; with contact_audience=owners it also returns the owners with their names, phones (with DNC flags) and emails. Contacts are left out unless

  • dealmachine_enrich_latlng

    Finds the property closest to a latitude and longitude, within 300 feet, and who owns it. Returns the property details; with contact_audience=owners it also returns the owners with their names, phones (with DNC flags) and emails. Contacts are left out unless contact_audience is s

  • dealmachine_enrich_apn

    Finds who owns a property from its Assessor's Parcel Number: one apn, or up to 250 in data sharing the same location and options. A location narrows the match, and APN formatting is normalized automatically. Returns the property details; with contact_audience=owners it also retur

  • dealmachine_enrich_email

    Looks up a person by email address (email, required). Returns their name, contact information including phones and emails, and demographics; include_properties=true adds the properties associated with them. Needs a connected DealMachine account with paid access. Each matched pers

  • dealmachine_enrich_phone

    Looks up a person by phone number (phone, required). Returns their name, contact information including phones and emails, and demographics; include_properties=true adds the properties associated with them. Needs a connected DealMachine account with paid access. Each matched perso

  • dealmachine_enrich_name

    Finds people by name: one last_name, optionally with first_name and middle_initial, or up to 250 names in data sharing location, pagination and options. A location narrows the match. Returns paginated people with contact information including phones and emails; include_properties

  • dealmachine_filters

    Returns DealMachine search filters with filter IDs, source types, operators, and valid options. A `search` value performs a fuzzy concept match across labels, aliases, and option values; without it, the response includes all pages. This read-only request is free of data credit ch

  • dealmachine_fields

    Returns available DealMachine data fields with field ID, source type, data type, and description. A `search` value performs a fuzzy match across field metadata; without it, the response includes all pages. This read-only request is free of data credit charges, but an uncached rea

  • dealmachine_usage

    Returns live credit usage for the current billing cycle, including the total cap, spendable balance, monthly and additional pools, and usage by entity type. This read-only request is free.

  • dealmachine_whoami

    Returns whether the current credential is valid, the active organization name, and the authentication type. This read-only request is free.

  • dealmachine_property_search

    Finds US properties matching locations (required) and filters from the filter list, such as is_corporate_owned for properties owned by a corporation, LLC or business. Returns the properties with their owner contacts (names, phones and emails) by default, or with anchor=people one

  • dealmachine_property_count

    Counts properties matching locations (required) and filters, such as is_corporate_owned for corporation, LLC or business owners, or with anchor=people their matching contacts. Use the same anchor, contact_audience and require_phone as the search. Needs a connected DealMachine acc

  • dealmachine_property_export

    Creates a downloadable CSV of properties or property-owner contacts matching locations and filters. Defaults to owner contact rows (`contact_audience=owners`, `anchor=person`) with names, phones, emails, and property addresses. `contact_audience=none` or `anchor=property` produce

  • dealmachine_property_get

    Returns one property by DealMachine property ID (id, required), with its owners and their names, phones and emails by default. `contact_audience=none` returns property-only data. Needs a connected DealMachine account with paid access. Enriched data costs one property credit unles

  • dealmachine_property_get_many

    Returns up to 25 properties by DealMachine property ID (ids, required), with their owners and their names, phones and emails by default. `contact_audience=none` returns property-only data. Needs a connected DealMachine account with paid access. Owner contacts cost people credits;

  • dealmachine_comps

    Find comparable sales + active listings for up to 25 subject properties. Costs 1 property data credit per subject found. Location/criteria optional (sensible defaults).

  • dealmachine_people_search

    Returns people matching locations (required) and filters, with their names, phones, emails and primary address plus any requested fields. Filters use the people catalog; property filters return filter_source_mismatch. `estimate_cost=true` returns a credit estimate without records

  • dealmachine_people_count

    Count matching people without consuming credits. Filters use the people catalog.

  • dealmachine_people_get

    Returns one person by DealMachine person ID (id, required), with their name, phones, emails, optional extended fields and associated properties. Needs a connected DealMachine account with paid access. The person costs one people credit; chargeable property fields or associated pr

  • dealmachine_people_get_many

    Returns up to 250 people by DealMachine person ID (ids, required), with their names, phones, emails, optional extended fields and associated properties. Needs a connected DealMachine account with paid access. Each found person costs one people credit; chargeable property fields o

  • dealmachine_location_search

    Returns location identifiers for a name query, including FIPS, ZIP, city place, state, and county IDs. This read-only request is free.

  • dealmachine_delete_lists_list_id

    Delete list. Delete a list and all its items. This action cannot be undone. Requires user approval and confirmed=true before changes or credit use. Writes are never retried automatically.

  • dealmachine_delete_lists_list_id_items

    Remove items from list. Remove specific property or person IDs from a list. Requires user approval and confirmed=true before changes or credit use. Writes are never retried automatically.

  • dealmachine_delete_mail_designs_id

    Delete design. Delete a design. Designs used in active campaigns cannot be deleted. Requires user approval and confirmed=true before changes or credit use. Writes are never retried automatically.

  • dealmachine_delete_mail_return_addresses_id

    Delete return address. Delete a return address. The default return address cannot be deleted — set another as default first. Requires user approval and confirmed=true before changes or credit use. Writes are never retried automatically.

  • dealmachine_delete_prospects_id

    Remove prospect. Archive the prospect and end its mail. Its notes, files, and activity are kept; it can be added again later. Pass `?cascade=false` to keep its list memberships and open opportunities. Mail always ends. Requires user approval and confirmed=true before changes or c

  • dealmachine_delete_prospects_id_files_file_id

    Delete prospect file. Requires user approval and confirmed=true before changes or credit use. Writes are never retried automatically.

  • dealmachine_delete_prospects_id_notes_note_id

    Delete prospect note. Requires user approval and confirmed=true before changes or credit use. Writes are never retried automatically.

  • dealmachine_delete_prospects_id_photos_photo_id

    Delete prospect photo. Requires user approval and confirmed=true before changes or credit use. Writes are never retried automatically.

  • dealmachine_delete_prospects_id_tags_tag_id

    Remove tag from prospect. Requires user approval and confirmed=true before changes or credit use. Writes are never retried automatically.

  • dealmachine_delete_tags_id

    Delete tag. Delete a workspace tag. Returns 409 while prospects still carry it unless `force=true`, which removes it from them first. Requires user approval and confirmed=true before changes or credit use. Writes are never retried automatically.

  • dealmachine_delete_tasks_id

    Delete task. Delete a task. Requires user approval and confirmed=true before changes or credit use. Writes are never retried automatically.

  • dealmachine_delete_webhooks_id

    Delete webhook. Removes the webhook and its delivery log. Nothing more is sent to the URL. Requires user approval and confirmed=true before changes or credit use. Writes are never retried automatically.

  • dealmachine_get_activity_activity_id

    Get activity. Retrieve the full details of a specific activity record, including the complete original request parameters and paginated entity IDs. Retrieves data without changing records or spending credits.

  • dealmachine_get_addresses_autocomplete

    Autocomplete property addresses. Return fast, bounded street-address suggestions from DealMachine property data. Every suggestion includes a DealMachine property ID and may include a normalized city or county location. Retrieves data without changing records or spending credits.

  • dealmachine_get_driving_drives

    List drives. List recorded drives for the workspace. Each drive reports how many prospects were added. Retrieves data without changing records or spending credits.

  • dealmachine_get_driving_drives_id

    Get drive. Get a recorded drive with its route, events, visits, and links to prospects added during it. Retrieves data without changing records or spending credits.

  • dealmachine_get_exports

    List exports. List past exports for your organization with optional pagination and status filtering. Retrieves data without changing records or spending credits.

  • dealmachine_get_exports_exportId

    Get export by ID. Retrieve a single export by its ID. Only exports belonging to your organization are accessible. Retrieves data without changing records or spending credits.

  • dealmachine_get_lists

    List all lists. List all saved lists for your organization with pagination, search, filtering, and sorting. Retrieves data without changing records or spending credits.

  • dealmachine_get_lists_list_id

    Get list by ID. Retrieve a list by its ID including build status, progress, and total count. Retrieves data without changing records or spending credits.

  • dealmachine_get_lists_list_id_items

    Get list items. Retrieve paginated items in a list. Retrieves data without changing records or spending credits.

  • dealmachine_get_locations_locationId

    Get location. Retrieve a specific location by its ID. Retrieves data without changing records or spending credits.

  • dealmachine_get_mail_analytics_summary

    Get mail analytics summary. Get account-wide mail analytics: totals across all campaigns (sent, delivered, failed, opens, unique openers, average open rate) plus a paginated list of campaigns with per-campaign engagement. Retrieves data without changing records or spending credit

  • dealmachine_get_mail_analytics_timeseries

    Get mail analytics time series. Get an account-wide time series for a single metric — sent, delivered, scans (QR/link views), or open_rate — bucketed by day or week. Missing buckets are filled with zeroes so the series is continuous. For "scans", each point also includes secondar

  • dealmachine_get_mail_campaigns

    List campaigns. List mail campaigns for your organization with optional filtering. Each campaign has one of six statuses: draft, ready, active, paused, ended or archived. Use accepting_properties=true to list the campaigns properties can be added to now. Archived campaigns are ex

  • dealmachine_get_mail_campaigns_id

    Get campaign. Get a single campaign by ID with steps. Retrieves data without changing records or spending credits.

  • dealmachine_get_mail_campaigns_id_analytics

    Campaign analytics. Get delivery and engagement analytics for a campaign. Retrieves data without changing records or spending credits.

  • dealmachine_get_mail_campaigns_id_cost_estimate

    Estimate campaign cost. Get a cost estimate for launching a campaign, including wallet balance check. Retrieves data without changing records or spending credits.

  • dealmachine_get_mail_campaigns_id_properties_estimate

    Estimate adding properties. What adding a number of properties to the campaign would cost: the charge due today, the amount charged later as later pieces go out, and whether your wallet or auto-reload covers it. Nothing is added or charged. The count is an upper bound; properties

  • dealmachine_get_mail_campaigns_id_recipients

    List campaign recipients. List recipients enrolled in a campaign with their delivery status. Retrieves data without changing records or spending credits.

  • dealmachine_get_mail_designs

    List designs. List mail designs for your organization. Retrieves data without changing records or spending credits.

  • dealmachine_get_mail_designs_id

    Get design. Get a single design by ID, including HTML content. Retrieves data without changing records or spending credits.

  • dealmachine_get_mail_return_addresses

    List return addresses. List all return addresses for your organization. Default address is listed first. Retrieves data without changing records or spending credits.

  • dealmachine_get_mail_return_addresses_id

    Get return address. Get a single return address by ID. Retrieves data without changing records or spending credits.

  • dealmachine_get_mail_settings

    Get mail settings. Get the organization-level mail settings that act as defaults for new campaigns — default postcard size, sender name, contact frequency limit, QR code URL, and signature image. Retrieves data without changing records or spending credits.

  • dealmachine_get_mail_wallet_balance

    Get wallet balance. Get the current wallet balance, including pending charges and auto-reload settings. Retrieves data without changing records or spending credits.

  • dealmachine_get_mail_wallet_pricing

    Get mail pricing. Get postcard pricing for your plan. Prices are in cents per postcard. Retrieves data without changing records or spending credits.

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

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

  • ✓ ผ่าน

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

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

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

    ยังมีคนดูแล

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

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

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

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

  • ✓ ผ่าน

    endpoint ตอบ

    ตอบกลับใน 990 ms (HTTP 200)

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ไม่ต้องล็อกอิน

  • ✓ ผ่าน

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

    อ่านคำอธิบายเครื่องมือ 60 ตัวแล้ว ไม่พบคำสั่งแอบแฝงถึง AI

เทียบกับตัวอื่นในหมวด อื่น ๆi

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

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

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

DealMachine ปลอดภัยไหม?

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

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

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

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

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

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

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

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

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

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

ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, 오늘냥이 (Oneul Nyangi)

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

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

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

Spec Driven Development

โดย formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

รันบนเครื่อง★ 440MITอัปเดต 14 เดือนที่ผ่านมา
ติดตั้ง

Remote Desktop Commander

โดย desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

รันบนคลาวด์★ 211อัปเดต เมื่อวาน
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

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

DealMachine CLI

Maintainers: agent instructions, development, current Command reference, and npm releases.

DealMachine CLI (dm) -- property intelligence from the command line.

A standalone Commander.js CLI that talks to the DealMachine REST API. Provides Commands for authentication, property and people research, enrichment, lists, prospects, tags, webhooks, mail and developer utilities. Compiles to ESM JavaScript via tsc.

This package has zero @dealmachine/* dependencies -- it is a self-contained binary that communicates exclusively through the public API.


AI agent integrations

This repository is also the public distribution package for the DealMachine MCP server and DealMachine skill.

  • Hosted MCP server: https://mcp.dealmachine.com
  • API documentation: https://api.docs.dealmachine.com
  • Account and API keys: https://dealmachine.com/settings/developer
  • Privacy policy: https://dealmachine.com/privacy-policy
  • Terms of service: https://dealmachine.com/terms-of-service
  • Support: support@dealmachine.com

The MCP server supports OAuth 2.1 for ChatGPT, Claude, Cursor, Codex, and other compatible clients. It can also use a DealMachine API key in developer clients that support bearer-token configuration.

The plugin package includes:

  • A hosted MCP connection for property, people, enrichment, comparable-sales, and account tools
  • A credit-aware skill that discovers filters and fields, counts first, and confirms large paid operations
  • A portable Agent Plugins package for compatible clients
  • Manifests for OpenAI, Claude, Cursor, GitHub Copilot, and Gemini
  • Official MCP Registry metadata in server.json

The portable package follows Agent Plugins 1.0.0:

dealmachine-cli/

├── plugin.json ├── mcp.json └── skills/ └── dealmachine/ ├── SKILL.md ├── REFERENCE.md └── SETUP.md

Compatible clients discover the DealMachine skill from skills/dealmachine/ and connect to the hosted Streamable HTTP MCP server declared in mcp.json. Client-specific manifests remain in the repository for compatibility, marketplace metadata, and richer presentation.

Example requests:

  • "Find high-equity absentee-owned properties in Austin and estimate the credit cost first."
  • "Look up the owner of this property and find available contact data."
  • "Find comparable sales for this property."
  • "Research people who match these criteria for a targeted prospecting list."

Direct skill installation:

npx skills add DealMachine/dealmachine-cli

Table of Contents

  • AI agent integrations
  • Installation
  • Authentication
  • Configuration
  • Commands
  • Agents -- agents, agents guide, agents playbook, agents install, agents permissions
  • Auth -- login, logout, whoami
  • Config -- config get, config set, config path
  • Account -- account
  • Usage -- usage
  • Properties -- search, count, get, ids, export
  • People -- search, count, get, ids, export
  • Enrich -- address, latlng, apn, email, phone, name
  • Comps -- comparable property analysis
  • Lists -- search, create, get, update, delete, build, import, items, add, remove, export
  • Filters -- list available search filters
  • Fields -- list available data fields
  • Activity -- search, get
  • Addresses -- autocomplete, validate
  • Dev -- license add, license list, license remove
  • Global Options
  • Input Methods
  • Project Structure
  • Building
  • Adding New Commands
  • Dependencies

Installation

From npm (global)
npm install -g dealmachine

dm login

The canonical implementation package is @dealmachine/cli. The dealmachine package is the short install alias and provides the same dm command.

From source
cd dealmachine-cli

npm run build node dist/index.js whoami

Link for local development
cd dealmachine-cli

npm link dm --version

The binary entry is dist/index.js, declared in package.json under bin.dm. Requires Node.js >= 18.


Authentication

The CLI supports two authentication methods.

Device Auth Flow (RFC 8628)

The default dm login command uses the OAuth 2.0 Device Authorization Grant (RFC 8628). This is the recommended flow for interactive use:

dm login
  1. The CLI requests a device code from POST /v1/auth/device/code with client ID dealmachine-next-cli and your machine's hostname.
  2. A verification URL and user code are displayed. The browser opens automatically (unless --no-browser).
  3. You authorize the device in the browser by entering the user code.
  4. The CLI polls POST /v1/auth/device/token at the server-specified interval.
  5. On success, the API key, key ID, and organization details are stored to ~/.dealmachine/config.json.

The polling handles all RFC 8628 responses: authorization_pending, slow_down (backs off by 5s), access_denied, and expired_token.

# Skip auto-opening the browser

dm login --no-browser

Target a specific environment

dm login --env local dm login --env staging

Direct API Key Login

For CI pipelines, scripts, or local development, pass an API key directly:

dm login --key dm_sk_live_abc123...

The key is verified against GET /v1/account before being stored. If verification fails, the CLI exits with a non-zero code.

If you do not have an API key yet, use dm signup --login or dm login. Free accounts can count matches and estimate costs before paying. Public plan checkout only accepts self-serve Basic and Pro prices from the shared plan catalog and is capped at 60,000 monthly data credits.

Switching Environments

If you are already logged in, you can switch the target API environment without logging out:

dm login --env local       # Switch to http://localhost:3001/v1

dm login --env staging # Switch to https://api-staging.v2.dealmachine.com/v1 dm login --env production # Switch to https://api.v2.dealmachine.com/v1

Logout
dm logout

Removes the config file at ~/.dealmachine/config.json.


Configuration

Credentials are stored at ~/.dealmachine/config.json with file permissions 0600 (owner read/write only). The config directory ~/.dealmachine/ is created with mode 0700.

Config File Schema
{

"apiKey": "dm_sk_live_...", "keyId": "key_abc123", "organizationId": 42, "organizationName": "Acme Corp", "organizationSlug": "acme-corp", "apiEnvironment": "production" }

Environment Variables

The CLI checks these environment variables for API URL resolution (in priority order):

VariablePurposeExample
DM_API_URL / DEALMACHINE_API_URLDirect URL overridehttp://localhost:3001/v1
DM_ENV / DEALMACHINE_ENVIRONMENTEnvironment namelocal, staging, or production

If none are set, the CLI falls back to the apiEnvironment field in the config file, then defaults to production.

API Environments
EnvironmentURL
localhttp://localhost:3001/v1
staginghttps://api-staging.v2.dealmachine.com/v1
productionhttps://api.v2.dealmachine.com/v1

Commands

Agents Commands
dm agents

Print concise guidance for agents using the CLI. This is the recommended first command when an agent has access to dm but has not loaded the DealMachine Playbook yet.

dm agents

dm agents --json

The guide tells agents to use --json and --quiet, verify auth, fetch live filters and fields before searches, count before credit-consuming work, and confirm expected credit usage before fetching records or exporting.

dm agents guide

Print the same concise agent guidance explicitly.

dm agents guide

dm agents guide --json

dm agents playbook

Print the bundled DealMachine Playbook Markdown. Agents should load this before translating natural language property, people, contact, enrichment, list, export, comps, or credit-usage requests into CLI commands.

dm agents playbook

dm agents playbook --json dm agents skill # alias

The public CLI source keeps its bundled Playbook at playbook/PLAYBOOK.md. The build writes the selected source to dist/agents/dealmachine-playbook.md, so the command works from a published CLI package as well as a local source checkout.

dm agents install claude-code

Install the Playbook as a native Claude Code skill. Personal scope is the default. Project scope installs under the current repository.

dm agents install claude-code

dm agents install claude-code --project

dm agents permissions

Print the narrow Claude Code allowlist for free discovery and count commands. Paid and mutating commands are not pre-approved.

dm agents permissions

dm agents permissions --json


Auth Commands
dm signup

Create a public API account and receive an API key. With --login, the credential is saved locally and omitted from output (including JSON); use this form from an agent:

dm signup developer@example.com --first-name Ada --last-name Lovelace --phone-number +15551234567

dm signup developer@example.com --login

dm plans

List live self-serve plans, included credits, features and free API access. Connected customers receive their workspace prices:

dm plans

dm plans --json

dm checkout

Preview the recurring terms using a current price ID from dm plans. After the customer approves the exact price, billing interval and quantity, add --yes to create the Stripe checkout link:

dm checkout --price-id price_xxx_monthly --quantity 1 --json

Only after approval:

dm checkout --price-id price_xxx_monthly --quantity 1 --yes --json

Payment is completed on Stripe. Creating checkout does not activate a plan; check dm account --json and dm usage after payment before retrying enrichment. Counts do not award credits. Free operations still require authentication and obey permissions and rate limits.

dm login

Authenticate with your DealMachine account.

dm login                            # Device auth flow (opens browser)

dm login --no-browser # Device auth, manual code entry dm login --key dm_sk_live_abc123 # Direct API key dm login --env local # Target local API

OptionDescription
--no-browserDo not automatically open the browser
--key Login directly with an API key (skips browser)
--env API environment: local, staging, or production
dm logout

Remove stored credentials.

dm logout
dm whoami

Show current authentication status.

dm whoami               # Show stored credentials

dm whoami --verify # Verify credentials against the API

|

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx