atlassian-onprem-mcp 1.0.1

dotnet tool install --global atlassian-onprem-mcp --version 1.0.1
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local atlassian-onprem-mcp --version 1.0.1
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=atlassian-onprem-mcp&version=1.0.1
                    
nuke :add-package atlassian-onprem-mcp --version 1.0.1
                    

atlassian-onprem-mcp

خادم MCP لأتلاسيان (Confluence + Jira + Bitbucket)

A comprehensive Model Context Protocol (MCP) server for Atlassian on-premise installations. Provides AI assistants with 60+ tools for full CRUD operations across Confluence, Jira, and Bitbucket Server.

خادم بروتوكول سياق النموذج (MCP) شامل لتثبيتات أتلاسيان المحلية. يوفر لمساعدي الذكاء الاصطناعي أكثر من 60 أداة لعمليات كاملة عبر Confluence و Jira و Bitbucket Server.

✨ Features | المميزات

  • Confluence - 21 tools: Search, CRUD pages, comments, labels, spaces, attachments, history
  • Jira - 22 tools: Search (JQL), CRUD issues, transitions, comments, worklogs, watchers, links
  • Bitbucket - 20 tools: Projects, repos, branches, commits, PRs (create/merge/approve/decline), file browsing
  • Authentication - PAT (Bearer) and Basic (username:password) support
  • On-Premise - Designed for Atlassian Server/Data Center installations
  • Bilingual - English + Arabic descriptions for all tools

📦 Installation | التثبيت

dotnet tool install -g atlassian-onprem-mcp

From Source

git clone https://github.com/atlassian-onprem-mcp/atlassian-onprem-mcp.git
cd atlassian-onprem-mcp/ConfluenceMcpServer
dotnet build

⚙️ Configuration | الإعدادات

Environment Variables | متغيرات البيئة

Variable Required Description الوصف
CONFLUENCE_BASE_URL ✅ Confluence server URL رابط خادم Confluence
CONFLUENCE_TOKEN ✅* Confluence PAT token رمز المصادقة لـ Confluence
JIRA_BASE_URL ❌ Jira server URL رابط خادم Jira
JIRA_TOKEN ⚠️ Jira PAT token (required if JIRA_BASE_URL set) رمز Jira
BITBUCKET_BASE_URL ❌ Bitbucket Server URL رابط خادم Bitbucket
BITBUCKET_TOKEN ⚠️ Bitbucket PAT token (required if BITBUCKET_BASE_URL set) رمز Bitbucket
DEFAULT_SPACE_KEY ❌ Default Confluence space key مفتاح المساحة الافتراضي
AUTH_TYPE ❌ pat (default) or basic نوع المصادقة
ATLASSIAN_USERNAME ⚠️ Username (required if AUTH_TYPE=basic) اسم المستخدم
ATLASSIAN_PASSWORD ⚠️ Password (required if AUTH_TYPE=basic) كلمة المرور

* When using AUTH_TYPE=basic, tokens are not required — username/password is used instead.

Command Line Arguments | وسائط سطر الأوامر

atlassian-onprem-mcp \
  --confluence-base-url=https://wiki.example.com \
  --confluence-token=your-token \
  --jira-base-url=https://jira.example.com \
  --jira-token=your-token \
  --bitbucket-base-url=https://bitbucket.example.com \
  --bitbucket-token=your-token \
  --auth-type=pat \
  --default-space-key=MYSPACE

🔧 MCP Configuration | إعدادات MCP

VS Code / GitHub Copilot

Create .vscode/mcp.json in your workspace:

{
  "mcpServers": {
    "atlassian": {
      "command": "atlassian-onprem-mcp",
      "args": [],
      "env": {
        "CONFLUENCE_BASE_URL": "https://wiki.example.com",
        "CONFLUENCE_TOKEN": "your-confluence-pat",
        "JIRA_BASE_URL": "https://jira.example.com",
        "JIRA_TOKEN": "your-jira-pat",
        "BITBUCKET_BASE_URL": "https://bitbucket.example.com",
        "BITBUCKET_TOKEN": "your-bitbucket-pat",
        "DEFAULT_SPACE_KEY": "MYSPACE"
      }
    }
  }
}

Basic Authentication

