mcp-server
Provides tools for interacting with GitHub's API, enabling operations such as listing repositories, creating issues, managing pull requests, and accessing user or repository data.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-server list my GitHub repositories"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
#MCP Server
Production-ready TypeScript Model Context Protocol (MCP) server exposing utility, GitHub, and Microsoft Teams tools over stdio.
Why this repository
Clean MCP server baseline for internal automation and integrations
GitHub and Microsoft Teams operational tooling in a single service
Strict TypeScript setup and minimal runtime surface
Related MCP server: Basic MCP Server
Feature overview
Utility
echoget_time
GitHub tools
github_statusgithub_authenticated_usergithub_list_reposgithub_create_issuegithub_list_issuesgithub_get_filegithub_create_pull_requestgithub_request
Microsoft Teams tools
teams_send_message(webhook)teams_send_card(adaptive card webhook)teams_graph_status(Graph API)teams_send_dm(Graph API)
Requirements
Node.js 20+
npm 10+
Quick start (Windows)
cd mcp-server
npm install
copy .env.example .envPopulate .env before running.
Environment variables
Required for GitHub tools
GITHUB_TOKEN
Optional for Teams webhook tools
TEAMS_WEBHOOK_URL
Optional for Teams Graph tools
TEAMS_TENANT_IDTEAMS_CLIENT_IDTEAMS_CLIENT_SECRET
Scripts
npm run dev— development mode withtsxnpm run build— compile todist/npm run start— run compiled servernpm run clean— removedist/npm run inspect— open MCP inspector
Run modes
Development:
npm run devBuild + run:
npm run build
npm run startMCP stdio command:
node dist/index.jsSecurity and compliance
Do not commit
.envor secretsUse least-privilege credentials for GitHub and Microsoft Graph
Review SECURITY.md before production use
Contributing
See CONTRIBUTING.md and CODE_OF_CONDUCT.md.
License
Distributed under the MIT License. See LICENSE.
Available Tools
14 toolsechoEchoA
Returns exactly the text you send
Inputs: text (required).
get_timeGet TimeA
Returns the current server time in ISO format
Inputs: no named parameters.
github_authenticated_userGitHub Authenticated UserA
Returns the currently authenticated GitHub account
Inputs: no named parameters.
github_create_issueGitHub Create IssueC
Creates a GitHub issue in a repository
Inputs: repo (required), owner (required), title (required), body.
github_create_pull_requestGitHub Create Pull RequestC
Opens a pull request on a GitHub repository
Inputs: base (required), head (required), repo (required), owner (required), +2 more.
github_get_fileGitHub Get FileB
Reads a file from a GitHub repository and returns its content as text
Inputs: path (required), repo (required), owner (required), ref.
github_list_issuesGitHub List IssuesC
Lists open issues for a given repository
Inputs: repo (required), owner (required), state, per_page.
github_list_reposGitHub List RepositoriesC
Lists repositories for the authenticated GitHub user
Inputs: page, per_page, visibility.
github_requestGitHub Raw RequestB
Sends a raw authenticated request to GitHub REST API. Use with caution.
Inputs: path (required), method (required), paramsJson.
github_statusGitHub StatusA
Checks whether GitHub token is loaded and authentication works
Inputs: no named parameters.
teams_graph_statusTeams Graph StatusA
Checks whether Microsoft Graph credentials are configured and working
Inputs: no named parameters.
teams_send_cardTeams Send Adaptive CardC
Sends a rich Adaptive Card message to a Teams channel (title + body + optional link)
Inputs: body (required), title (required), link_url, link_label.
teams_send_dmTeams Send Direct MessageB
Sends a direct message (DM) to a specific Teams user by their email address
Inputs: message (required), recipient_email (required).
teams_send_messageTeams Send MessageB
Sends a plain text message to a Microsoft Teams channel via incoming webhook
Inputs: text (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 14 tools
Each tool targets a distinct function: utilities (echo, get_time), GitHub operations (create, list, read, status), and Teams messaging (send, status). The raw github_request is a fallback, but its distinct purpose is clear.
Tools use three different prefixes (none, github_, teams_), and within each, naming is mixed: verb_noun (create_issue, send_message) vs. noun-like (authenticated_user, status). The pattern is not fully consistent.
14 tools cover three distinct domains (utilities, GitHub, Teams) without being overwhelming. Each tool serves a clear purpose, and the count feels well-scoped for a multi-service integration.
For GitHub, common operations are present but missing updates/deletes and PR merging. For Teams, only sending is available (no reading, listing). The utilities are minimal. Notable gaps exist, but core workflows are covered.
Maintenance
Related MCP Connectors
An MCP server that let you interact with Cycloid.io Internal Development Portal and Platform
A TypeScript MCP server for Home Assistant, enabling programmatic management of entities, automati…
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
A simple Typescript MCP server built using the official MCP Typescript SDK and smithery/cli. This…
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA demonstration MCP server built in TypeScript that shows how to implement stdio-based communication for integration with MCP clients. Serves as a template for building custom MCP servers with strong typing and maintainability.ISC
- FlicenseBqualityDmaintenanceA basic TypeScript implementation of the Model Context Protocol (MCP) server designed as a starting point for MCP development. Provides a minimal foundation for building custom MCP servers with stdio configuration for local integration with VS Code and GitHub Copilot.1-
- -licenseNot gradedqualityNot gradedmaintenanceA production-ready TypeScript MCP server providing basic tools (add, echo, timestamp), resources (server info, greetings, data access), and prompt templates (analyze, code-review, summarize). Serves as a foundation for building custom MCP servers with extensible architecture.512 npm-
- AlicenseNot gradedqualityDmaintenanceA unified MCP server with composable tools for GitHub operations, file management, shell execution, kanban boards, Discord messaging, and package management. Features role-based security, HTTP/stdio transports, and a web-based development UI.GPL 3.0