Lets LLMs manage JIRA issues, tasks and workflows.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add jira --env JIRA_API_TOKEN='<JIRA_API_TOKEN>' --env JIRA_API_VERSION='<JIRA_API_VERSION>' --env JIRA_HOST='<JIRA_HOST>' --env JIRA_PROTOCOL='<JIRA_PROTOCOL>' --env JIRA_USERNAME='<JIRA_USERNAME>' -- python -m mcp_jira.simple_mcp_server~/.codex/config.toml
[mcp_servers.jira]
command = "python"
args = ["-m", "mcp_jira.simple_mcp_server"]
env = { JIRA_API_TOKEN = "<JIRA_API_TOKEN>", JIRA_API_VERSION = "<JIRA_API_VERSION>", JIRA_HOST = "<JIRA_HOST>", JIRA_PROTOCOL = "<JIRA_PROTOCOL>", JIRA_USERNAME = "<JIRA_USERNAME>" }
# codex mcp add jira --env JIRA_API_TOKEN='<JIRA_API_TOKEN>' --env JIRA_API_VERSION='<JIRA_API_VERSION>' --env JIRA_HOST='<JIRA_HOST>' --env JIRA_PROTOCOL='<JIRA_PROTOCOL>' --env JIRA_USERNAME='<JIRA_USERNAME>' -- python -m mcp_jira.simple_mcp_server~/.cursor/mcp.json
{
"mcpServers": {
"jira": {
"command": "python",
"args": [
"-m",
"mcp_jira.simple_mcp_server"
],
"env": {
"JIRA_API_TOKEN": "<JIRA_API_TOKEN>",
"JIRA_API_VERSION": "<JIRA_API_VERSION>",
"JIRA_HOST": "<JIRA_HOST>",
"JIRA_PROTOCOL": "<JIRA_PROTOCOL>",
"JIRA_USERNAME": "<JIRA_USERNAME>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"jira": {
"type": "stdio",
"command": "python",
"args": [
"-m",
"mcp_jira.simple_mcp_server"
],
"env": {
"JIRA_API_TOKEN": "<JIRA_API_TOKEN>",
"JIRA_API_VERSION": "<JIRA_API_VERSION>",
"JIRA_HOST": "<JIRA_HOST>",
"JIRA_PROTOCOL": "<JIRA_PROTOCOL>",
"JIRA_USERNAME": "<JIRA_USERNAME>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"jira": {
"command": "python",
"args": [
"-m",
"mcp_jira.simple_mcp_server"
],
"env": {
"JIRA_API_TOKEN": "<JIRA_API_TOKEN>",
"JIRA_API_VERSION": "<JIRA_API_VERSION>",
"JIRA_HOST": "<JIRA_HOST>",
"JIRA_PROTOCOL": "<JIRA_PROTOCOL>",
"JIRA_USERNAME": "<JIRA_USERNAME>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"jira": {
"command": "python",
"args": [
"-m",
"mcp_jira.simple_mcp_server"
],
"env": {
"JIRA_API_TOKEN": "<JIRA_API_TOKEN>",
"JIRA_API_VERSION": "<JIRA_API_VERSION>",
"JIRA_HOST": "<JIRA_HOST>",
"JIRA_PROTOCOL": "<JIRA_PROTOCOL>",
"JIRA_USERNAME": "<JIRA_USERNAME>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"jira": {
"command": "python",
"args": [
"-m",
"mcp_jira.simple_mcp_server"
],
"env": {
"JIRA_API_TOKEN": "<JIRA_API_TOKEN>",
"JIRA_API_VERSION": "<JIRA_API_VERSION>",
"JIRA_HOST": "<JIRA_HOST>",
"JIRA_PROTOCOL": "<JIRA_PROTOCOL>",
"JIRA_USERNAME": "<JIRA_USERNAME>"
}
}
}
}Environment variables
JIRA_API_TOKENJIRA_API_VERSIONJIRA_HOSTJIRA_PROTOCOLJIRA_USERNAME
Replace the placeholders with your own credentials and keep them out of version control.