JIRA Integration
STDIOMCP server enabling LLMs to interact with JIRA through standardized tools and context.
MCP server enabling LLMs to interact with JIRA through standardized tools and context.
An MCP server that enables Large Language Models (LLMs) to interact with JIRA through standardized tools and context. This server provides capabilities for searching issues using JQL and retrieving detailed issue information.
npm
installedJIRA_API_KEY
JIRA_USER_EMAIL
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{ "mcpServers": { "jira": { "command": "npx", "args": ["-y", "jira-mcp"], "env": { "JIRA_INSTANCE_URL": "https://your-instance.atlassian.net", "JIRA_USER_EMAIL": "[email protected]", "JIRA_API_KEY": "your-api-token" } } } }
jql_search
)Executes a JQL search query with customizable parameters.
Parameters:
jql
(required): JQL query stringnextPageToken
: Token for paginationmaxResults
: Maximum number of results to returnfields
: Array of field names to includeexpand
: Additional information to includeExample:
{ "jql": "project = 'MyProject' AND status = 'In Progress'", "maxResults": 10, "fields": ["summary", "status", "assignee"] }
get_issue
)Retrieves detailed information about a specific issue.
Parameters:
issueIdOrKey
(required): Issue ID or keyfields
: Array of field names to includeexpand
: Additional information to includeproperties
: Array of properties to includefailFast
: Whether to fail quickly on errorsExample:
{ "issueIdOrKey": "PROJ-123", "fields": ["summary", "description", "status"], "expand": "renderedFields,names" }
Set up your environment variables before running the server. Create a .env
file in the root directory:
JIRA_INSTANCE_URL=https://your-instance.atlassian.net [email protected] JIRA_API_KEY=your-api-token
Replace the values with:
To install JIRA for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install jira-mcp --client claude
git clone <repository-url> cd jira-mcp
npm install
For testing and development, you can use the MCP Inspector:
npm run inspect
To add new tools, modify the ListToolsRequestSchema
handler in index.js
:
server.setRequestHandler(ListToolsRequestSchema, async () => { return { tools: [ // Existing tools... { name: "your_new_tool", description: "Description of your new tool", inputSchema: { // Define input schema... } } ] }; });
Then implement the tool in the CallToolRequestSchema
handler.
MIT
Contributions are welcome! Please feel free to submit a PR.