Planfix MCP vs Dreamwork

A side-by-side look at the Planfix MCP and Dreamwork MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

Planfix MCP logoPlanfix MCPWorkplace & Productivity · Local subprocess (stdio)MCP server for Planfix API — tasks, contacts. 3 tools.60GoodAuth: not declaredDreamwork logoDreamworkWorkplace & Productivity · Remote HTTP/SSEJob search, application materials, and application tracking for AI assistants.75GreatAuth: api key required

Verdict: choose Planfix MCP for workplace & productivity work as a local process; choose Dreamwork for workplace & productivity over a hosted endpoint. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

Planfix MCP logoChoose Planfix MCP when

  • You need dedicated capabilities in the Workplace & Productivity domain.
  • You prefer a local stdio subprocess transport.
  • You have the keys it needs: PLANFIX_API_KEY, PLANFIX_ACCOUNT.
  • You want tools like get_tasks, get_task, create_task.
Explore Planfix MCP

Dreamwork logoChoose Dreamwork when

  • You need dedicated capabilities in the Workplace & Productivity domain.
  • You prefer a remote HTTP/SSE transport.
  • Its auth model fits you: API key required.
  • You have the keys it needs: DREAMWORK_API_KEY, DREAMWORK_API_URL, DREAMWORK_UNREAD_NOTICES, DREAMWORK_TELEMETRY, DO_NOT_TRACK.
  • You want tools like list_matches, get_job, save_job.
Explore Dreamwork

Feature & specification comparison

Rows where the two servers differ are marked.

SpecPlanfix MCP logoPlanfix MCPDreamwork logoDreamwork
CategoryWorkplace & ProductivityWorkplace & Productivity
Quality signal60/100 · Good75/100 · Great
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Remote HTTP/SSE
AuthNot declaredAPI key required
PricingNot declaredNot declared
Required env varsPLANFIX_API_KEYPLANFIX_ACCOUNTDREAMWORK_API_KEYDREAMWORK_API_URLDREAMWORK_UNREAD_NOTICESDREAMWORK_TELEMETRYDO_NOT_TRACK
Verified ownerCommunity listingCommunity listing
GitHub stars512
Directory activity 4 views 0 installs 0 upvotes 2 views 0 installs 0 upvotes
Tools2071

Tools & capabilities

Planfix MCP tools 20

  • get_tasksПолучить список задач из Planfix с пагинацией и фильтрами.
  • get_taskПолучить одну задачу по ID.
  • create_taskСоздать новую задачу в Planfix.
  • update_taskОбновить существующую задачу в Planfix (название, описание, статус, исполнитель).
  • get_contactsПолучить список контактов из Planfix с пагинацией и фильтрами.
  • get_contactПолучить одного контакта по ID.
  • get_projectsПолучить список проектов из Planfix.
  • get_projectПолучить один проект по ID.
  • get_commentsПолучить комментарии к задаче.
  • add_commentДобавить комментарий к задаче.
  • create_contactСоздать контакт (или компанию) в Planfix.
  • update_contactОбновить контакт (имя, email, телефон).
  • +8 more on the listing page