{
  "mcpServers": {
    "atlassian": {
      "command": "atlassian-onprem-mcp",
      "args": [],
      "env": {
        "CONFLUENCE_BASE_URL": "https://wiki.example.com",
        "JIRA_BASE_URL": "https://jira.example.com",
        "BITBUCKET_BASE_URL": "https://bitbucket.example.com",
        "AUTH_TYPE": "basic",
        "ATLASSIAN_USERNAME": "your-username",
        "ATLASSIAN_PASSWORD": "your-password"
      }
    }
  }
}

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "atlassian": {
      "command": "atlassian-onprem-mcp",
      "env": {
        "CONFLUENCE_BASE_URL": "https://wiki.example.com",
        "CONFLUENCE_TOKEN": "your-pat",
        "JIRA_BASE_URL": "https://jira.example.com",
        "JIRA_TOKEN": "your-pat",
        "BITBUCKET_BASE_URL": "https://bitbucket.example.com",
        "BITBUCKET_TOKEN": "your-pat"
      }
    }
  }
}

🛠️ Available Tools (63 Total) | الأدوات المتاحة

Confluence (21 tools) | أدوات Confluence

Read Operations | عمليات القراءة
Tool Description الوصف
confluence_search Full-text search for pages بحث نصي عن صفحات
confluence_search_cql Advanced search using CQL بحث متقدم باستخدام CQL
confluence_get_page Get page content by ID جلب محتوى صفحة بالمعرف
confluence_get_page_by_title Get page by title and space جلب صفحة بالعنوان والمساحة
confluence_get_space_pages List pages in a space عرض صفحات المساحة
confluence_get_child_pages List child pages عرض الصفحات الفرعية
confluence_get_comments Get page comments جلب تعليقات الصفحة
confluence_get_labels Get page labels جلب تصنيفات الصفحة
confluence_get_attachments Get page attachments جلب مرفقات الصفحة
confluence_get_page_history Get page version history جلب تاريخ الصفحة
confluence_get_spaces List all spaces عرض جميع المساحات
confluence_get_space Get space details جلب تفاصيل مساحة
confluence_get_user Get current user info جلب معلومات المستخدم
confluence_enrich_page Enrich page with requirement definitions إثراء صفحة بتعريفات المتطلبات
Write Operations | عمليات الكتابة
Tool Description الوصف
confluence_create_page Create a new page إنشاء صفحة جديدة
confluence_update_page Update page content تحديث محتوى صفحة
confluence_delete_page Delete a page حذف صفحة
confluence_add_comment Add a comment to a page إضافة تعليق على صفحة
confluence_add_label Add a label to a page إضافة تصنيف لصفحة
confluence_remove_label Remove a label from a page إزالة تصنيف من صفحة
confluence_create_space Create a new space إنشاء مساحة جديدة

Jira (22 tools) | أدوات Jira

Read Operations | عمليات القراءة
Tool Description الوصف
jira_search Search issues using JQL البحث باستخدام JQL
jira_get_issue Get full issue details جلب تفاصيل تذكرة كاملة
jira_get_my_issues Get my open issues جلب تذاكري المفتوحة
jira_get_comments Get issue comments جلب تعليقات التذكرة
jira_get_transitions Get available transitions جلب الانتقالات المتاحة
jira_get_projects List all projects عرض جميع المشاريع
jira_get_project Get project details جلب تفاصيل مشروع
jira_get_issue_types Get issue types جلب أنواع التذاكر
jira_get_priorities Get priorities جلب الأولويات
jira_get_statuses Get statuses جلب الحالات
jira_get_worklog Get work logs جلب سجل العمل
jira_get_watchers Get issue watchers جلب المتابعين
jira_get_user Get current user جلب المستخدم الحالي
Write Operations | عمليات الكتابة
Tool Description الوصف
jira_create_issue Create a new issue إنشاء تذكرة جديدة
jira_update_issue Update issue fields تحديث حقول تذكرة
jira_transition_issue Change issue status تغيير حالة تذكرة
jira_add_comment Add a comment إضافة تعليق
jira_assign_issue Assign an issue إسناد تذكرة
jira_add_worklog Log work time تسجيل وقت عمل
jira_link_issues Link two issues ربط تذكرتين
jira_add_watcher Add a watcher إضافة متابع
jira_delete_issue Delete an issue حذف تذكرة

Bitbucket Server (20 tools) | أدوات Bitbucket

