github / github/github-mcp-server

Feature Request: Add get_user tool to fetch a user profile by username

未關閉
#1,970 4 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
Go
星號
33k
分支
5k
平均合併
2 天 1 小時
30 天內合併 PR
52

描述

## Problem

There is no tool to look up a specific GitHub user's profile by username. `get_me` only returns the authenticated user. `search_users` uses the Search API which returns a minimal user object (login, id, avatar) without profile details like `name`, `email`, `bio`, `company`, etc.

## Use case

I'm building a skill that adds `Co-authored-by` trailers to git commits. To properly attribute a collaborator, I need their display name and numeric ID from their GitHub profile to construct the trailer:

```
Co-authored-by: Jane Smith <12345+janesmith@users.noreply.github.com>
```

Currently this requires falling back to `gh api users/{username}`, but I want the skill to work in Claude Desktop too where the `gh` CLI may not be available — only MCP tools. A `get_user` tool would close this gap.

### Workarounds and their limits

- **`gh api users/{username}`** — works but requires the `gh` CLI, which isn't available in Claude Desktop
- **WebFetch to `api.github.com/users/{username}`** — works for public GitHub.com users without auth, but doesn't cover enterprise managed users (EMU) or GHES, which require authentication

A proper `get_user` tool using the server's authenticated client would work across all environments including enterprise.

## Proposed solution

A `get_user` tool that accepts a required `username` parameter and calls `GET /users/{username}`. Returns `MinimalUser` with `Details` — the same response shape as `get_me`.

The Go client already supports this: `client.Users.Get(ctx, username)` is the same call `get_me` uses, just with a non-empty username string.

## Implementation notes

Nearly identical to `get_me` in `pkg/github/context_tools.go`:
- Add a `username` input parameter (required string)
- Pass it to `client.Users.Get(ctx, username)` instead of `""`
- Return the same `MinimalUser` + `UserDetails` response
- Toolset: `users`
- Scope: `read:user`
- ReadOnly: `true`

Edited to add - this issue was co-authored by Claude and reviewed by me.

貢獻指南

開啟貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。