Skip to content

DM Faster for agents

Agent 1.0

Find prospects with the agent you already use.

Connect your agent to DM Faster to research companies, extract Instagram prospects, enrich saved leads and prepare outreach. Hosted MCP uses browser approval. After you grant campaign control once, an explicit instruction such as “launch it” can start a prepared campaign.

Available now. Hosted MCP and the provenance-backed 1.10.0 packages provide the same domain controls. Local installation requires Node.js 24 and macOS Keychain or Linux Secret Service.

Quickstart

Give your agent one bounded setup brief

Paste this into the agent you already use. It can install the public, version-pinned integration and guide the campaign workflow without learning DM Faster's screens or internal tool names. Account access still requires your approval in a focused browser page.

One-prompt setup

Paste one prompt. Approve the connection, then direct your agent in plain language.

Preview full prompt
Set up DM Faster Agent 1.0 for this agent.

1. Prefer DM Faster's hosted MCP endpoint at https://app.dmfaster.com/mcp when this host supports remote MCP with browser OAuth. Guide me through the host's normal connection flow and let me approve the DM Faster workspace and exact scopes myself.
2. For a local connection, confirm Node.js 24 and a supported OS credential store. In Codex, add the dmfaster/agents marketplace and install dmfaster@dmfaster-agents. In Claude Code, install the reviewed bundle from the same repository. Otherwise configure @dmfaster/mcp-server@1.10.0 and use @dmfaster/cli@1.10.0 browser login, or auth upgrade for new scopes, and let me compare and approve the confirmation code myself.
3. Verify the connection and run one workspace briefing. Existing grants never expand automatically.
4. For company research, discover filters, search companies, inspect profiles and website evidence, and save a private shortlist only when requested. Use company suggestions for selection; they are not an audience total. Keep exact counts for audience decisions and preserve real contact routes.
5. For Basic-plan Instagram prospecting, quote my requested account or posts and count, then start on my instruction with one stable idempotency key. Return the job ID promptly. Inspect savedCount, listUrl and settled creditCost, respect pollAfterMs, and reuse the same key and input on retries. Subscribe to completion only if I request it and this host supports MCP Events.
6. Enrichment is separately charged. Preview it and start only on my instruction within my credit budget. If credits run out, explain the exact balance and required credits. In OpenAI directory hosts, point to informational entitlement options without promoting upgrades or initiating a purchase. Never buy credits automatically or resume a blocked job just because the balance changed.
7. For a campaign goal, use grounded industry lookup, complete-plan validation, exact audience preview and an idempotent private disabled draft. Keep the complete latest campaign state on every planning call.
8. When I explicitly say to launch or pause, run the matching preflight. With my campaigns:control grant and a ready result, execute using the returned authorization. Show a browser approval or setup handoff only when DM Faster requires it. Inspect durable action receipts before claiming a message was delivered.
9. Send replies or book meetings only on my explicit instruction through the corresponding granted controls. Never treat a selected mention, extraction, enrichment or saved list as permission to contact anyone.

Never ask me to paste a DM Faster token, browser cookie or extension credential into chat. Do not silently install a browser extension, guess an audience total or bypass DM Faster's approval boundary.
  1. Connects hosted MCP or installs the pinned local integration
  2. Opens focused browser authentication
  3. Researches companies and Instagram prospects
  4. Launches only when you explicitly instruct it

Hosted MCP

Connect through your browser

Add DM Faster in a host that supports remote MCP with OAuth, using the endpoint below. Sign in to DM Faster and approve the workspace and exact permissions. Hosted connections require no local Node.js install or copied token.

Hosted MCP endpoint
https://app.dmfaster.com/mcp

Existing permissions stay in place until you approve a new grant. Company Database access follows your account entitlement; Basic-plan Instagram extraction uses your available lead credits. Revoke a connection from Agent access settings when needed.

Compatible hosts can use the Companies and campaign views, company and saved-list mentions, and subscribed completion events. Host rendering and event delivery depend on the client. OpenAI directory approval remains a separate step.

Install

Use the plugin or the version-pinned local server