Dreamwork tools 71

  • list_matchesReturns the account's ranked live match pool with job id, its Dreamwork page url, title, company, location, remote terms, salary, dates, match percent and saved/applied state. Filters narrow that pool; nextCursor continues a page with identical filters, and null ends the walk. A page holds 10 jobs by default and limit accepts up to 50; the next page is the previous nextCursor, which keeps the page size it was issued with. addedAfter supports overlapping discovery windows because listings can become servable after first discovery. notes describe applied filters and coverage.
  • get_jobReturns one saved or corpus role by id with full description, company, location and remote terms, salary, posted date, match score, saved state, board column, application id, material readiness and work-eligibility verdict. url is the Dreamwork listing page; sourceUrl is the employer's direct posting. eligible is true for an unrestricted role or a confirmed allowed country, false for a high-confidence restriction excluding confirmed countries, and null when eligibility is unknown. Only false blocks applying or Autopilot: null means eligibility is not yet known, so proceed with applying — the application itself surfaces any real restriction. whyItMatches may be empty when no matcher explanation is stored.
  • save_jobSaves one role to the account's pipeline at SAVED as a bookmark. No application is submitted or queued until apply is called. Application materials may start preparing in the background. An already saved role returns a no-op receipt.
  • dismiss_matchHides one role, every listing with the same employer and title in any location, from the account's match feed, job alerts and Autopilot until the account restores or saves it. The receipt offers undo for one minute; restore_match reverses it at any time and list_dismissed_matches lists dismissed listings. The supplied reason is not stored. It does not hide other roles from the same company and does not move or remove an existing pipeline card.
  • restore_matchReverses the dismissal of a role, every listing with the same employer and title, so it can return to the account's match feed, job alerts and Autopilot. Restoring a listing that is not dismissed returns a no-op receipt. Restoring does not save the listing. A closed listing stays out of the feed.
  • list_dismissed_matchesReturns the account's dismissed listings, newest first, with listing id, title, company, Dreamwork page url, dismissal time and whether the listing is still active. total counts all dismissed listings. limit defaults to 20 and accepts up to 50; nextOffset continues the list and null ends it.
  • get_pipelineReturns saved and applied roles as board cards with column, application id and last-updated time. total and counts cover all matching records; complete identifies whether cards are truncated by limit. limit defaults to 50 cards and accepts up to 100; there is no next page, so when complete is false narrow the read with status. Column values describe board state and do not establish employer receipt or response.
  • move_pipelineMoves one role's board card to the requested column using the account holder's reported state. No employer is contacted. APPLIED records an application rather than submitting one; INTERVIEWING creates a durable interview record. WITHDRAWN removes the card from the active board. Closing a role can remove its listing from the feed. A receipt offers undo only when reversible.
  • mark_applied_offsiteRecords an application the account holder submitted outside Dreamwork. Exactly one of matchId, listingId or url names the role; a role not yet in the pipeline is added in Applied without generating materials, and an unlisted URL is imported in the background. appliedAt (YYYY-MM-DD or ISO 8601, not in the future) is the reported application date and defaults to now; repeating the call with a new appliedAt corrects it. attestation:true is required and represents the person's confirmation that submission occurred. Recorded roles are excluded from matches and Autopilot. Applications Dreamwork is still sending are refused. There is no undo. This call does not send an application.
  • import_jobFetches a public job-posting URL and imports it as a private role in the account's pipeline. Extraction runs asynchronously and the card appears when it finishes. A posting already held by Dreamwork returns completed without another fetch.
  • cancel_applyStops a queued or in-progress application when submission can still be prevented. Already submitted applications cannot be recalled; the receipt reports that boundary.
  • generate_packQueues a tailored resume, cover letter and employer-question answers for one saved role. assets optionally selects a subset; omission requests all three. Each request spends one pack allowance, regardless of subset, and generation settles asynchronously. Existing materials can be overwritten by generation.
  • +59 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

Planfix MCP

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "planfix-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@theyahia/planfix-mcp"
      ],
      "env": {
        "PLANFIX_API_KEY": "YOUR_PLANFIX_API_KEY_HERE",
        "PLANFIX_ACCOUNT": "YOUR_PLANFIX_ACCOUNT_HERE"
      }
    }
  }
}

Dreamwork

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "dreamwork-2": {
      "command": "npx",
      "args": [
        "-y",
        "@dreamworkhq/mcp"
      ],
      "env": {
        "DREAMWORK_API_KEY": "YOUR_DREAMWORK_API_KEY_HERE",
        "DREAMWORK_API_URL": "YOUR_DREAMWORK_API_URL_HERE",
        "DREAMWORK_UNREAD_NOTICES": "YOUR_DREAMWORK_UNREAD_NOTICES_HERE",
        "DREAMWORK_TELEMETRY": "YOUR_DREAMWORK_TELEMETRY_HERE",
        "DO_NOT_TRACK": "YOUR_DO_NOT_TRACK_HERE"
      }
    }
  }
}

Frequently asked questions

Planfix MCP is categorized under Workplace & Productivity and uses a local stdio subprocess. Dreamwork belongs to Workplace & Productivity and uses a remote HTTP/SSE transport. Pick Planfix MCP for workplace & productivity work and Dreamwork for workplace & productivity.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

Planfix MCP has no declared pricing — check the project's own site. Dreamwork has no declared pricing — check the project's own site. Auth: api key required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add planfix-mcp and dreamwork-2 as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, Planfix MCP has a quality signal of 60/100 (Good) with 4 views, 0 installs and 5 GitHub stars. Dreamwork has 75/100 (Great) with 2 views, 0 installs and 12 GitHub stars.