search_projects
Pack: gitlab-public · Endpoint: https://gateway.pipeworx.io/gitlab-public/mcp
No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/search_projects for the schema, then POST the same URL with its arguments for the data.
Search public GitLab projects by keyword, sorted by popularity. Returns project ID, name, description, star count, fork count, open issues, and web URL.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
query | string | yes | Search query string |
limit | number | no | Number of results to return (default 10, max 100) |
Example call
Arguments
{
"query": "machine learning"
}
curl
curl -X POST https://gateway.pipeworx.io/gitlab-public/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_projects","arguments":{"query":"machine learning"}}}'
TypeScript (@pipeworx/sdk)
import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();
const result = await pipeworx.call('search_projects', {
"query": "machine learning"
});
More examples
{
"query": "kubernetes",
"limit": 20
}
Response shape
Always returns: projects
| Field | Type | Description |
|---|---|---|
projects | array | Array of public GitLab projects matching the search query |
Full JSON Schema
{
"type": "object",
"properties": {
"projects": {
"type": "array",
"description": "Array of public GitLab projects matching the search query",
"items": {
"type": "object",
"properties": {
"id": {
"type": "number",
"description": "Project numeric ID"
},
"name": {
"type": "string",
"description": "Project name"
},
"full_path": {
"type": "string",
"description": "Project path with namespace (e.g., gitlab-org/gitlab)"
},
"description": {
"type": [
"string",
"null"
],
"description": "Project description"
},
"stars": {
"type": "number",
"description": "Star count"
},
"forks": {
"type": "number",
"description": "Fork count"
},
"open_issues": {
"type": "number",
"description": "Open issues count"
},
"url": {
"type": "string",
"description": "Project web URL"
},
"default_branch": {
"type": "string",
"description": "Default branch name"
},
"visibility": {
"type": "string",
"description": "Project visibility (public, private, etc.)"
},
"last_activity": {
"type": "string",
"description": "ISO timestamp of last activity"
}
},
"required": [
"id",
"name",
"full_path",
"description",
"stars",
"forks",
"open_issues",
"url",
"default_branch",
"visibility",
"last_activity"
]
}
}
},
"required": [
"projects"
]
}
Connect
Add this to your MCP client config, or use one-click install buttons:
{
"mcpServers": {
"gitlab-public": {
"url": "https://gateway.pipeworx.io/gitlab-public/mcp"
}
}
}
See Getting Started for client-specific install steps.