gh_list_repos
Pack: github_private · Endpoint: https://gateway.pipeworx.io/github_private/mcp
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/gh_list_repos for the schema, then POST the same URL with its arguments for the data.
List all your repositories including private ones. Returns repo names, URLs, descriptions, language, stars, and last update time.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
visibility | string | no | Filter: all, public, private (default: all) |
sort | string | no | Sort by: created, updated, pushed, full_name |
per_page | number | no | Results per page (max 100) |
Example call
Arguments
{
"visibility": "private",
"sort": "updated",
"per_page": 20
}
curl
curl -X POST https://gateway.pipeworx.io/github_private/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"gh_list_repos","arguments":{"visibility":"private","sort":"updated","per_page":20}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('gh_list_repos', {
"visibility": "private",
"sort": "updated",
"per_page": 20
});
More examples
{
"visibility": "all"
}
Response shape
Always returns: items, count
| Field | Type | Description |
|---|---|---|
items | array | |
count | integer | Number of items returned. |
Full JSON Schema
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Repository ID"
},
"name": {
"type": "string",
"description": "Repository name"
},
"full_name": {
"type": "string",
"description": "Full repository name (owner/repo)"
},
"owner": {
"type": "object",
"properties": {
"login": {
"type": "string",
"description": "Owner login"
},
"id": {
"type": "number",
"description": "Owner ID"
},
"avatar_url": {
"type": "string",
"description": "Owner avatar URL"
},
"url": {
"type": "string",
"description": "Owner API URL"
}
}
},
"private": {
"type": "boolean",
"description": "Whether repository is private"
},
"html_url": {
"type": "string",
"description": "Repository web URL"
},
"description": {
"type": [
"string",
"null"
],
"description": "Repository description"
},
"language": {
"type": [
"string",
"null"
],
"description": "Primary programming language"
},
"stargazers_count": {
"type": "number",
"description": "Number of stars"
},
"forks_count": {
"type": "number",
"description": "Number of forks"
},
"open_issues_count": {
"type": "number",
"description": "Number of open issues"
},
"updated_at": {
"type": "string",
"description": "ISO timestamp of last update"
},
"pushed_at": {
"type": [
"string",
"null"
],
"description": "ISO timestamp of last push"
},
"default_branch": {
"type": "string",
"description": "Default branch name"
}
}
}
},
"count": {
"type": "integer",
"description": "Number of items returned."
}
},
"required": [
"items",
"count"
]
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"github_private": {
"url": "https://gateway.pipeworx.io/github_private/mcp"
}
}
}
See Getting Started for client-specific install steps.