The Codex plugin bundles the DM Faster skill and local MCP server configuration. Add the public repository marketplace, install the plugin, then start a new Codex session so its skills and tools load.

Review the official public source on GitHub before installing.

Codex CLI
codex plugin marketplace add dmfaster/agents
codex plugin add dmfaster@dmfaster-agents

Claude Code can install the same reviewed bundle from the same public repository. A Claude subscription is not required to use DM Faster through Codex or a generic MCP host.

Claude Code
claude plugin marketplace add dmfaster/agents
claude plugin install dmfaster@dmfaster-agents

Prefer the plugin when your host supports it. For Hermes, another MCP host, or a shell-only workflow, use the pinned MCP or CLI commands below instead of cloning DM Faster's private product repository.

Agent Plugins

Let supported agents discover DM Faster as one package

The public DM Faster plugin includes the portable Agent Plugins files that describe the skill and MCP connection together. Compatible clients discover the root plugin.json, the skills/ directory, and the schema-backed mcp.json; Codex, Claude Code, and Cursor manifests remain alongside them for host-specific installation.

Portable package layout
dmfaster/
├── plugin.json
├── mcp.json
└── skills/
    └── dmfaster/
        └── SKILL.md

Agent Plugins standardizes package discovery, not a universal installer or authentication flow. Install through your host's supported repository or plugin flow, then authenticate with the pinned CLI. Never put a DM Faster token, browser cookie, or extension credential in mcp.json.

CLI

Authenticate through your browser

Run the public CLI without a global install. Login prints a short confirmation code and opens an app.dmfaster.com/connect/agent/… page.

Browser login
npx --yes @dmfaster/cli@1.10.0 auth login --json

Compare both codes before approving. Review the requesting client, workspace, expiry, and exact scopes. The default full profile enables the complete Agent 1.0 flow; append --access read, plan, or draft for a smaller ceiling.

Verify and brief
npx --yes @dmfaster/cli@1.10.0 auth status --json
npx --yes @dmfaster/cli@1.10.0 workspace briefing --json

Already connected but need a different access profile? Use auth upgrade with the access profile you need. The old credential stays usable while you approve and verify its replacement. Check priorCredentialRevokedin the result; if it is false, revoke the old session in Agent access settings.

Upgrade an existing connection
npx --yes @dmfaster/cli@1.10.0 auth upgrade --access full --json

Use doctor to check setup and access, and describe to see a command's exact input schema before calling it. Command discovery works before login.

Check setup and discover inputs
npx --yes @dmfaster/cli@1.10.0 doctor --json
npx --yes @dmfaster/cli@1.10.0 describe campaigns list

The CLI and MCP server share the operating-system credential. macOS uses Keychain; supported Linux desktops use Secret Service through secret-tool. Unsupported stores fail closed instead of writing a plaintext token. The focused browser page never receives or displays the issued credential.

Campaign flow

Prepare a campaign, then tell your agent to launch

  1. 01

    Brief

    The agent reads workspace priorities and turns your goal into a complete versioned campaign state.

  2. 02

    Ground

    Industry lookup resolves supported TOL industries and asks you when the target is ambiguous.

  3. 03

    Validate

    DM Faster checks targeting, messages, channels, delivery settings, limits, and required setup.

  4. 04

    Preview

    The agent receives an exact audience total. A sample, estimate, or lower bound never substitutes for it.

  5. 05

    Prepare

    List and campaign preparation create only private, disabled, retry-safe drafts.

  6. 06

    Check readiness

    Preflight checks the exact campaign version, connection permissions, and browser readiness. It returns authorization or the required approval or setup handoff.

  7. 07

    Act

    After your explicit launch or pause instruction, the agent uses DM Faster's short-lived, single-use authorization. A delegated connection needs no extra approval click.

If browser sending is not ready, launch preflight keeps the campaign disabled and returns one setup link plus the exact resume call. The user installs or reconnects the extension through the browser store; websites and agents cannot install it silently.

Before launch, your agent can inspect the exact saved messages and configure a LinkedIn invitation followed by a message after acceptance. If the person is already connected, the message can be sent directly. A recorded human reply on another channel for the same company stops an unsent LinkedIn message.

