Changefirst
Changefirst, the Leading Change Management Company helping Your Business implement Agile Change, and offering a revolutionary new way to meet the challenge.
https://www.changefirst.com/Opens ChatGPT on the web or desktop and asks it to use the WebMCP tools available here.
Connect straight to this server’s public endpoint.
https://mcp.changefirst.com/mcpWe add this server to your workspace, then open Studio — saved access, one connection to many servers, with a history of what ran.
Last probed Sep 14, 2026 · mcp.changefirst.com
64tools discovered
Showing 25 of 64 from the live probe.
Get Users
Retrieves a list of users that the current user is permitted to collaborate with, optionally filtered by shared access to specific applications. Use this for collaboration workflows such as sharing plans, assigning responsibilities, or selecting co-managers for assessments. Only users within the current user's permitted scope are returned — this is NOT a global admin directory. Response shape (Result object): - collection: array of user summaries, each with: * name (string): display na
Get Current User
Retrieves the identity and access profile of the currently authenticated user (UserRealmInfo from GET /me). Call this FIRST whenever another tool needs a 'clientId' or 'userId' parameter. Response shape: - id (string, UUID): the user's ID — use as 'userId' in the notification tools - name (string): display name - email (string): contact email - roles (string[]): assigned roles - attributes (object): profile attributes map — attributes.clientId holds the numeric client/organisation ID
Get User By Email
Retrieves the display name and email for a specific user, identified by their email address. Use this when you know a user's exact email and need their name for display or collaboration. This returns the same summary shape as 'get_current_user' but for any user in the system. Access is restricted to authorised users (e.g. administrators). Response shape: - name (string): display name - email (string): contact email Only name and email are returned — no IDs, roles, attributes, or profile d
Get Users By Emails
Resolves lightweight identity details for a batch of users identified by their email addresses. Use this as an efficient enrichment tool when you already have a list of email addresses and only need names — for example, to populate a table, enrich a collaboration view, or display assignee names in a list. This is lighter-weight than calling 'get_user_by_email' once per address. Response shape: array of user summaries, each containing: - name (string): display name - email (string): contact
Get Plans
List all change plan documents accessible to the authenticated user. Plans are the core working documents of the change management system — they combine a content-driven UI structure with persisted user input and access control configuration. This is the primary starting point for any plan-related workflow. Response shape (paginated collection): - collection: array of Plan objects - page: current page number (1-indexed) - limit: page size used - total: total number of accessible plans
Get Plan By Id
Returns the full plan document: structure, users, readiness, graphs, impacted groups, and the complete functions → stages → steps → activities → actions tree. Prefer a scoped tool when one covers the question: get_plan_summary, get_plan_structure, get_plan_stage, get_plan_step, get_plan_assessments_summary, get_plan_users, get_plan_impacted_groups. Use this tool only when you genuinely need the full document. Response shape (Plan object): - id (string, 24-char hex ObjectId): unique plan iden
Get Plan Summary
Returns a compact at-a-glance summary of a plan: name, process reference, stage/step/activity/action counts, completion progress, assessment count, and last updated timestamp. Use this instead of get_plan_by_id whenever the user asks a high-level question about a plan ("status of my plan", "how big is this plan", "how far along are we"). Response fields: - id, name, processId, archived, updatedAt - stageCount, stepCount, activityCount, actionCount - completedItemCount / totalItemCount: c
Get Plan Structure
Returns the skeleton of a plan — its functions → stages → steps tree — with id, name, and derived completion progress at each level. No activity/action bodies, users, readiness or graphs. Use this instead of get_plan_by_id whenever the user asks about the plan's layout or progress shape ("what stages are in this plan", "which steps are complete", "show me the outline"). Response shape: - id, name, functions[] - each function: { id, name, completedItems, totalItems, stages[] } - each stag
Get Plan Stage
Returns one stage with its steps. Stage: { id, name, completedItems, totalItems }. For each step: id, name, completedItems, totalItems, activityCount, actionCount (no activity/action bodies). completedItems/totalItems are derived from the per-activity/action 'completed' (0/1) flags — the Plan API has no stage/step-level status field. Use this instead of get_plan_by_id when the user asks about a specific stage ("what's in the Initiate stage", "which steps in Plan are done"). Broader than get_plan
Get Plan Step
Returns one step's activities and actions. For each activity: { id, name, completed (boolean) }. For each action: { id, name, completed (boolean), start, due, assignee }. Use when the user asks what to do in a specific step, what actions are available, which actions are complete, deadlines, or who is assigned. Deeper than get_plan_stage but narrower than get_plan_by_id. This is the deepest scoped tool — any finer-grained question about a step's contents should be answered from this response ra
Get Plan Users
Returns a flat list of users on the plan: { name, email, role } per user. Use this instead of get_plan_by_id whenever the user asks who is on a plan ("who's on this plan", "list collaborators", "who has access"). Plan documents only store username (email) and roles; display names are resolved automatically via the Users API when missing. 'role' is the user's role string (or comma-separated if multiple).
Get Plan Impacted Groups
Returns a flat list of impacted groups on the plan: { groupId, name, questionCount, riskLevels, questions[] } per group. Use this instead of get_plan_by_id whenever the user asks about who is impacted ("which groups are affected", "what risks were noted per group"). 'riskLevels' is a count per risk level (e.g. { high: 2, medium: 1, unspecified: 1 }) aggregated from the group's questions; each question is { id, description, risklevel ('low'/'medium'/'high' or null) }. The Plan API does not stor
Get Plan Assessments By Plan
List all assessment linkage records for a SPECIFIC plan. These records act as a join table between the plan document and assessment instances stored in the Assessment service. Use this to discover which assessments are associated with a given plan before fetching their full data from the Assessment service. Response shape (paginated collection): - collection: array of PlanAssessment objects - page: current page number (1-indexed) - limit: page size used - total: total number of linked
Get Plan Assessment By Id
Get a single assessment linkage record for a specific plan, identified by both plan ID and assessment linkage record ID. Use this for targeted retrieval of one linkage record when you already know both IDs. Response shape (PlanAssessment object): - id (string, 24-char hex ObjectId): unique linkage record ID - planId (string): parent plan ID - assessmentId (string): ID for retrieving the full assessment from the Assessment service - type (string, 3 chars): assessment type code (e.g. 'pc
Get Plan Assessments Summary
Returns a compact list of assessments attached to a plan — one entry per assessment with name, type, and result metrics. Use this instead of get_plan_by_id whenever the user asks about assessments on a plan ("list my assessments", "what's the risk score of each assessment", "which assessments are closed"). Response shape: flat array of { assessmentId, type, name, promoted, linkedAt, riskAverage, respondents, created, isClosed }. The linkage record supplies assessmentId, type, promoted, and li
Get Plan Access Token
Request a scoped JWT access token for a specific plan. This token grants time-limited access to the plan document, typically used when embedding the plan in external systems or granting delegated access. Response shape (AccessToken object): - subject (string, email): the user subject the token is issued for - algorithm (string): JWT signing algorithm, e.g. 'HS512' - type (string): token type, e.g. 'jwt' - issuer (string): token issuer domain, e.g. 'example.changefirst.com' - accessTo
Get Plan History
Get the full audit trail of all recorded changes to a specific plan document — status changes, field edits, and other tracked mutations over time. Use this to understand what changed on a plan, when it changed, who made the change, and what the before/after values were. Response shape (paginated collection): - collection: array of PlanHistoryEvent objects - page: current page number (1-indexed) - limit: page size used - total: total number of history events Each PlanHistoryEvent objec
Get Plan Activities
List all activity records for a specific plan. Activities store user-generated or system-generated data associated with individual activity nodes in the plan's structure. Each record has a schema-less 'data' field whose shape is determined by the activity type — consumers must interpret it dynamically. Response shape (paginated collection): - collection: array of PlanActivity objects - page: current page number (1-indexed) - limit: page size used - total: total number of activity recor
Get Plan Activity By Id
Get full details of a single activity record for a specific plan, identified by both plan ID and activity record ID. Use this for targeted retrieval of one activity record instead of iterating through the full collection. Response shape (PlanActivity object): - id (string, 24-char hex ObjectId): unique activity record ID - planId (string): parent plan ID - activityId (string): activity type/node identifier (e.g. 'map_the_change') - version (number): record version counter - locale (s
Export Plan
Export a complete plan document as a binary file. The server generates the file on-demand and streams it back. This tool confirms whether the export succeeded and returns the file metadata (content-type, size) available for download. Response shape (export confirmation object): - success (boolean): true if the file was generated successfully - planId (string): the plan that was exported - filename (string): the filename used for the export - contentType (string): MIME type of the gener
Export Plan Assessments
Download a ZIP archive of generated assessment summary spreadsheets for a plan, filtered by assessment type. The server retrieves all matching assessment records for the plan, calls the Assessment service to generate one Excel summary per assessment, bundles them into a ZIP archive, and streams it back. This tool confirms whether the export succeeded and returns file metadata. Response shape (export confirmation object): - success (boolean): true if the ZIP was generated successfully - pla
Export Plan Activity
Generate and download a document (Excel or Word) from a specific plan activity record. The server retrieves the activity data and passes it to an external document generation service, which produces a formatted binary file. The exact format (Excel/Word) is determined at runtime by the external service based on the activityId. This tool confirms whether the export succeeded and returns file metadata. Response shape (export confirmation object): - success (boolean): true if the document was ge
Get Processes
List all change process content definitions (methodology templates) available in the system. Processes are the source-of-truth structural templates that plan documents are based on — they define the UI layout, activity types, stages, and steps of the change methodology. Response shape (collection): - collection: array of Process objects Each Process object contains: - id (string, 24-char hex ObjectId): unique process identifier — pass to 'get_process_by_id' - name (string): process/meth
Get Process By Id
Get the full content definition of a single change process (methodology template) by its ID. Returns the complete process definition including all functions, stages, steps, activities, and actions — the structural blueprint that plan documents are based on. Response shape (Process object — full definition): - id (string, 24-char hex ObjectId): unique process identifier - name (string): process/methodology name - description (string): process description - version (number): definition v
Get Assessment Types
Retrieves the full canonical registry of all system-defined assessment types available in the platform, including metadata, descriptions, and multilingual labels. This is the master reference for all assessment classification. Use this as the starting point to discover which assessment types exist before querying assessments of a specific type. This data is static or slowly changing and suitable for caching. Response shape (AssessmentTypeResult wrapper): - collection: array of AssessmentType
Get your MCP into directories
A working endpoint is step one. Directory coverage is the coordinated launch across ChatGPT, Claude, Cursor, the MCP Registry, and community indexes.
Directory coverage for brandsChangefirst, the Leading Change Management Company helping Your Business implement Agile Change, and offering a revolutionary new way to meet the challenge.
Use the MCP endpoint listed on this page in your MCP client configuration. One-click install pills support Claude, Cursor, VS Code, and other hosts. Copy the remote MCP URL if your client needs a manual entry.
Operate Changefirst? Verify ownership to take over this directory entry.
This server appears in the MCPBundles directory. Verify you operate it to take over the listing — name, description, logo, contact email, and skill content. We email a 6-digit code to a maintainer address your server publishes in /.well-known/security.txt or /.well-known/mcpbundles.json. Free, takes about a minute.
MCPBundles probed 64 tools on the live server. The tool list on this page reflects what was discovered at the last refresh — connect your client to see the full set available to your session.
No provider sign-in was required during MCPBundles' probe. Your client may still need MCPBundles credentials depending on how you connect.
MCPBundles is an independent platform built on the open Model Context Protocol standard. Not affiliated with Anthropic PBC or Claude.