A side-by-side look at the Career Compass MCP and MCP Server Atlassian Confluence MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Career Compass MCP for workplace & productivity work as a local process; choose MCP Server Atlassian Confluence for workplace & productivity as a local process. You can also run both side by side in one mcpServers block.
explore_opportunity, research_company, tailor_resume.ATLASSIAN_SITE_NAME, ATLASSIAN_USER_EMAIL, ATLASSIAN_API_TOKEN.conf_get, conf_post, conf_put.Rows where the two servers differ are marked.
| Spec | C Career Compass MCP | |
|---|---|---|
| Category | Workplace & Productivity | Workplace & Productivity |
| Quality signal | 60/100 · Good | 63/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | API key required |
| Pricing | Not declared | BYOK (pay the provider) |
| Required env vars | None listed | ATLASSIAN_SITE_NAMEATLASSIAN_USER_EMAILATLASSIAN_API_TOKEN |
| Verified owner | Community listing | Community listing |
| GitHub stars | 6 | 62 |
| Directory activity | 0 views 0 installs 0 upvotes | 3 views 0 installs 0 upvotes |
| Tools | 19 | 5 |
| Full listing | View Career Compass MCP | View MCP Server Atlassian Confluence |
explore_opportunityJudges a posting against your KB **and your stated preferences** — salary band, remote, relocation, notice period. Opens with a verdict (Strong fit, Stretch, or Long shot) and the biggest reason, then an explicit comp and location check, evidence per requirement, honest gaps, talking points and red…research_companyBuilds an intelligence brief: product, culture, funding, interview process, strategic fittailor_resumeWrites a résumé tailored to one posting from your KB — standard, federal, academic, or functional — using the posting's words only where your history says the same thinggenerate_cover_letterWrites a cover letter with your actual achievements woven in, in a tone you pick — professional, conversational, enthusiastic, or conciseformat_for_atsReformats résumé text you already have into plain sections an applicant tracking system can parse, ready to paste field by field (Workday, Greenhouse, Lever, LinkedIn, iCIMS, Taleo, SmartRecruiters, or generic). Reformats only; it never rewrites what you didanswer_applicationAnswers an application form's questions from your KB, each within its limit. Work authorization, salary and start date come only from what you saved or said, and a "years with X" your history can't support is flagged, never inflatedpipeline_viewLists applications, funnel stats, what needs attention, or one application by idpipeline_addAdds one application, dated the day you applied (`dateApplied`, defaults to today). Optional starting `status` (defaults to `applied`); unknown statuses are rejected with a did-you-mean suggestionpipeline_updateUpdates one application — status, notes, follow-up date, a contact, an interview round and how it went, or an offer's terms and answer deadlineclassify_emailClassifies a job-search email and extracts contacts, dates, and suggested pipeline updatesprepare_interviewFull prep: opening pitch, STAR stories, likely questions, company alignment, questions to askinterview_arcMid-process projection. Reconstructs the arc so far from your recorded rounds and journal signals, then projects what the **next** round will probe — ground already covered, threads the last interview left open, gaps nobody has tested yet, ranked likely questionsconf_getRead any Confluence data. Returns TOON format by default (30-60% fewer tokens than JSON).
**IMPORTANT - Cost Optimization:**
- ALWAYS use `jq` param to filter response fields. Unfiltered responses are very expensive!
- Use `limit` query param to restrict result count (e.g., `limit: "5"`)
- If unsure about available fields, first fetch ONE item with `limit: "1"` and NO jq filter to explore the schema, then use jq in subsequent calls
**Schema Discovery Pattern:**
1. First call: `path: "/wiki/api/v2/spaces", queryParams: {"limit": "1"}` (no jq) - explore available fields
2. Then use: `jq: "results[*].{id: id, key: key, name: name}"` - extract only what you need
**Output format:** TOON (default, token-efficient) or JSON (`outputFormat: "json"`)
**Common paths:**
- `/wiki/api/v2/spaces` - list spaces
- `/wiki/api/v2/pages` - list pages (use `space-id` query param)
- `/wiki/api/v2/pages/{id}` - get page details
- `/wiki/api/v2/pages/{id}/body` - get page body (`body-format`: storage, atlas_doc_format, view)
- `/wiki/rest/api/search` - search content (`cql` query param)
**JQ examples:** `results[*].id`, `results[0]`, `results[*].{id: id, title: title}`
API reference: https://developer.atlassian.com/cloud/confluence/rest/v2/conf_postCreate Confluence resources. Returns TOON format by default (token-efficient).
**IMPORTANT - Cost Optimization:**
- Use `jq` param to extract only needed fields from response (e.g., `jq: "{id: id, title: title}"`)
- Unfiltered responses include all metadata and are expensive!
**Output format:** TOON (default) or JSON (`outputFormat: "json"`)
**Common operations:**
1. **Create page:** `/wiki/api/v2/pages`
body: `{"spaceId": "123456", "status": "current", "title": "Page Title", "parentId": "789", "body": {"representation": "storage", "value": "<p>Content</p>"}}`
2. **Create blog post:** `/wiki/api/v2/blogposts`
body: `{"spaceId": "123456", "status": "current", "title": "Blog Title", "body": {"representation": "storage", "value": "<p>Content</p>"}}`
3. **Add label:** `/wiki/api/v2/pages/{id}/labels` - body: `{"name": "label-name"}`
4. **Add comment:** `/wiki/api/v2/pages/{id}/footer-comments`
API reference: https://developer.atlassian.com/cloud/confluence/rest/v2/conf_putReplace Confluence resources (full update). Returns TOON format by default.
**IMPORTANT - Cost Optimization:**
- Use `jq` param to extract only needed fields from response
- Example: `jq: "{id: id, version: version.number}"`
**Output format:** TOON (default) or JSON (`outputFormat: "json"`)
**Common operations:**
1. **Update page:** `/wiki/api/v2/pages/{id}`
body: `{"id": "123", "status": "current", "title": "Updated Title", "spaceId": "456", "body": {"representation": "storage", "value": "<p>Content</p>"}, "version": {"number": 2}}`
Note: version.number must be incremented
2. **Update blog post:** `/wiki/api/v2/blogposts/{id}`
Note: PUT replaces entire resource. Version number must be incremented.
API reference: https://developer.atlassian.com/cloud/confluence/rest/v2/conf_patchPartially update Confluence resources. Returns TOON format by default.
**IMPORTANT - Cost Optimization:** Use `jq` param to filter response fields.
**Output format:** TOON (default) or JSON (`outputFormat: "json"`)
**Common operations:**
1. **Update space:** `/wiki/api/v2/spaces/{id}`
body: `{"name": "New Name", "description": {"plain": {"value": "Desc", "representation": "plain"}}}`
2. **Update comment:** `/wiki/api/v2/footer-comments/{id}`
Note: Confluence v2 API primarily uses PUT for updates.
API reference: https://developer.atlassian.com/cloud/confluence/rest/v2/conf_deleteDelete Confluence resources. Returns TOON format by default.
**Output format:** TOON (default) or JSON (`outputFormat: "json"`)
**Common operations:**
- `/wiki/api/v2/pages/{id}` - Delete page
- `/wiki/api/v2/blogposts/{id}` - Delete blog post
- `/wiki/api/v2/pages/{id}/labels/{label-id}` - Remove label
- `/wiki/api/v2/footer-comments/{id}` - Delete comment
- `/wiki/api/v2/attachments/{id}` - Delete attachment
Note: Most DELETE endpoints return 204 No Content on success.
API reference: https://developer.atlassian.com/cloud/confluence/rest/v2/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.
{
"mcpServers": {
"career-compass-mcp": {
"command": "npx",
"args": [
"-y",
"career-compass-mcp"
]
}
}
}
{
"mcpServers": {
"aashari-mcp-server-atlassian-confluence": {
"command": "npx",
"args": [
"-y",
"@aashari/mcp-server-atlassian-confluence"
],
"env": {
"ATLASSIAN_SITE_NAME": "YOUR_ATLASSIAN_SITE_NAME_HERE",
"ATLASSIAN_USER_EMAIL": "YOUR_ATLASSIAN_USER_EMAIL_HERE",
"ATLASSIAN_API_TOKEN": "YOUR_ATLASSIAN_API_TOKEN_HERE"
}
}
}
}