Inspect campaign copy
npx --yes @dmfaster/cli@1.10.0 campaign copy inspect CAMPAIGN_ID --json

Company research

Find companies using Shopify and running Meta ads

Ask your agent to find companies using Shopify with active Meta ads. It first discovers the available Companies app filters, then searches with technology and ad-activity criteria together. It can inspect full company profiles, financials, technology evidence, social profiles, and decision-makers. Search supports every current Companies app filter; country-specific availability and data freshness still apply.

Company search input
{
  "filters": {
    "technologies": ["shopify"],
    "metaAdsActiveOnly": true
  },
  "pageSize": 50
}

Save this JSON as company-search.json, then run the command below. Your agent can prepare the file for you. Use the returned query signature and revision when paging; a page size is not the total matching audience.

Search companies
npx --yes @dmfaster/cli@1.10.0 companies search --input company-search.json --json

Saved company lists preserve available real email, LinkedIn, phone, Instagram, and Facebook contact routes. Decision-maker names and roles stay with their respective email, LinkedIn, or phone contact. Companies without contacts remain useful research rows; generated company identities are never Instagram targets. Saving a research list creates no campaign and sends nothing. Contact data is a stored snapshot, not proof of deliverability. Older lists are not automatically backfilled with contacts that were previously lost.

Instagram prospects

Ask for followers and get the saved list

Say “Find 1,000 followers of this account.” Your agent can quote the work, start on your instruction and return a job ID promptly. Your available lead credits determine how many profiles you can request.

Follower extraction input
{
  "type": "followers",
  "identifier": "ACCOUNT_HANDLE",
  "count": 1000,
  "idempotencyKey": "my-followers-request-001"
}

Use the same input and key to recover a request. Start a new request only for new work. Inspect the returned job for saved profiles, the private list link and settled cost. One saved profile costs one lead credit. Collected profiles and reserved credits are progress, not final results; unused reservations are returned.

Enrichment has its own preview and separate cost: one successfully enriched missing profile costs one credit. When credits run out, your agent explains the exact available and required balance. OpenAI directory hosts can point to information about entitlement options, without starting a purchase or promoting an upgrade. You manage credits in DM Faster. A top-up alone does not resume a blocked request.

For a requested completion update, a compatible hosted MCP client can subscribe to the exact job. Clients without MCP Events use status reads. Native ChatGPT completion delivery remains unverified. Extraction and enrichment create no campaign and send no messages.

Delivery controls

Change the pace while a campaign runs

Your agent can inspect and update an ongoing Instagram campaign’s daily cap, pacing, and automatic sending window. It reads the current revision, applies your requested changes, and verifies the saved result. Pacing accepts 12–3,600 seconds. Daily caps are validated against the account’s current limit; provider limits still apply. Windows use the returned workspace timezone and can be toggled on or off.

Updating delivery settings does not launch a stopped campaign. A launch receipt or browser acknowledgement is not evidence that a message was delivered: the agent checks operation status and sending health before reporting success.

MCP

Connect the same account to a local MCP host

Configure the signed stdio server before or after CLI login. It starts without a credential and exposes connection_status so you can see missing access. After browser approval, it reads the new OS-stored credential without a server restart. The configuration below is the portable Agent Plugins mcp.json format: its schema and transport type tell compatible hosts how to discover the server. MCP protocol messages stay on stdout; diagnostics go to stderr.

Agent Plugins-compatible mcp.json
{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/mcp.schema.json",
  "mcpServers": {
    "dmfaster": {
      "type": "stdio",
      "command": "npx",
      "args": ["--yes", "@dmfaster/mcp-server@1.10.0"]
    }
  }
}

Restart the host if it cannot reload MCP configuration. Agent 1.0 requires MCP 2026-07-28 and intentionally does not downgrade to the 2025 protocol. Hosts that have not implemented that revision can use the version-pinned CLI with structured JSON instead.

The server is stateless: each planning call carries the complete latest campaign state. Durable campaign data, permissions, idempotency, exact counts, and approvals remain on DM Faster's server.

Capabilities

78 domain tools for prospecting and sales

