search_repos
Pack: github · Endpoint: https://gateway.pipeworx.io/github/mcp
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/search_repos for the schema, then POST the same URL with its arguments for the data.
Search GitHub repositories by keyword. Returns repo name, description, star count, forks, primary language, and URL. Use when exploring projects or finding code implementations.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
query | string | yes | Search query string (e.g., “react hooks”, “cli tool language:go”) |
sort | string | no | Sort results by: stars, forks, or updated (default: stars) |
per_page | number | no | Number of results to return (default 10, max 30) |
Example call
Arguments
{
"query": "react hooks"
}
curl
curl -X POST https://gateway.pipeworx.io/github/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_repos","arguments":{"query":"react hooks"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('search_repos', {
"query": "react hooks"
});
More examples
{
"query": "cli tool language:go",
"sort": "stars",
"per_page": 20
}
Response shape
Always returns: total_count, incomplete_results, repos
| Field | Type | Description |
|---|---|---|
total_count | number | Total number of matching repositories |
incomplete_results | boolean | Whether the results are incomplete |
repos | array | List of matching repositories |
Full JSON Schema
{
"type": "object",
"properties": {
"total_count": {
"type": "number",
"description": "Total number of matching repositories"
},
"incomplete_results": {
"type": "boolean",
"description": "Whether the results are incomplete"
},
"repos": {
"type": "array",
"description": "List of matching repositories",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Repository name"
},
"full_name": {
"type": "string",
"description": "Full repository name (owner/repo)"
},
"description": {
"type": [
"string",
"null"
],
"description": "Repository description"
},
"stars": {
"type": "number",
"description": "Number of stargazers"
},
"forks": {
"type": "number",
"description": "Number of forks"
},
"language": {
"type": [
"string",
"null"
],
"description": "Primary programming language"
},
"url": {
"type": "string",
"description": "Repository URL"
},
"topics": {
"type": "array",
"description": "Repository topics/tags",
"items": {
"type": "string"
}
},
"updated_at": {
"type": "string",
"description": "Last update timestamp"
},
"open_issues": {
"type": "number",
"description": "Number of open issues"
}
},
"required": [
"name",
"full_name",
"description",
"stars",
"forks",
"language",
"url",
"topics",
"updated_at",
"open_issues"
]
}
}
},
"required": [
"total_count",
"incomplete_results",
"repos"
]
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"github": {
"url": "https://gateway.pipeworx.io/github/mcp"
}
}
}
See Getting Started for client-specific install steps.