MCP server exposing Jira, GitHub, .NET, and workspace tools for GitHub Copilot.
Installation
Option A: VS Code Extension (Recommended)
Install from the VS Code Marketplace:
- Open VS Code (1.101+)
- Extensions → Search "Jira, GitHub & .NET MCP"
- Install → Configure credentials in Settings:
jiraGithubMcp.jiraBaseUrl— your Jira instance URLjiraGithubMcp.jiraBearerToken— Jira Bearer token (or use email + API token)jiraGithubMcp.githubToken— GitHub PAT (optional, falls back toghCLI)
The MCP server auto-registers with Copilot Chat on activation.
Option B: Standalone via npx (Any MCP Client)
npx @man-solutions/jira-github-dotnet-mcp
Configure in your MCP client (.vscode/mcp.json, Claude Desktop, etc.):
{
"mcpServers": {
"jira-github-dotnet": {
"command": "npx",
"args": ["-y", "@man-solutions/jira-github-dotnet-mcp"],
"env": {
"JIRA_BASE_URL": "https://your-domain.atlassian.net",
"JIRA_BEARER_TOKEN": "your-token",
"GITHUB_TOKEN": "ghp_xxx"
}
}
}
}
Option C: Local Development
git clone https://github.com/MNADEEM/jira-github-mcp.git
cd jira-github-mcp
npm install
npm run build
node dist/index.js
Authentication
Jira (one of):
JIRA_BEARER_TOKEN(preferred)JIRA_EMAIL+JIRA_API_TOKEN
GitHub (priority order):
GITHUB_TOKENenvironment variablegh auth token(GitHub CLI)git credential fill(Git Credential Manager)
Usage pattern
Use lower-cost tools first, then escalate only when needed.
- Cost tiers:
- CHEAPER: default starting point for discovery and summaries
- EXPENSIVE: richer details for one item or focused context
- VERY EXPENSIVE: large/detail-heavy data that can grow quickly
- SUPER EXPENSIVE: heavy history/log/comment payloads; call only when strictly required
- Optional flags:
includeBodyandverboseshould stayfalseunless the extra text or metadata is actually needed.
Tools
Jira (Read-only)
jira_get_issue_summary(CHEAPER): Compact Jira issue summary by key (PROJ-123)jira_search_issues(CHEAPER): Search Jira with JQL and return compact issue summariesjira_get_issue_description(EXPENSIVE): Get plain-text description for an issuejira_get_issue_attachments(EXPENSIVE): Get attachment metadatajira_get_issue_links(EXPENSIVE): Get linked issuesjira_get_issue_subtasks(EXPENSIVE): Get subtasksjira_get_issue_related(VERY EXPENSIVE): Get related items such as parent, hierarchy, epic/story context, and child itemsjira_get_issue_comments_heavy(SUPER EXPENSIVE): Get issue commentsjira_get_issue_worklog_heavy(SUPER EXPENSIVE): Get issue worklog entriesjira_get_issue_changelog_heavy(SUPER EXPENSIVE): Get issue changelog entries
GitHub (Read-only)
github_get_repo(CHEAPER): Get compact GitHub repository metadata (verboseoptional)github_list_repo_issues(CHEAPER): List repository issues as compact summaries (includeBodyoptional)github_search_pulls(CHEAPER): Search pull requests as compact summaries (includeBodyoptional)github_list_branches(CHEAPER): List branches as compact summariesgithub_search_code(CHEAPER): Search code across repositories with compact previewsgithub_search_code_in_repo(CHEAPER): Search code within a specific repository and branchgithub_get_pr(EXPENSIVE): Get compact PR details including counts and branch refs (verboseandincludeBodyoptional)github_get_issue_detail(EXPENSIVE): Get metadata for a single issue (verboseandincludeBodyoptional)github_get_issue_comments(EXPENSIVE): Get issue comments (includeBodyoptional)github_list_pr_comments(EXPENSIVE): Get PR review comments (includeBodyoptional)github_get_pr_commits(EXPENSIVE): Get commit summaries for a pull requestgithub_get_pr_files_detail(VERY EXPENSIVE): Get changed files for a pull requestgithub_get_file_content(VERY EXPENSIVE): Get file content preview by default; withincludeContent=trueorincludeRaw=true, this may become SUPER EXPENSIVE for large files
Workspace (Read-only)
workspace_get_repo_structure(CHEAPER): Get a shallow file/directory tree of the workspace rootworkspace_detect_stack(CHEAPER): Detect technology stack from manifest files and conventionsworkspace_find_manifests(CHEAPER): Locate all manifest/config files (package.json,tsconfig.json,Dockerfile, etc.)workspace_find_entrypoints(CHEAPER): Identify likely application entry pointsworkspace_list_projects(CHEAPER): Detect monorepo structure or nested projectsworkspace_get_config_inventory(CHEAPER): Summarize build, lint, CI, environment, and Docker config filesworkspace_get_repo_snapshot(EXPENSIVE): Comprehensive repository orientation (stack, entry points, manifests, structure, README, file counts)workspace_summarize_files(CHEAPER): Compress multiple files into bounded previews or summariesworkspace_get_feature_snapshot(EXPENSIVE): Summarize a directory or feature area (key files, purpose, tests)workspace_deep_search_text(EXPENSIVE): Deep text/regex search across local repo files with line-level matchesworkspace_rank_files_for_question(EXPENSIVE): Rank local files by relevance to a spike question
Research / Documentation (Read-only)
research_search_web(EXPENSIVE): Web search via DuckDuckGo HTML results with compact title/url outputresearch_fetch_web_document(EXPENSIVE): Fetch internet docs page text (uses jina-ai proxy by default)research_fetch_multiple_documents(VERY EXPENSIVE): Fetch and bound content for multiple documentation URLs in one call
.NET / C# (Read-only)
dotnet_get_solution_overview(CHEAPER): Get solution overview with all projects, their types, target frameworks, and dependenciesdotnet_get_project_details(CHEAPER): Get detailed information for a .csproj file (dependencies, configuration, target framework)dotnet_find_projects_by_type(CHEAPER): Find projects by type (test, web, console, library)dotnet_list_nuget_dependencies(CHEAPER): List NuGet packages for a project with optional keyword filteringdotnet_find_configuration_files(CHEAPER): Find .NET config files (appsettings.json, Program.cs, Startup.cs, web.config, etc.)dotnet_detect_architecture_patterns(EXPENSIVE): Detect architecture patterns (layered, onion, microservices, DDD conventions)dotnet_find_test_projects(CHEAPER): Find all test projects and map them to implementation projectsdotnet_find_dbcontexts(CHEAPER): Find Entity Framework DbContext files, entities, and migrationsdotnet_find_controllers_and_endpoints(EXPENSIVE): Find API controllers and minimal API endpoints with their routesdotnet_trace_endpoint_lifecycle(EXPENSIVE): Given an endpoint, match controller/minimal API candidates and trace downstream request lifecycle through controller/service/repository/DbContext calls
Development
npm install
npm run build # Build MCP server → dist/
npm run build:all # Build server + extension
npm run package # Create .vsix package
npm run dev # Run with tsx (hot reload)