Hosted MCP, the CLI and the local MCP server expose the same 78 domain tools. MCP adds a connection check, Companies and campaign views, and app-only context mentions for compatible hosts. Prospecting, enrichment, company research, saved lists, replies, meetings, campaign controls and reporting are available. Full live-app parity is still in progress.

01

Analytics summary

Metrics with an explicit reporting scope

analytics_summary

02

Workspace briefing

Current priorities and workspace summary

workspace_briefing

03

Campaigns list

Complete search and pagination with an exact filtered total

campaigns_list

04

Campaign inspection

Performance, copy, and settings for one campaign

campaign_inspect

05

Campaign copy

Exact saved social copy and LinkedIn acceptance message

campaign_copy_inspect

06

Sending inspection

Queues, delivery problems, and worker health

sending_inspect

07

Replies list

Campaign reply-stage summary

replies_list

08

Inbox conversations

Search and page through actual inbox conversations

conversations_list

09

Conversation messages

Read inbound and outbound messages in pages

conversation_inspect

10

Conversation update

Mark a conversation read, closed, snoozed, or assigned

conversation_update

11

Conversation reply

Queue a human-confirmed reply with a delivery receipt

conversation_reply

12

Reply delivery

Inspect queued and confirmed reply delivery

conversation_reply_inspect

13

Follow-up list

List upcoming and completed follow-up chains

campaign_followups_list

14

Cancel follow-ups

Cancel an eligible queued follow-up chain

campaign_followups_cancel

15

Campaign outcomes

Page through confirmed, skipped, and failed outcomes

campaign_outcomes_list

16

Sender readiness

Inspect sender readiness without exposing credentials

senders_inspect

17

Send history

Page through confirmed sends with bounded filters

history_list

18

Pipeline inspection

Contacted, replied, booked, and closed totals

pipeline_inspect

19

Pipeline cards

Search and page through pipeline cards

pipeline_cards_list

20

Pipeline stage

Move a card with a version check

pipeline_stage_update

21

Pipeline notes

Read notes attached to a pipeline card

pipeline_note_list

22

Add pipeline note

Add a durable note to a pipeline card

pipeline_note_add

23

Company timeline

Outreach history for one company

company_timeline

24

Industry lookup

Grounded TOL industry resolution and clarification

industry_lookup

25

Campaign validation

Complete plan and delivery validation

campaign_validate

26

Audience preview

Exact count and bounded company sample

audience_preview

27

Saved lists

Find saved Instagram and company lists

lists_list

28

Instagram list inspection

Exact audience size and username membership

list_inspect

29

Remove Instagram target

Remove a requested username with a version check

list_target_remove

30

Instagram draft preparation

Private disabled draft from an inspected saved list

campaign_draft_prepare

31

Draft update

Revise copy and settings on an unstarted draft

campaign_draft_update

32

Instagram list import

Save a reviewed username collection

list_import

33

Audience list preparation

Private audience from an exact campaign preview

list_prepare

34

Campaign preparation

Private disabled company campaign draft

campaign_prepare

35

Launch preflight

Readiness and server-issued action authorization

campaign_launch_preflight

36

Campaign launch

Explicitly requested launch of the exact campaign version

campaign_launch

37

Pause preflight

Pause eligibility and action authorization

campaign_pause_preflight

38

Campaign pause

Explicitly requested pause with a retry-safe receipt

campaign_pause

39

Company filters

Discover Companies app filters and country-specific options

companies_filters

40

Company suggestions

Find a few company identities without an audience count

companies_suggest

41

Company search

Filter companies by technology, ads, financials, and more

companies_search

42

Website evidence search

Search saved website evidence for company research

companies_evidence_search

43

Start website research

Queue a durable company website-evidence job

companies_evidence_start

44

Advance website research

Process a bounded website-evidence batch

companies_evidence_advance

45

Website research status

Inspect durable research progress

companies_evidence_status

46

Website research results

Read saved evidence with source attribution

companies_evidence_results

47

Cancel website research

Stop pending research and retain saved evidence

companies_evidence_cancel

48

Company profile

Full research profile, evidence, and decision-makers

