Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
MCP server for Confluence Data Center and Confluence Server
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ATLASSIAN_DC_MCP_CONFIG_FILE, CONFLUENCE_HOST, CONFLUENCE_API_BASE_PATH, CONFLUENCE_API_TOKENค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"confluence-dc": {
"command": "npx",
"args": [
"-y",
"mcp-confluence-dc"
],
"env": {
"ATLASSIAN_DC_MCP_CONFIG_FILE": "ใส่ค่าของคุณ",
"CONFLUENCE_HOST": "ใส่ค่าของคุณ",
"CONFLUENCE_API_BASE_PATH": "ใส่ค่าของคุณ",
"CONFLUENCE_API_TOKEN": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add confluence-dc --env ATLASSIAN_DC_MCP_CONFIG_FILE='ใส่ค่าของคุณ' --env CONFLUENCE_HOST='ใส่ค่าของคุณ' --env CONFLUENCE_API_BASE_PATH='ใส่ค่าของคุณ' --env CONFLUENCE_API_TOKEN='ใส่ค่าของคุณ' -- npx -y mcp-confluence-dcเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"confluence-dc": {
"command": "npx",
"args": [
"-y",
"mcp-confluence-dc"
],
"env": {
"ATLASSIAN_DC_MCP_CONFIG_FILE": "ใส่ค่าของคุณ",
"CONFLUENCE_HOST": "ใส่ค่าของคุณ",
"CONFLUENCE_API_BASE_PATH": "ใส่ค่าของคุณ",
"CONFLUENCE_API_TOKEN": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"confluence-dc": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-confluence-dc"
],
"env": {
"ATLASSIAN_DC_MCP_CONFIG_FILE": "ใส่ค่าของคุณ",
"CONFLUENCE_HOST": "ใส่ค่าของคุณ",
"CONFLUENCE_API_BASE_PATH": "ใส่ค่าของคุณ",
"CONFLUENCE_API_TOKEN": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ATLASSIAN_DC_MCP_CONFIG_FILE envCONFLUENCE_HOST envCONFLUENCE_API_BASE_PATH envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub tekthar ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: CONFLUENCE_API_TOKEN
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.47.1) เข้า registry วันนี้
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Draugr
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Security scanning for AI agents: SAST, SCA, secrets, IaC, DAST, ranked by real risk.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
The leading MCP for Atlassian Data Center, built for AI-first companies that run Jira, Confluence and Bitbucket on their own servers.
Your teams chose Data Center for control over their data. They shouldn't have to give up the best AI models to keep it. Three Model Context Protocol (MCP) servers let Claude, Cursor and any other MCP client work in your self-hosted Atlassian tools: search and update issues, read and write pages, review pull requests, without flooding the model's context. Each is one npx command. Your agent signs in with your personal access token, so it can do what you can, and nothing more.
npx -y mcp-jira-dc setup # ← saves your Jira address and token
claude mcp add jira -- npx -y mcp-jira-dc # ← connects Claude Code
Claude now sees 14 Jira tools: the everyday ones for issues, comments and transitions, plus a search that reaches 43 more when it needs them, and a sandbox where it can combine many reads into one answer.
A community project. Not affiliated with or endorsed by Atlassian. Jira, Confluence and Bitbucket are trademarks of
Atlassian.
npx runs each server on your machine. No Python, no Docker, no server to run. Built for Data Center and Server, the editions Atlassian's own MCP server doesn't cover.setup checks your token against the server, then stores it in your OS keychain (macOS Keychain, Windows Credential Manager, or the Linux desktop keyring), or in a file only your user can read. The token is masked in everything the servers write.Data Center usually lives behind a firewall or a VPN. A server that runs where you work reaches it the way your browser does.
| A hosted MCP connector | These servers | |
|---|---|---|
| Reaches instances behind your firewall or VPN | only if the instance is exposed to the service | yes: wherever your machine can reach |
| Where your token lives | with the service | on your machine: your OS keychain, or a file only your user can read |
| Who decides which tools the agent sees | the service | you, with a few settings |
| Something to host, approve or pay for | the service | nothing: npx runs it |
Atlassian's official MCP server is a hosted server for Atlassian Cloud. These servers are for Data Center and Server.
| Server | npm package | What the agent can do |
|---|---|---|
| Jira | mcp-jira-dc | Search with JQL, create, update and transition issues, comments, links, versions, sprints, worklogs, service desk queues, fields and users. 63 tools in 18 toolsets, plus Xray test management when it's installed. |
| Confluence | mcp-confluence-dc | Search with CQL, read, create and update pages, page trees, version history and diffs, labels, comments, restrictions and attachments. 26 tools in 11 toolsets. |
| Bitbucket | mcp-bitbucket-dc | Browse projects, repositories, files, branches and commits, search code, and review and comment on pull requests. Merging and declining are opt-in. 27 tools plus 2 opt-in. |
Install only the ones you use. They share one configuration format, so a single settings file can serve all three.
The Jira server also has tools for these Marketplace apps:
| App | Versions | Status |
|---|---|---|
| Xray, test management | 8 | Beta |
| Jira Service Management | not recorded | Beta |
Beta means built and checked, but not yet run against a live instance of the app. Supported apps lists the exact versions each app's tools were built from and how they were checked.
npx -y mcp-jira-dc setup
Requires Node.js 22.22.2 or later, a Data Center or Server instance, and a personal access token. Swap in mcp-confluence-dc or mcp-bitbucket-dc for the other servers.
setup asks for your host and token, makes one authenticated request to check them, and saves them:
npx -y mcp-jira-dc setup
To create a token in Jira or Confluence, open your profile picture, then Personal Access Tokens > Create token. In Bitbucket it's Manage account > HTTP access tokens. In scripts and CI, setup --non-interactive takes everything as flags and exits non-zero when the token doesn't work.
install registers the server with Claude Code or Claude Desktop for you:
npx -y mcp-jira-dc install --claude-code # runs claude mcp add
npx -y mcp-jira-dc install --claude-desktop # edits Claude Desktop's config, after backing it up
Cursor, VS Code and other clients with an mcpServers file:
{
"mcpServers": { "jira": { "command": "npx", "args": ["-y", "mcp-jira-dc"] }, "confluence": { "command": "npx", "args": ["-y", "mcp-confluence-dc"] }, "bitbucket": { "command": "npx", "args": ["-y", "mcp-bitbucket-dc"] } } }
Then ask something like *"Which issues in our current sprint are blocked, and who owns them?"*
Every setting is optional. Unset, Jira and Confluence list their everyday tools and offer the rest through the search.
| Setting | What it does |
|---|---|
TOOLSETS | Lists whole toolsets directly, e.g. default,jira_agile for a team that lives in sprints. all lists everything. |
READ_ONLY_MODE=true | Offers only tools that never change anything. |
ENABLED_TOOLS | An exact allowlist of tool names, for locked-down setups. |
TOOL_GATEWAY=off | Turns the search off: tools outside the selected toolsets are left out. |
CODE_EXECUTION=off | Removes the code sandbox. |
PERMISSION_FILTER=off | Lists Jira tools without checking your permissions first. |
ATLASSIAN_DC_MCP_AUDIT=1 | Keeps an audit log: one line per tool call, with the tool, outcome and duration, never the arguments or results. Tools run through the search or from code are recorded too. |
Each server's README lists its toolsets and the settings that turn on risky tools: Jira, Confluence, Bitbucket.
doctor checks each step in turn and says how to fix what's wrong. It starts the server the way your MCP client does, so it shows exactly what the agent will get:
$ npx -y mcp-jira-dc doctor
mcp-jira-dc doctor
✓ Node.js 22.22.2 ✓ Settings everything needed is set JIRA_HOST: jira.example.com, from C:\Users\alice\.atlassian-dc-mcp\jira.env JIRA_API_BASE_PATH: (not set) JIRA_API_TOKEN: ••••HcU1, from Windows Credential Manager JIRA_DEFAULT_PAGE_SIZE: 25 (default) ✓ Keychain token kept in Windows Credential Manager ✓ Sign-in signed in as Alice Smith (alice) ✓ Tools 11 listed, about 2,900 tokens of context 32 more through jira_searchTools jira_runCode is on server: Permission filter hid 14 Jira tools: jira_transitionIssue, jira_linkIssues, ...
The token is masked, so the output is safe to paste into a bug report.
These are real responses from the Jira server, run against a test Jira. The tool list holds the everyday tools and four more:
jira_searchIssues, jira_getIssue, jira_getIssueComments, jira_createIssue, jira_updateIssue,
jira_postIssueComment, jira_updateIssueComment, jira_getTransitions, jira_transitionIssue, jira_downloadAttachment, jira_searchTools, jira_runReadTool, jira_runWriteTool, jira_runCode
Asked about a sprint, the agent searches for a tool. jira_searchTools returns the matches with their input schemas (left out here), and says whether each one reads or writes:
[
{ "name": "jira_getSprintIssues", "toolset": "jira_agile", "access": "read", "description": "List the issues in a sprint in the JIRA Data Center edition instance, in rank order, optionally narrowed by JQL. Returns key, summary, status, type, priority and assignee per issue." }, { "name": "jira_addIssuesToSprint", "toolset": "jira_agile", "access": "write", "description": "Move issues into a future or active sprint in the JIRA Data Center edition instance, taking them out of any other sprint. At most 50 issues per call." }, { "name": "jira_moveIssuesToBacklog", "toolset": "jira_agile", "access": "write", "description": "Move issues to the backlog in the JIRA Data Center edition instance, removing them from their future or active sprint. At most 50 issues per call." } ]
It can run the read tool with jira_runReadTool, or, to answer the question in one step, write a script for jira_runCode:
const { issues } = await tools.jira_getSprintIssues({ sprintId: 42 });
const blocked = issues.filter((issue) => issue.status === 'Blocked'); console.log(${blocked.length} of ${issues.length} issues are blocked); return blocked.map((issue) => ${issue.key} ${issue.summary} (${issue.assignee?.displayName ?? 'unassigned'}));
{
"result": [ "PAY-102 Migrate payouts to new ledger (Ben Okafor)", "PAY-104 Upgrade payment SDK (Amira Haddad)", "PAY-106 Refund API returns 500 on partial refunds (Ben Okafor)" ], "logs": ["3 of 7 issues are blocked"], "toolCalls": 1 }
That answer is 226 characters. The full sprint listing it came from is 1,215, and on a real sprint the gap grows with every
ตัดมาแค่ช่วงต้น อ่านต่อใน repo