What You’ll Learn
This guide shows you how to integrate GitHub with Junis using the official GitHub MCP Server. Your agents will be able to:- Browse and search repositories
- Read and create issues
- Manage pull requests
- View commits and branches
- Create and update files
Prerequisites:
- GitHub account with repository access
- Admin role in Junis (for organization-level setup)
- Basic understanding of GitHub Personal Access Tokens
Quick Setup (5 Minutes)
1
Generate GitHub Personal Access Token
- Go to GitHub Settings → Tokens
- Click “Generate new token (classic)”
- Select scopes based on your needs:
repo- Full repository access (recommended)read:org- Read organization inforead:user- Read user info
- Click “Generate token” and copy it immediately (shown only once!)
2
Add GitHub Platform to Junis
Navigate to Team > MCP Skills in Junis and find the GitHub card.If GitHub is already configured (globe icon 🌍), skip to Step 3.Otherwise, click “Connect” and fill in:
- Platform Name:
GitHub - MCP Server URL:
https://api.githubcopilot.com/mcp/ - Transport Type:
Streamable HTTP⚠️ Important: Must be HTTP, not SSE!
3
Add Your Credentials
Click “Add Auth” on the GitHub card and paste your Personal Access Token.Click “Test Connection” to verify it works.
4
Enable for Your Agents
Go to Admin > Agents, edit the agent you want to connect, and check “GitHub” in the MCP Platforms section.Save and test by asking: “List repositories in the JunisAI organization”
Authentication Levels
GitHub MCP supports all three authentication levels:- 👤 User-Level (Personal GitHub)
- 🌍 System-Level (Global Default)
Use Case: Access your personal repositories and private GitHub accountSetup: User Settings > MCP Credentials > GitHubExample:
- Your personal projects
- Private repos under your account
- Creating issues in repos you own
repo, read:userGitHub PAT Scopes Explained
Minimal Scopes (Read-Only)
Recommended Scopes (Read + Write)
Optional Scopes (Advanced)
Available GitHub Tools
Your agents can use these GitHub MCP tools:Repositories
github_list_repositories
List all repositories for a user or organization
github_get_repository
Get detailed information about a specific repository
github_search_repositories
Search repositories by keyword or criteria
github_create_repository
Create a new repository
Issues
github_list_issues
List issues in a repository
github_get_issue
Get details of a specific issue
github_create_issue
Create a new issue
github_update_issue
Update an existing issue (title, body, labels, assignees)
Pull Requests
github_list_pull_requests
List pull requests in a repository
github_get_pull_request
Get details of a specific PR
github_create_pull_request
Create a new pull request
github_merge_pull_request
Merge a pull request
File Operations
github_get_file_contents
Read file contents from a repository
github_create_or_update_file
Create or update a file in a repository
github_push_files
Push multiple files in a single commit
Commits & Branches
github_list_commits
View commit history
github_get_commit
Get details of a specific commit
github_list_branches
List all branches
github_create_branch
Create a new branch
Example Use Cases
DevOps Automation Agent
Agent Prompt:Code Review Assistant
Agent Prompt:Issue Triage Agent
Agent Prompt:Troubleshooting
Error: 405 Method Not Allowed
Error: 405 Method Not Allowed
Symptom: Connection fails with
405 Method Not Allowed for url 'https://api.githubcopilot.com/mcp/'Cause: Transport type is set to sse instead of streamable-httpSolution:- Go to Admin > MCP Skills > GitHub
- Edit the platform configuration
- Change Transport Type to “Streamable HTTP”
- Save and test connection
Error: 401 Unauthorized
Error: 401 Unauthorized
Error: 403 Forbidden
Error: 403 Forbidden
Symptom: Some operations fail with 403 errorsCause: PAT lacks necessary scopes (permissions)Solution:
- Check which operation failed (e.g., creating issues)
- Generate a new PAT with additional scopes:
- Issues:
reposcope - Private repos:
reposcope - Organization:
read:orgscope
- Issues:
- Update credentials and retry
Tools Not Showing Up
Tools Not Showing Up
Symptom: Agent is connected to GitHub but no tools appearPossible Causes:
- MCP connection failed
- Agent cache not refreshed
- Transport type misconfigured
- Check logs: Admin > Dashboard > Recent Activity
- Look for error messages mentioning “GitHub” or “MCP”
- Verify connection in Team > MCP Skills > GitHub > Test Connection
- If all looks good, restart the agent (edit and save without changes)
Rate Limit Exceeded
Rate Limit Exceeded
Symptom: API calls start failing after many requestsCause: GitHub API rate limit reached (5,000 requests/hour for authenticated users)Solution:
- Short-term: Wait 1 hour for rate limit reset
- Long-term: Implement caching in your agent logic to reduce API calls
- Check status: Ask agent “What’s my GitHub API rate limit status?”
Security Best Practices
✅ DO:
- Use user-level credentials for personal repositories
- Use organization-level credentials for shared team resources
- Rotate PATs every 90 days
- Grant only the minimum required scopes
- Store PATs in a password manager
Advanced Configuration
Using GitHub Enterprise Server
If your organization uses GitHub Enterprise Server:Rate Limit Monitoring
Create an agent that monitors GitHub API rate limits: Agent Instruction:What’s Next?
Slack MCP
Combine GitHub with Slack for notifications
Notion MCP
Create project documentation from GitHub data
Custom Workflows
Build complex multi-platform workflows
MCP Overview
Back to MCP Integration overview
Additional Resources
- GitHub MCP Server: https://github.com/github/github-mcp-server
- GitHub PAT Guide: https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token
- GitHub API Docs: https://docs.github.com/en/rest
- MCP Protocol: https://modelcontextprotocol.io/
Need Help? Contact us at [email protected] for assistance with GitHub automation workflows and integration support.