company_inspect

49

Start fit review

Begin evidence-backed company website review

companies_fit_start

50

Advance fit review

Process a bounded company review batch

companies_fit_advance

51

Fit results

Inspect ranked matches and website evidence

companies_fit_results

52

Fit proposal

Propose exact poor-fit exclusions

companies_fit_proposal

53

Save company list

Private research shortlist preserving real contact routes

companies_list_prepare

54

Company list inspection

Browse saved company identities and contact routes

companies_list_inspect

55

Refine company list

Add, refresh, or exclude up to 50 inspected companies with exact-count guards

companies_list_refine

56

Operation status

Check whether the browser acknowledged a launch or pause

campaign_operation_inspect

57

Delivery settings

Read current cap, pace, sending window, and revision

campaign_delivery_inspect

58

Delivery update

Change cap, pace, or window on an ongoing Instagram campaign

campaign_delivery_update

59

Fit review status

Track durable review progress

companies_fit_status

60

Cancel fit review

Stop a running review without losing saved evidence

companies_fit_cancel

61

Fit review runs

Find a resumable review

companies_fit_runs_list

62

Run fit review

Advance a review with retry-safe coordination

companies_fit_run

63

Fit cohort

Select an exact ranked company cohort

companies_fit_cohort

64

Copy performance

Compare exact sent copy with replies and bookings

copy_performance

65

Calendar status

Inspect booking connection readiness

calendar_status

66

Calendar availability

Check available meeting times

calendar_availability

67

Book meeting

Book an explicitly requested meeting

calendar_meeting_book

68

Calls list

Review recorded meetings

calls_list

69

Call inspection

Read one meeting's outcome and participants

call_inspect

70

Lead credits and jobs

Read the exact credit balance and recent prospecting jobs

leads_status

71

Extraction quote

Estimate requested Instagram work without spending credits

leads_extract_quote

72

Start extraction

Queue explicitly requested prospecting with a retry-safe job ID

leads_extract_start

73

Extraction progress

Read exact saved counts, list and settled credit cost

leads_extract_inspect

74

Refresh extraction

Wake the same job without starting another paid extraction

leads_extract_refresh

75

Continue extraction

Request separately charged continuation when more results exist

leads_extract_continue

76

Enrichment preview

Inspect eligible missing profiles and their separate cost

leads_enrich_preview

77

Start enrichment

Enrich requested profiles within an optional credit budget

leads_enrich_start

78

Enrichment progress

Read saved results and final enrichment cost

leads_enrich_inspect

Safety

You control access and campaign actions

  • The browser shows the requesting client, device, workspace, expiry, and every requested scope.
  • A confirmation-code mismatch means deny. Never approve a login you did not start.
  • Credentials stay out of browser URLs, page content, chat, MCP inputs, logs, and plaintext config.
  • Every credential is bound to one account and one workspace, expires, can be revoked, and is rechecked server-side.
  • Preparing creates only a private disabled draft. Launch and pause require your explicit instruction plus a server-issued authorization. The full connection profile grants campaign control once; older connections may require per-action approval.
  • Replies and meetings require your explicit instruction and their granted controls. The interface cannot expose provider credentials, buy credits automatically or bypass the extension's execution boundary.

Lost a device or stopped using an agent? Open the private connected agents page to revoke its access immediately. That page lists and disconnects existing connections only; it cannot create credentials.

Availability

What is and is not available today

Agent 1.0 is public as signed, provenance-backed npm packages and a repository marketplace for Codex and Claude Code. The public plugin also includes the portable Agent Plugins package for compatible clients. The local CLI and stdio MCP server work on macOS and supported Linux desktops with Node.js 24.

The hosted endpoint is https://app.dmfaster.com/mcp. Local Windows credential-store integration remains unavailable. Each client controls how it installs and lists Agent Plugins; Cursor requires its separate marketplace review. The GitHub catalog and npm release do not publish a universal ChatGPT/Codex directory listing. Native composer rendering and ChatGPT Events completion are not yet verified.

DM Faster Agent 1.0 · Runtime 1.10.0 · Documentation updated October 1, 2026