MCPLow riskUnclaimed
Ticket AI
Measures tickets against the ones your team already shipped: sections, length, labels, duplicates.
syrian963syrian963/ticket-ai-mcp
server.json
{
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"name": "io.github.syrian963/ticket-ai-mcp",
"description": "Measures tickets against the ones your team already shipped: sections, length, labels, duplicates.",
"title": "Ticket AI",
"repository": {
"url": "https://github.com/syrian963/Ticket-AI-MCP",
"source": "github"
},
"version": "0.1.1",
"websiteUrl": "https://github.com/syrian963/Ticket-AI-MCP",
"packages": [
{
"registryType": "pypi",
"registryBaseUrl": "https://pypi.org",
"identifier": "ticket-ai-mcp",
"version": "0.1.1",
"runtimeHint": "uvx",
"transport": {
"type": "stdio"
},
"environmentVariables": [
{
"description": "Which tracker to read: gitlab, jira or github.",
"isRequired": true,
"name": "TICKET_AI_TRACKER"
},
{
"description": "The project to measure. A GitLab path like acme/shop or its numeric id, a Jira project key like PROJ, or a GitHub owner/repo.",
"isRequired": true,
"name": "TICKET_AI_PROJECT"
},
{
"description": "Base URL of the GitLab instance, for example https://gitlab.example.com. Required when the tracker is gitlab.",
"name": "TICKET_AI_GITLAB_URL"
},
{
"description": "GitLab personal access token. The read_api scope is enough; nothing here writes.",
"isSecret": true,
"name": "TICKET_AI_GITLAB_TOKEN"
},
{
"description": "Base URL of the Jira instance. Cloud or self-hosted Server and Data Center; which one is detected from the instance.",
"name": "TICKET_AI_JIRA_URL"
},
{
"description": "Account email, for Jira Cloud's basic auth. Leave unset for a public board or for a Server personal access token.",
"name": "TICKET_AI_JIRA_EMAIL"
},
{
"description": "Jira API token from id.atlassian.com, or a Server personal access token on its own. Leave unset to read a public instance anonymously.",
"isSecret": true,
"name": "TICKET_AI_JIRA_TOKEN"
},
{
"description": "GitHub token with read access to the repository's issues.",
"isSecret": true,
"name": "TICKET_AI_GITHUB_TOKEN"
},
{
"description": "Checkout to search when gathering context for a subject. Defaults to the working directory, which on a wrong guess produces confident nonsense - the report names the directory it searched.",
"name": "TICKET_AI_REPO"
},
{
"description": "Force the language tickets should be written in, overriding what was measured in the corpus. Leave unset unless the board is mid-switch: a measurement beats a setting.",
"name": "TICKET_AI_TICKET_LANGUAGE"
},
{
"description": "Where the learned profile is kept between runs. Defaults to .ticket-ai/ under the working directory.",
"name": "TICKET_AI_CACHE_DIR"
}
]
}
]
}Permissions
DeclaredDetected
Runs code—
pythonInstalls—
pypi:ticket-ai-mcp@0.1.1Runs install scripts—None
NetworkNoneNone
Needs credentials
TICKET_AI_GITHUB_TOKENTICKET_AI_GITLAB_TOKENTICKET_AI_JIRA_TOKENTICKET_AI_GITHUB_TOKENTICKET_AI_GITLAB_TOKENTICKET_AI_JIRA_TOKENOutside the workspace—None
Agent tools—None
Checks
Low risk · Nothing worth a warning was found.
Not reviewed by a person · Checked by rules; the model review is not switched on yet.
Versions
- #10.1.1latestOct 7, 2026
Ticket AIOpen in Codeg