Generated Tools Reference¶
Complete reference for all tools generated by GitHub to MCP.
Universal Tools¶
These tools are included with every generated MCP server.
get_readme¶
Get the repository README content.
| Property | Value |
|---|---|
| Name | get_readme |
| Source | Universal |
| Always Included | Yes (unless --no-universal) |
Input Schema:
Output:
list_files¶
List files and directories in the repository.
| Property | Value |
|---|---|
| Name | list_files |
| Source | Universal |
| Always Included | Yes (unless --no-universal) |
Input Schema:
{
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "Directory path (default: root)",
"default": ""
},
"recursive": {
"type": "boolean",
"description": "Include subdirectories",
"default": false
},
"maxDepth": {
"type": "integer",
"description": "Maximum depth when recursive",
"default": 3
}
}
}
Output:
{
"files": [
{
"name": "src",
"type": "directory",
"path": "src"
},
{
"name": "README.md",
"type": "file",
"path": "README.md",
"size": 1234
}
]
}
read_file¶
Read the contents of a file.
| Property | Value |
|---|---|
| Name | read_file |
| Source | Universal |
| Always Included | Yes (unless --no-universal) |
Input Schema:
{
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "Path to the file"
},
"encoding": {
"type": "string",
"description": "File encoding",
"default": "utf-8",
"enum": ["utf-8", "base64"]
},
"startLine": {
"type": "integer",
"description": "Start reading from line (1-indexed)"
},
"endLine": {
"type": "integer",
"description": "Stop reading at line (inclusive)"
}
},
"required": ["path"]
}
Output:
{
"content": "export function main() { ... }",
"path": "src/index.ts",
"encoding": "utf-8",
"lineCount": 150
}
search_code¶
Search for patterns in the repository code.
| Property | Value |
|---|---|
| Name | search_code |
| Source | Universal |
| Always Included | Yes (unless --no-universal) |
Input Schema:
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search query"
},
"path": {
"type": "string",
"description": "Limit search to this path"
},
"extension": {
"type": "string",
"description": "Filter by file extension (e.g., 'ts')"
},
"caseSensitive": {
"type": "boolean",
"description": "Case-sensitive search",
"default": false
},
"maxResults": {
"type": "integer",
"description": "Maximum results to return",
"default": 50
}
},
"required": ["query"]
}
Output:
{
"results": [
{
"path": "src/utils.ts",
"line": 42,
"content": "export function parseConfig(input: string) {",
"context": {
"before": ["// Configuration parser", ""],
"after": [" const json = JSON.parse(input);", " return validate(json);"]
}
}
],
"total": 3,
"truncated": false
}
Extracted Tools¶
These tools are specific to each repository.
OpenAPI Tools¶
Generated from OpenAPI/Swagger specifications.
Naming: Uses operationId from spec, or generates {method}_{path}.
Example:
{
"name": "create_customer",
"description": "Create a new customer",
"source": "openapi",
"inputSchema": {
"type": "object",
"properties": {
"email": { "type": "string" },
"name": { "type": "string" },
"metadata": { "type": "object" }
},
"required": ["email"]
}
}
GraphQL Tools¶
Generated from GraphQL schemas.
Naming: query_{name} or mutation_{name}.
Example:
{
"name": "query_user",
"description": "Get user by ID",
"source": "graphql",
"inputSchema": {
"type": "object",
"properties": {
"id": { "type": "string" }
},
"required": ["id"]
}
}
MCP Tools¶
Extracted from existing MCP server repositories.
Naming: Preserves original tool names.
Example:
{
"name": "analyze_sentiment",
"description": "Analyze text sentiment",
"source": "mcp",
"inputSchema": {
"type": "object",
"properties": {
"text": { "type": "string" },
"language": { "type": "string", "default": "en" }
},
"required": ["text"]
}
}
Tool Filtering¶
Include Specific Tools¶
Exclude Tools¶
Skip Universal Tools¶
See Also¶
- Tool Types - Understanding tools
- Custom Tools - Extending tools
- Configuration - All options