github-app (chrisleekr/github-app) is an MCP server listed on the M8ven Trust Index. It scores 74 out of 100, grade C. It declares 18 tools. No publisher has claimed this listing.

C
Emerging
74/100
2 months ago

github-app

A GitHub App that listens for bot mention on PRs and issues, then autonomously responds using the Claude Agent SDK (@anthropic-ai/claude-agent-sdk) with MCP servers

Emerging. No concerning findings. Grades remain capped until the project builds reputation through adoption. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

Code Verified⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

chrisleekr

Source: github_topic

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

M8ven verifies MCPs across every public registry — install directly from whichever one you prefer.

// key findings
No credential exfiltration, no sensitive file access, no obfuscation
Static analysis found nothing flowing your secrets to unexpected places.
Open source with a license and README
Anyone can audit the code, the license is declared, and the publisher documents what it does.
🔐
You'll be asked for 10 credentials: ANTHROPIC_API_KEY, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN, CLAUDE_CODE_OAUTH_TOKEN, CONTEXT7_API_KEY, DAEMON_AUTH_TOKEN, GITHUB_APP_PRIVATE_KEY, GITHUB_PERSONAL_ACCESS_TOKEN, GITHUB_TOKEN, GITHUB_WEBHOOK_SECRET
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configACTION_PINS_REPO_ROOT
configAGENT_MAX_TURNS
configAGENT_TIMEOUT_MS
configALLOWED_OWNERS
🔐 secretANTHROPIC_API_KEY
configANTHROPIC_BEDROCK_BASE_URL
configAWS_ACCESS_KEY_ID
configAWS_BEARER_TOKEN_BEDROCK
configAWS_PROFILE
configAWS_REGION
🔐 secretAWS_SECRET_ACCESS_KEY
🔐 secretAWS_SESSION_TOKEN
configBASE_SHA
configBOT_APP_LOGIN
configCHAT_THREAD_EXECUTE_THRESHOLD
configCHAT_THREAD_MAX_TURNS
configCHAT_THREAD_PROPOSAL_TTL_HOURS
configCHAT_THREAD_TOOLS_ENABLED
🔐 secretCLAUDE_CODE_OAUTH_TOKEN
configCLAUDE_CODE_PATH
configCLAUDE_COMMENT_ID
configCLAUDE_MODEL
configCLAUDE_PROVIDER
configCLONE_BASE_DIR
configCLONE_DEPTH
🔐 secretCONTEXT7_API_KEY
configCRON_TICKLE_INTERVAL_MS
🔐 secretDAEMON_AUTH_TOKEN
configDAEMON_AUTH_TOKEN_PREVIOUS
configDAEMON_CAPABILITIES
configDAEMON_DISK_FLOOR_MB
configDAEMON_DRAIN_TIMEOUT_MS
configDAEMON_EPHEMERAL
configDAEMON_IMAGE
configDAEMON_MAX_CONCURRENT_JOBS
configDAEMON_MEMORY_FLOOR_MB
configDAEMON_UPDATE_DELAY_MS
configDAEMON_UPDATE_STRATEGY
configDEFAULT_MAXTURNS
configDELIVERY_ID
configDISCUSSION_DIGEST_MODEL
configDOCS_CHECK_REPO_ROOT
configEPHEMERAL_DAEMON_IDLE_TIMEOUT_MS
configEPHEMERAL_DAEMON_NAMESPACE
configEPHEMERAL_DAEMON_SPAWN_COOLDOWN_MS
configEPHEMERAL_DAEMON_SPAWN_QUEUE_THRESHOLD
configFIX_ATTEMPTS_PER_SIGNATURE_CAP
configFLEET_SNAPSHOT_INTERVAL_MS
configGITHUB_APP_ID
🔐 secretGITHUB_APP_PRIVATE_KEY
🔐 secretGITHUB_PERSONAL_ACCESS_TOKEN
🔐 secretGITHUB_TOKEN
🔐 secretGITHUB_WEBHOOK_SECRET
configHEAD_SHA
configHEARTBEAT_INTERVAL_MS
configHEARTBEAT_TIMEOUT_MS
configINTENT_CONFIDENCE_THRESHOLD
configJOB_MAX_RETRIES
configKUBECONFIG
configKUBERNETES_SERVICE_HOST
configLIVENESS_REAPER_INTERVAL_MS
configLLM_OUTPUT_SCANNER_ENABLED
configLLM_OUTPUT_SCANNER_MODEL
configLLM_OUTPUT_SCANNER_TIMEOUT_MS
configLOG_LEVEL
configMAX_CONCURRENT_REQUESTS
configMAX_FETCHED_COMMENTS
configMAX_FETCHED_FILES
configMAX_FETCHED_REVIEWS
configMAX_FETCHED_REVIEW_COMMENTS
configMAX_SHIP_ITERATIONS
configMAX_WALL_CLOCK_PER_SHIP_RUN
configMERGEABLE_NULL_BACKOFF_MS_LIST
configOFFER_TIMEOUT_MS
configORCHESTRATOR_PUBLIC_URL
configORCHESTRATOR_URL
configPROMPT_CACHE_LAYOUT
configPR_NUMBER
configQUEUE_WORKER_BACKOFF_MAX_MS
configREPO_MEMORY
configREPO_NAME
configREPO_OWNER
configREVIEW_BARRIER_SAFETY_MARGIN_MS
configREVIEW_LEARNINGS
configREVIEW_LEARNINGS_ENABLED
configREVIEW_LEARNINGS_RAG_ENABLED
configREVIEW_RESOLVE_MAX_ITERATIONS
configRUNNER_PINS_REPO_ROOT
configSCHEDULER_ALLOW_AUTO_MERGE
configSCHEDULER_CONFIG_FILE
configSCHEDULER_ENABLED
configSCHEDULER_SCAN_INTERVAL_MS
configSEMREL_CHANNEL
configSHIP_FORBIDDEN_TARGET_BRANCHES
configSMEE_TARGET
configSMEE_URL
configSTALE_EXECUTION_THRESHOLD_MS
configTEST_GLOBS_REPO_ROOT
configTRIAGE_CONFIDENCE_THRESHOLD
configTRIAGE_ENABLED
configTRIAGE_MAX_TOKENS
configTRIAGE_MODEL
configTRIAGE_TIMEOUT_MS
configTRIAGE_TOOLS_ENABLED
configTRIGGER_PHRASE
configVALKEY_URL
configWORK_DIR
configWS_PORT
Deployment configuration, supplied by whoever hosts the server. Users are not asked for these.
deployDATABASE_URL
deployPORT
deployREDIS_URL
// quality suggestions

