@amgisllc/atlassian-mcp
v1.1.0
Published
MCP server for managing Jira issues and Confluence pages
Maintainers
Readme
@amgisllc/atlassian-mcp
A Model Context Protocol (MCP) server for interacting with Jira and Confluence APIs. This server provides tools to manage Jira issues and Confluence pages directly from Claude or other MCP-compatible clients.
Features
Jira Operations
- Search issues with JQL or natural language queries
- Create, read, update, and delete issues (including bulk operations)
- Add comments and manage transitions
- Sprint management (boards, sprints, move issues)
- Time tracking (worklog, estimates)
- Watchers management
- Issue linking and dependencies
- Advanced filtering and saved searches
- Assign issues to users
- Manage projects, components, and labels
Confluence Operations
- Search pages with CQL or filters
- Create, read, update, and delete pages
- Manage spaces
- Add comments to pages
- Copy and move pages
- Get page children and hierarchy
- Support for both storage and wiki markup formats
Installation
Option 1: Install from npm (Recommended)
npm install -g @amgisllc/atlassian-mcpOr install locally in a project:
npm install @amgisllc/atlassian-mcpOption 2: Install from source
- Clone this repository
- Install dependencies:
npm install- Build the project:
npm run buildConfiguration
Create a .env file in the project root with your Atlassian credentials:
# Jira Configuration
JIRA_DOMAIN=your-domain
[email protected]
JIRA_API_TOKEN=your-jira-api-token
# Confluence Configuration (optional, can use same as Jira)
CONFLUENCE_DOMAIN=your-domain
[email protected]
CONFLUENCE_API_TOKEN=your-confluence-api-tokenGetting API Tokens
- Go to Atlassian Account Settings
- Click "Create API token"
- Give it a descriptive name
- Copy the token and use it in your
.envfile
Domain Configuration
The domain is the first part of your Atlassian URL:
- If your Jira URL is
https://mycompany.atlassian.net, thenJIRA_DOMAIN=mycompany - Same applies for Confluence
Usage with Claude Desktop
Add the following to your Claude Desktop configuration file:
If installed globally via npm:
macOS/Linux
Edit ~/.config/claude/claude_desktop_config.json:
{
"mcpServers": {
"atlassian": {
"command": "npx",
"args": ["-y", "@amgisllc/atlassian-mcp"],
"env": {
"JIRA_DOMAIN": "your-domain",
"JIRA_EMAIL": "[email protected]",
"JIRA_API_TOKEN": "your-api-token"
}
}
}
}Windows
Edit %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"atlassian": {
"command": "npx.cmd",
"args": ["-y", "@amgisllc/atlassian-mcp"],
"env": {
"JIRA_DOMAIN": "your-domain",
"JIRA_EMAIL": "[email protected]",
"JIRA_API_TOKEN": "your-api-token"
}
}
}
}If installed from source:
Use the full path to your built index.js file:
{
"mcpServers": {
"atlassian": {
"command": "node",
"args": ["/path/to/atlassian-mcp/dist/index.js"],
"env": {
"JIRA_DOMAIN": "your-domain",
"JIRA_EMAIL": "[email protected]",
"JIRA_API_TOKEN": "your-api-token"
}
}
}
}New in Version 1.1.0
Natural Language Queries
You can now use natural language to search for issues:
- "my open bugs in project TSA"
- "high priority tasks from last week"
- "unassigned issues created today"
Bulk Operations
Perform actions on multiple issues at once:
- Bulk update fields
- Bulk transitions
- Bulk delete
Sprint Management
Full agile board support:
- View boards and sprints
- Move issues between sprints
- Get sprint reports
Enhanced Features
- Time Tracking: Log work, update estimates
- Watchers: Add/remove watchers on issues
- Issue Links: Create dependencies between issues
- Smart Caching: Improved performance with intelligent caching
- Validation: Input validation and better error messages
Available Tools
Jira Tools
jira_search_issues
Search for Jira issues using JQL or filters.
- Parameters:
jql(optional): JQL query stringprojectKey(optional): Filter by projectstatus(optional): Filter by statusassignee(optional): Filter by assigneereporter(optional): Filter by reportermaxResults(optional): Maximum results (default: 50)
jira_get_issue
Get details of a specific Jira issue.
- Parameters:
issueKey(required): Issue key (e.g., PROJ-123)
jira_create_issue
Create a new Jira issue.
- Parameters:
projectKey(required): Project keysummary(required): Issue summaryissueTypeName(required): Issue type (Bug, Task, Story, etc.)description(optional): Issue descriptionpriority(optional): Priority levelassigneeAccountId(optional): Assignee's account IDlabels(optional): Array of labelscomponents(optional): Array of componentscustomFields(optional): Custom field values
jira_update_issue
Update an existing Jira issue.
- Parameters:
issueKey(required): Issue keysummary(optional): New summarydescription(optional): New descriptionpriority(optional): New priorityassigneeAccountId(optional): New assigneelabels(optional): New labelscomponents(optional): New componentscustomFields(optional): Custom field updates
jira_delete_issue
Delete a Jira issue.
- Parameters:
issueKey(required): Issue key to delete
jira_add_comment
Add a comment to a Jira issue.
- Parameters:
issueKey(required): Issue keycomment(required): Comment text
jira_transition_issue
Transition an issue to a different status.
- Parameters:
issueKey(required): Issue keytransitionNameortransitionId: Transition to applycomment(optional): Transition commentresolution(optional): Resolution for closed issues
jira_get_projects
Get list of all accessible Jira projects.
jira_get_issue_types
Get available issue types for a project.
- Parameters:
projectKey(required): Project key
jira_assign_issue
Assign an issue to a user.
- Parameters:
issueKey(required): Issue keyaccountId(required): User's account ID
jira_get_comments
Get all comments for an issue.
- Parameters:
issueKey(required): Issue key
jira_search_users
Search for Jira users.
- Parameters:
query(optional): Search query
Confluence Tools
confluence_search_content
Search for Confluence pages.
- Parameters:
cql(optional): CQL query stringspaceKey(optional): Filter by spacetitle(optional): Filter by titletext(optional): Search in contentlimit(optional): Maximum results (default: 25)
confluence_get_page
Get details of a specific page.
- Parameters:
pageId(required): Page ID
confluence_create_page
Create a new Confluence page.
- Parameters:
spaceKey(required): Space keytitle(required): Page titlecontent(required): Page contentparentId(optional): Parent page IDformat(optional): Content format ('storage' or 'wiki')
confluence_update_page
Update an existing page.
- Parameters:
pageId(required): Page IDtitle(optional): New titlecontent(optional): New contentversionMessage(optional): Version messageformat(optional): Content format
confluence_delete_page
Delete a Confluence page.
- Parameters:
pageId(required): Page ID
confluence_get_spaces
Get list of all accessible spaces.
- Parameters:
limit(optional): Maximum results
confluence_get_space
Get details of a specific space.
- Parameters:
spaceKey(required): Space key
confluence_create_space
Create a new Confluence space.
- Parameters:
key(required): Space keyname(required): Space namedescription(optional): Space description
confluence_get_page_children
Get child pages of a page.
- Parameters:
pageId(required): Parent page IDlimit(optional): Maximum results
confluence_add_page_comment
Add a comment to a page.
- Parameters:
pageId(required): Page IDcomment(required): Comment text
confluence_copy_page
Copy a page to a new location.
- Parameters:
pageId(required): Page to copynewTitle(required): Title for the copytargetSpaceKey(optional): Target spacetargetParentId(optional): Target parent page
confluence_move_page
Move a page to a different location.
- Parameters:
pageId(required): Page to movetargetSpaceKey(optional): Target spacetargetParentId(optional): Target parent page
Development
Run in development mode:
npm run devBuild the project:
npm run buildClean build artifacts:
npm run cleanExample Usage in Claude
Once configured, you can use commands like:
"Search for all open bugs in project ABC"
"Create a new task in project XYZ with title 'Update documentation'"
"Add a comment to issue ABC-123 saying 'This has been resolved'"
"Create a new Confluence page in space DOCS with title 'API Guide'"
"Search for Confluence pages containing 'deployment'"Troubleshooting
Authentication Issues
- Ensure your API token is valid and not expired
- Verify the domain name is correct (without
.atlassian.net) - Check that your account has necessary permissions
Connection Issues
- Verify your internet connection
- Check if Atlassian services are operational
- Ensure firewall/proxy settings allow HTTPS connections
Permission Issues
- Verify your account has access to the projects/spaces
- Check project/space permissions in Atlassian admin settings
- Some operations may require admin privileges
Security Notes
- Never commit your
.envfile to version control - Keep your API tokens secure and rotate them regularly
- Use environment variables or secure credential storage in production
- Consider using separate API tokens for different environments
License
MIT
Support
For issues or questions:
- Check the Atlassian API documentation
- Review the error messages returned by the tools
- Ensure your API tokens have the necessary scopes
- Check Atlassian service status
