MCP Server Setup Guides
Step-by-step configurations for common MCP servers. Copy-paste ready for your .kiro/settings/mcp.json.
GitHub - PRs, Issues, Repos
Step 1: Create a Personal Access Token
- Go to GitHub → Settings → Developer settings → Fine-grained tokens
- Click Generate new token
- Name it something like "Kiro MCP"
- Set expiration (90 days is a good balance)
- Under Repository access, select the repos you want Kiro to access (or "All repositories")
- Under Permissions, grant:
- Issues: Read and write
- Pull requests: Read and write
- Contents: Read (for reading code in PRs)
- Metadata: Read (required)
- Click Generate token and copy it
Step 2: Add to mcp.json
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
}
}
}
}
Step 3: Verify
Open the Kiro sidebar → MCP Servers. You should see "github" listed with a green status. Try: "List my open PRs" or "Create an issue in repo X titled Y".
What you can do with it
- "Create a PR from the current branch with a description of the changes"
- "Create an issue titled 'Refactor auth service' with a description"
- "List open PRs in my-org/my-repo"
- "Get the diff for PR #42"
- "Add a review comment to PR #42"
gh CLI available as a built-in tool (via execute_bash). The MCP server gives the model more structured, direct access to GitHub's API without needing to construct CLI commands. Both work - the MCP route is cleaner for complex operations.
Jira + Confluence - Self-hosted Setup
If your organisation uses self-hosted Jira/Confluence (not Atlassian Cloud), you'll need the sooperset/mcp-atlassian Python server with Personal Access Tokens.
Prerequisites
- Python 3.10 - 3.13 (does not work with 3.14+)
- Git
- Jira and/or Confluence Personal Access Tokens
Step 1: Clone and install
# Navigate to your preferred directory
cd ~/mcp-servers
# Clone the repository
git clone https://github.com/sooperset/mcp-atlassian.git
cd mcp-atlassian
# Create virtual environment
python3 -m venv venv
# Activate virtual environment
source venv/bin/activate
# Install dependencies
pip install -e .
Step 2: Create .env file
Create a .env file in the mcp-atlassian directory:
# MCP-ATLASSIAN CONFIGURATION
JIRA_URL=https://jira.yourcompany.com
CONFLUENCE_URL=https://confluence.yourcompany.com
# Personal Access Tokens (from profile → Personal Access Tokens)
JIRA_PERSONAL_TOKEN=your-jira-pat-here
CONFLUENCE_PERSONAL_TOKEN=your-confluence-pat-here
# SSL verification
JIRA_SSL_VERIFY=true
CONFLUENCE_SSL_VERIFY=true
# Filter to specific projects/spaces (comma-separated, optional)
JIRA_PROJECTS_FILTER=PROJ1,PROJ2
CONFLUENCE_SPACES_FILTER=TEAM,DOCS
# Logging
MCP_VERBOSE=true
# Set true to prevent writes (safe for testing)
READ_ONLY_MODE=false
Step 3: Create startup script
Create ~/mcp-servers/mcp-atlassian/start-mcp-atlassian.sh:
#!/bin/bash
cd ~/mcp-servers/mcp-atlassian
source venv/bin/activate
python run_server.py --env-file .env -v
chmod +x ~/mcp-servers/mcp-atlassian/start-mcp-atlassian.sh
Step 4: Configure in Kiro
Add to ~/.kiro/settings/mcp.json (global, so it works across all workspaces):
{
"mcpServers": {
"atlassian": {
"command": "/bin/bash",
"args": ["~/mcp-servers/mcp-atlassian/start-mcp-atlassian.sh"]
}
}
}
Step 5: Verify
Check Kiro sidebar → MCP Servers. Test with:
- "Show me my recent Jira issues"
- "Search Confluence for documentation about authentication"
- "Get details for issue PROJ-123"
Getting Personal Access Tokens
- Go to your profile in Jira/Confluence
- Navigate to Personal Access Tokens
- Create a new token
- Copy it into the
.envfile
Troubleshooting
- Python version: Must be 3.10 - 3.13. Version 3.14+ does not work.
- Auth errors: Check PAT is correct, not expired, and the URL has no trailing slash.
- Can't connect: Use absolute paths in mcp.json. Restart IDE after config changes.
- Permission errors: Set
READ_ONLY_MODE=truefor testing, or check your Atlassian permissions.
Jira - Cloud Setup (Atlassian Cloud)
If you use Atlassian Cloud (yourcompany.atlassian.net) instead of self-hosted, the setup is simpler - use the npm package directly:
- Go to Atlassian API Tokens
- Click Create API token
- Name it "Kiro MCP"
- Copy the generated token
Step 2: Identify your details
- Site name: the subdomain of your Jira instance (e.g.
mycompanyfrommycompany.atlassian.net) - Email: the email associated with your Atlassian account
Step 3: Add to mcp.json
{
"mcpServers": {
"jira": {
"command": "npx",
"args": ["-y", "@aashari/mcp-server-atlassian-jira"],
"env": {
"ATLASSIAN_SITE_NAME": "mycompany",
"ATLASSIAN_USER_EMAIL": "you@company.com",
"ATLASSIAN_API_TOKEN": "your-api-token-here"
}
}
}
}
Step 4: Verify
Check Kiro sidebar → MCP Servers for "jira" with green status. Try: "List my assigned Jira issues" or "Search for issues in project MYPROJ".
What you can do with it
- "Create a Jira ticket in project MYPROJ: title 'Implement user settings page', description '...', type Story"
- "Search for open bugs assigned to me"
- "Get details of MYPROJ-123"
- "List issues in the current sprint"
- "Move MYPROJ-123 to In Progress"
Alternative: Official Atlassian Rovo MCP (Remote)
Atlassian also offers an official remote MCP server (no local process needed). This uses OAuth authentication and supports both Jira and Confluence:
{
"mcpServers": {
"atlassian": {
"url": "https://mcp.atlassian.com/v1/mcp/authv2"
}
}
}
After adding the config, Kiro will prompt you to authenticate via OAuth when you first use Atlassian tools. Check Atlassian's setup guide for full details.
GitHub + Jira Together
You can configure both in the same mcp.json:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
}
},
"jira": {
"command": "npx",
"args": ["-y", "@aashari/mcp-server-atlassian-jira"],
"env": {
"ATLASSIAN_SITE_NAME": "mycompany",
"ATLASSIAN_USER_EMAIL": "you@company.com",
"ATLASSIAN_API_TOKEN": "your-jira-token-here"
}
}
}
}
With both connected, you can do things like: "Create a PR for the current branch and link it to MYPROJ-123 in Jira" - Kiro will use both servers in sequence.
Security Reminders
- Don't commit tokens to git. Add
.kiro/settings/mcp.jsonto your.gitignoreif it contains secrets. Alternatively, use the user-level config at~/.kiro/settings/mcp.jsonwhich is never in a repo. - Use fine-grained tokens with minimal permissions - only what you actually need.
- Rotate tokens periodically - set reminders when you create them.
- Workspace vs global - if you use the same GitHub/Jira across all projects, put it in
~/.kiro/settings/mcp.json. If different projects use different accounts, use workspace-level config.