Read Operations | عمليات القراءة
Tool Description الوصف
bitbucket_get_projects List all projects عرض جميع المشاريع
bitbucket_get_repos List repositories عرض المستودعات
bitbucket_get_repo Get repository details جلب تفاصيل مستودع
bitbucket_get_branches List branches عرض الفروع
bitbucket_get_commits List recent commits عرض أحدث الـ commits
bitbucket_get_commit Get commit details جلب تفاصيل commit
bitbucket_get_tags List tags عرض التاغات
bitbucket_get_pull_requests List pull requests عرض طلبات السحب
bitbucket_get_pull_request Get PR details جلب تفاصيل PR
bitbucket_get_pr_comments Get PR comments/activities جلب تعليقات PR
bitbucket_get_pr_diff Get PR diff/changes جلب تغييرات PR
bitbucket_get_file_content Get file content جلب محتوى ملف
bitbucket_get_directory Browse repository files تصفح ملفات المستودع
Write Operations | عمليات الكتابة
Tool Description الوصف
bitbucket_create_pull_request Create a pull request إنشاء طلب سحب
bitbucket_merge_pull_request Merge a PR دمج طلب سحب
bitbucket_decline_pull_request Decline/reject a PR رفض طلب سحب
bitbucket_approve_pull_request Approve a PR الموافقة على طلب سحب
bitbucket_add_pr_comment Comment on a PR تعليق على طلب سحب
bitbucket_create_branch Create a branch إنشاء فرع
bitbucket_delete_branch Delete a branch حذف فرع

🔐 Authentication | المصادقة

PAT (Personal Access Token) - Default | الافتراضي

Generate a PAT from your Atlassian product settings:

  • Confluence: Profile → Personal Access Tokens
  • Jira: Profile → Personal Access Tokens
  • Bitbucket: HTTP Access Tokens in repository/project settings

Basic Authentication | المصادقة الأساسية

Set AUTH_TYPE=basic and provide ATLASSIAN_USERNAME and ATLASSIAN_PASSWORD. The same credentials are used for all three products.

🏗️ Architecture | البنية

ConfluenceMcpServer/
├── Configuration/
│   └── McpServerConfiguration.cs    # Configuration management
├── Http/
│   └── HttpClientFactory.cs         # HTTP client creation with auth
├── Models/
│   ├── JsonRpcModels.cs             # JSON-RPC protocol models
│   └── McpToolDefinition.cs         # Tool definition models
├── Server/
│   └── McpServer.cs                 # MCP protocol handler (stdio)
├── Services/
│   └── ConfluenceEnrichmentService.cs  # Page enrichment logic
├── Tools/
│   ├── IToolHandler.cs              # Base interface & BaseToolHandler
│   ├── ConfluenceToolHandler.cs     # 21 Confluence tools
│   ├── JiraToolHandler.cs           # 22 Jira tools
│   └── BitbucketToolHandler.cs      # 20 Bitbucket tools
└── Program.cs                       # Entry point

🔌 Extensibility | قابلية التوسع

Add custom tools by implementing BaseToolHandler:

public class MyToolHandler : BaseToolHandler
{
    public MyToolHandler(HttpClient httpClient) : base(httpClient) { }

    public override bool CanHandle(string toolName) => toolName == "my_tool";

    public override IEnumerable<McpToolDefinition> GetTools()
    {
        yield return McpToolDefinition.Create(
            name: "my_tool",
            englishDescription: "My custom tool",
            arabicDescription: "أداتي المخصصة",
            inputSchema: new McpInputSchema { ... });
    }

    public override async Task<ToolResult> ExecuteAsync(string toolName, JsonNode? arguments)
    {
        var result = await GetJsonAsync("/my/endpoint");
        return ToolResult.Success(result);
    }
}

📋 Requirements | المتطلبات

  • .NET 8.0 SDK or later
  • Atlassian Server/Data Center (on-premise) installation
  • Valid authentication credentials (PAT or Basic)

📄 License | الرخصة

MIT

�‍💻 Author | المؤلف

Mohammed Khalil

📧 Email dev.mohammedKhalil@gmail.com
🐙 GitHub DevMKhalil
💼 LinkedIn mohammedkhalilmahmoud

Built for the Atlassian on-premise community.

تم بناءه لمجتمع أتلاسيان المحلي.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.0.1 176 5/4/2026
1.0.0 123 4/30/2026