Flo976/atlassian-mcp-server
If you are the rightful owner of atlassian-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
The Atlassian MCP Server is a bridge between AI agents, automation tools like n8n, and Atlassian Cloud APIs (Jira and Confluence), providing clear REST endpoints for automating common operations.
Atlassian MCP Server
Un serveur MCP (Modular Command Platform) qui fait le pont entre les agents IA, les outils d'automatisation comme n8n et les APIs Atlassian Cloud (Jira et Confluence). Ce serveur expose des endpoints REST clairs pour automatiser les opérations courantes sur Jira et Confluence.
đ FonctionnalitĂ©s
Jira
- â CrĂ©er des tickets Jira
- â Consulter des tickets par clĂ©
- â Modifier des tickets (rĂ©sumĂ©, description, prioritĂ©, assignĂ©)
- â Effectuer des transitions de statut
- â Ajouter des commentaires
- â Recherche avancĂ©e par JQL
- â Lister tous les projets
Confluence
- â CrĂ©er des pages Confluence
- â Consulter des pages par ID
- â Modifier des pages
- â Ajouter des commentaires
- â Lister tous les espaces
- â Rechercher des pages
- â GĂ©rer l'arborescence des pages
đ ïž Installation
Prérequis
- Node.js 16+
- Compte Atlassian Cloud avec API token
- Token API Atlassian (généré depuis https://id.atlassian.com/manage-profile/security/api-tokens)
Installation locale
- Cloner le repository
git clone https://github.com/Flo976/atlassian-mcp-server
cd atlassian-mcp-server
- Installer les dépendances
npm install
- Configuration
cp .env.example .env
Remplir le fichier .env
avec vos informations :
ATLASSIAN_EMAIL=votre-email@company.com
ATLASSIAN_API_TOKEN=votre_token_api_atlassian
ATLASSIAN_BASE_URL=https://votre-entreprise.atlassian.net
MCP_API_KEY=votre_cle_api_securisee
PORT=3000
- Démarrer le serveur
# Mode production
npm start
# Mode développement (avec rechargement automatique)
npm run dev
Installation Docker
- Build l'image
docker build -t atlassian-mcp-server .
- Lancer le container
docker run -d \
--name atlassian-mcp \
-p 3000:3000 \
-e ATLASSIAN_EMAIL=votre-email@company.com \
-e ATLASSIAN_API_TOKEN=votre_token_api \
-e ATLASSIAN_BASE_URL=https://votre-entreprise.atlassian.net \
-e MCP_API_KEY=votre_cle_api_securisee \
atlassian-mcp-server
Ou avec docker-compose :
version: '3.8'
services:
atlassian-mcp:
build: .
ports:
- "3000:3000"
environment:
- ATLASSIAN_EMAIL=votre-email@company.com
- ATLASSIAN_API_TOKEN=votre_token_api
- ATLASSIAN_BASE_URL=https://votre-entreprise.atlassian.net
- MCP_API_KEY=votre_cle_api_securisee
- NODE_ENV=production
đ Documentation API
Authentification
Tous les endpoints nécessitent un header X-API-Key
avec votre clé API.
curl -H "X-API-Key: votre_cle_api" http://localhost:3000/mcp/jira/list_projects
Endpoints disponibles
đ Jira
Créer un ticket
curl -X POST "http://localhost:3000/mcp/jira/create_issue" \
-H "X-API-Key: votre_cle_api" \
-H "Content-Type: application/json" \
-d '{
"project": "PROJECT_KEY",
"summary": "Titre du ticket",
"description": "Description détaillée",
"issueType": "Task",
"priority": "High",
"labels": ["automation", "api"]
}'
Consulter un ticket
curl -X GET "http://localhost:3000/mcp/jira/get_issue/PROJECT-123" \
-H "X-API-Key: votre_cle_api"
Modifier un ticket
curl -X PUT "http://localhost:3000/mcp/jira/update_issue/PROJECT-123" \
-H "X-API-Key: votre_cle_api" \
-H "Content-Type: application/json" \
-d '{
"summary": "Nouveau titre",
"description": "Nouvelle description",
"priority": "Medium"
}'
Changer le statut
curl -X POST "http://localhost:3000/mcp/jira/transition_issue/PROJECT-123" \
-H "X-API-Key: votre_cle_api" \
-H "Content-Type: application/json" \
-d '{
"transition": "In Progress",
"comment": "Démarrage du travail"
}'
Ajouter un commentaire
curl -X POST "http://localhost:3000/mcp/jira/comment_issue/PROJECT-123" \
-H "X-API-Key: votre_cle_api" \
-H "Content-Type: application/json" \
-d '{
"comment": "Commentaire sur le ticket"
}'
Rechercher des tickets
curl -X POST "http://localhost:3000/mcp/jira/search_issues" \
-H "X-API-Key: votre_cle_api" \
-H "Content-Type: application/json" \
-d '{
"jql": "project = PROJECT_KEY AND status = \"To Do\"",
"maxResults": 10
}'
Lister les projets
curl -X GET "http://localhost:3000/mcp/jira/list_projects" \
-H "X-API-Key: votre_cle_api"
đ Confluence
Créer une page
curl -X POST "http://localhost:3000/mcp/confluence/create_page" \
-H "X-API-Key: votre_cle_api" \
-H "Content-Type: application/json" \
-d '{
"space": "SPACE_KEY",
"title": "Titre de la page",
"content": "<p>Contenu de la page en HTML</p>",
"parentId": "123456"
}'
Consulter une page
curl -X GET "http://localhost:3000/mcp/confluence/get_page/123456" \
-H "X-API-Key: votre_cle_api"
Modifier une page
curl -X PUT "http://localhost:3000/mcp/confluence/update_page/123456" \
-H "X-API-Key: votre_cle_api" \
-H "Content-Type: application/json" \
-d '{
"title": "Nouveau titre",
"content": "<p>Nouveau contenu</p>",
"version": 2
}'
Ajouter un commentaire
curl -X POST "http://localhost:3000/mcp/confluence/add_comment/123456" \
-H "X-API-Key: votre_cle_api" \
-H "Content-Type: application/json" \
-d '{
"comment": "<p>Commentaire sur la page</p>"
}'
Lister les espaces
curl -X GET "http://localhost:3000/mcp/confluence/list_spaces" \
-H "X-API-Key: votre_cle_api"
Rechercher des pages
curl -X POST "http://localhost:3000/mcp/confluence/search_pages" \
-H "X-API-Key: votre_cle_api" \
-H "Content-Type: application/json" \
-d '{
"text": "mot-clé",
"space": "SPACE_KEY",
"limit": 10
}'
đ§ IntĂ©gration avec des agents IA
Claude / OpenAI
Utilisez les endpoints REST directement dans vos prompts ou outils personnalisés.
n8n
- Utilisez le nĆud HTTP Request
- Configurez l'URL de l'endpoint
- Ajoutez le header
X-API-Key
- Structurez votre payload JSON
Exemple de workflow n8n
{
"method": "POST",
"url": "http://localhost:3000/mcp/jira/create_issue",
"headers": {
"X-API-Key": "{{$env.MCP_API_KEY}}",
"Content-Type": "application/json"
},
"body": {
"project": "PROJ",
"summary": "{{$json.title}}",
"description": "{{$json.description}}"
}
}
đĄïž SĂ©curitĂ©
- Authentification par clé API : Tous les endpoints nécessitent une clé API valide
- Variables d'environnement : Toutes les informations sensibles sont stockées dans des variables d'environnement
- Rate limiting : Protection contre les abus avec limitation de débit
- Validation des entrées : Validation stricte de tous les paramÚtres
- Gestion d'erreurs sécurisée : Pas d'exposition d'informations sensibles dans les erreurs
đŠ Monitoring
Endpoints de santé
GET /health
: Vérification de l'état du serveurGET /mcp
: Documentation des endpoints disponibles
Logs
Les logs incluent :
- RequĂȘtes HTTP avec mĂ©thodes et codes de rĂ©ponse
- Erreurs Atlassian avec détails (en mode développement)
- Tentatives d'authentification échouées
đ€ Contribution
- Fork le projet
- Créer une branche pour votre fonctionnalité
- Commiter vos changements
- Pousser vers la branche
- Créer une Pull Request
đ Licence
MIT
đ Support
Pour les problÚmes liés à :
- Atlassian APIs : Consultez la documentation officielle Atlassian
- Configuration : Vérifiez vos variables d'environnement et tokens API
- Développement : Créez une issue sur ce repository