Tool annotations

No tools have read-only/destructive annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

18/18 tools missing one or more hints — update_claude_comment (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); query_daemon_capabilities (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_pr_state_check_rollup (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +15 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Tool inputs are validated

14/18 tool handlers declare input schemas (78%)

Declare an inputSchema with zod/joi/yup on every tool definition.

Tool handlers catch errors

11/18 tool handlers wrap calls in try/catch (61%)

Wrap each tool handler body in try/catch and return a structured error response.

Tool test coverage

6/18 tools referenced in tests (33%)

Write tests that reference each tool by name so every tool has at least one test.

Shell command execution

15 child_process calls — runs shell commands

Prefer library functions over shell-outs. If you must shell out, ensure all inputs are properly escaped.

Secrets not logged

1 secret value sent to console.log

Redact or omit secret values from log output.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 7 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Score](https://m8ven.ai/badge/mcp/chrisleekr/github-app)](https://m8ven.ai/mcp/chrisleekr/github-app)
Shows your grade and updates automatically. Prefer no grade? Append ?variant=verified to the badge URL.
commit: c61cee54ffaa73b0c4602e30f934526c5eca5ea5
code hash: 0aaa0afb5c9bebdc85165a37b02c5ce82f5caa2dbca77aac2f2a1d384e5b647c
verified: 6/15/2026, 1:35:12 PM
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client