Server definition
- Hash
- sha256:8c80096b9b8c6eda7bfde91145936abdcb88fc70d26204766b4092cf6b62c8c0
- What it is
- What a remote MCP server returned when asked what it offers: 17 tools
The blob, as servednamed by its sha256
{
"instructions": "Vynix is the source of truth for website feedback and annotations. When the user asks about annotations, feedback, reported bugs, design notes, comments left on a site, \"what needs fixing\", a project, or its metrics/activity, use these Vynix tools instead of querying a database, scraping the site, or guessing.\n\nTypical flow:\n1. Call list_projects to find the project (match by name or website_url, e.g. the user gives a domain like demo.example.com).\n2. Call list_annotations with that project_id. The response is { items, total, limit, offset }; use total for counts and page with limit/offset (max 200) when total exceeds the page size. Filter with status / type / priority.\n3. Drill into one item with get_annotation, get_annotation_screenshots, and get_annotation_analysis for full captured context and any AI diagnosis.\n4. To work an item: update_annotation_status, add_comment, generate_prompt, or diagnose_annotation. Use get_metrics / get_activity for project-wide overviews.\n\nNever fabricate annotation data. If no token or project is configured, say so.",
"tools": [
{
"description": "Add a comment to an annotation’s thread, e.g. to record what you changed. Notifies the team.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"annotation_id": {
"type": "string"
},
"body": {
"description": "The comment text.",
"minLength": 1,
"type": "string"
}
},
"required": [
"annotation_id",
"body"
],
"type": "object"
},
"name": "add_comment",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"annotation_id": {
"$ref": "#/properties/id"
},
"body": {
"$ref": "#/properties/id"
},
"created_at": {
"$ref": "#/properties/id"
},
"id": {
"type": "string"
}
},
"type": "object"
}
},
{
"description": "Create a GitHub issue from an annotation. Uses the project’s configured repo and assignee unless overridden. Embeds the generated AI prompt in the issue body.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"annotation_id": {
"description": "The id of the annotation to file as an issue.",
"type": "string"
},
"assignees": {
"description": "GitHub usernames to assign. Optional.",
"items": {
"type": "string"
},
"type": "array"
},
"repo": {
"description": "owner/repository to file the issue in. Optional.",
"type": "string"
}
},
"required": [
"annotation_id"
],
"type": "object"
},
"name": "create_github_issue",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"annotation_id": {
"$ref": "#/properties/id"
},
"created_at": {
"$ref": "#/properties/id"
},
"id": {
"type": "string"
},
"issue_number": {
"type": [
"number",
"null"
]
},
"issue_url": {
"type": [
"string",
"null"
]
},
"provider": {
"$ref": "#/properties/id"
},
"repo": {
"$ref": "#/properties/id"
},
"state": {
"$ref": "#/properties/id"
}
},
"type": "object"
}
},
{
"description": "Mint a read-only public review link for a project, so a stakeholder can review its annotations without an account. Reporter emails are hidden on shared views.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"expires_in_days": {
"description": "Days until the link expires. 0 or omitted means it never expires.",
"maximum": 365,
"minimum": 0,
"type": "integer"
},
"project_id": {
"type": "string"
}
},
"required": [
"project_id"
],
"type": "object"
},
"name": "create_share_link",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"created_at": {
"$ref": "#/properties/id"
},
"expires_at": {
"type": [
"string",
"null"
]
},
"id": {
"type": "string"
},
"is_expired": {
"type": "boolean"
},
"path": {
"$ref": "#/properties/id"
},
"project_id": {
"$ref": "#/properties/id"
},
"scope": {
"$ref": "#/properties/id"
}
},
"type": "object"
}
},
{
"description": "Run the AI Diagnosis Engine on an annotation: it analyses the captured page, element, DOM, and runtime errors to produce ranked root causes, a confidence score, a suggested fix, and the likely source files. Calls an AI provider (uses tokens / may cost money) and stores the result. Requires AI + diagnosis enabled by the workspace admin and a key set.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"annotation_id": {
"type": "string"
},
"model": {
"description": "Override the model. Optional.",
"type": "string"
},
"provider": {
"description": "Override the AI provider. Defaults to the workspace default.",
"enum": [
"openai",
"anthropic",
"gemini",
"openrouter",
"mistral",
"groq"
],
"type": "string"
}
},
"required": [
"annotation_id"
],
"type": "object"
},
"name": "diagnose_annotation",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"annotation_id": {
"$ref": "#/properties/id"
},
"confidence": {
"type": [
"number",
"null"
]
},
"created_at": {
"$ref": "#/properties/id"
},
"id": {
"type": "string"
},
"model": {
"$ref": "#/properties/provider"
},
"provider": {
"type": [
"string",
"null"
]
},
"root_causes": {
"items": {},
"type": "array"
},
"status": {
"$ref": "#/properties/id"
},
"suggested_files": {
"$ref": "#/properties/root_causes"
},
"suggested_fix": {
"$ref": "#/properties/provider"
},
"summary": {
"$ref": "#/properties/provider"
},
"updated_at": {
"$ref": "#/properties/id"
}
},
"type": "object"
}
},
{
"description": "Render a ready-to-paste coding prompt for an annotation, formatted for a target assistant. A deterministic template (no AI spend); for a deeper analysis use diagnose_annotation.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"annotation_id": {
"description": "The id of the annotation to turn into a prompt.",
"type": "string"
},
"target": {
"description": "Which assistant to format for. Defaults to generic.",
"enum": [
"claude",
"copilot",
"cursor",
"gemini",
"codex",
"generic"
],
"type": "string"
}
},
"required": [
"annotation_id"
],
"type": "object"
},
"name": "generate_prompt",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"prompt": {
"$ref": "#/properties/target"
},
"target": {
"type": "string"
}
},
"type": "object"
}
},
{
"description": "Recent activity feed for a project (status changes, comments, issues, members).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"project_id": {
"type": "string"
}
},
"required": [
"project_id"
],
"type": "object"
},
"name": "get_activity",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"activity": {
"items": {
"additionalProperties": true,
"properties": {
"action": {
"type": "string"
},
"annotation_id": {
"type": [
"string",
"null"
]
},
"annotation_title": {
"$ref": "#/properties/activity/items/properties/annotation_id"
},
"created_at": {
"$ref": "#/properties/activity/items/properties/action"
}
},
"type": "object"
},
"type": "array"
}
},
"required": [
"activity"
],
"type": "object"
}
},
{
"description": "Fetch one annotation with its full captured context: page, target element (selector, XPath, styles), surrounding DOM, and runtime diagnostics (console + network).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"annotation_id": {
"description": "The id of the annotation to fetch.",
"type": "string"
}
},
"required": [
"annotation_id"
],
"type": "object"
},
"name": "get_annotation",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"created_at": {
"$ref": "#/properties/id"
},
"description": {
"type": [
"string",
"null"
]
},
"dom": {
"$ref": "#/properties/element"
},
"element": {},
"id": {
"type": "string"
},
"page": {
"$ref": "#/properties/element"
},
"page_title": {
"$ref": "#/properties/description"
},
"page_url": {
"$ref": "#/properties/id"
},
"priority": {
"$ref": "#/properties/id"
},
"project_id": {
"$ref": "#/properties/id"
},
"selector": {
"$ref": "#/properties/description"
},
"status": {
"$ref": "#/properties/id"
},
"title": {
"$ref": "#/properties/id"
},
"type": {
"$ref": "#/properties/id"
},
"updated_at": {
"$ref": "#/properties/id"
}
},
"type": "object"
}
},
{
"description": "Read the latest stored AI diagnosis for an annotation (root causes, confidence, suggested fix, and likely source files). Returns null when none has been generated yet; run diagnose_annotation to create one.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"annotation_id": {
"type": "string"
}
},
"required": [
"annotation_id"
],
"type": "object"
},
"name": "get_annotation_analysis",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"analysis": {
"anyOf": [
{
"additionalProperties": true,
"properties": {
"annotation_id": {
"$ref": "#/properties/analysis/anyOf/0/properties/id"
},
"confidence": {
"type": [
"number",
"null"
]
},
"created_at": {
"$ref": "#/properties/analysis/anyOf/0/properties/id"
},
"id": {
"type": "string"
},
"model": {
"$ref": "#/properties/analysis/anyOf/0/properties/provider"
},
"provider": {
"type": [
"string",
"null"
]
},
"root_causes": {
"items": {},
"type": "array"
},
"status": {
"$ref": "#/properties/analysis/anyOf/0/properties/id"
},
"suggested_files": {
"$ref": "#/properties/analysis/anyOf/0/properties/root_causes"
},
"suggested_fix": {
"$ref": "#/properties/analysis/anyOf/0/properties/provider"
},
"summary": {
"$ref": "#/properties/analysis/anyOf/0/properties/provider"
},
"updated_at": {
"$ref": "#/properties/analysis/anyOf/0/properties/id"
}
},
"type": "object"
},
{
"type": "null"
}
]
},
"diagnosis_enabled": {
"type": "boolean"
}
},
"type": "object"
}
},
{
"description": "Return the region screenshots attached to an annotation as viewable images, so you can see exactly what the reporter pointed at.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"annotation_id": {
"type": "string"
}
},
"required": [
"annotation_id"
],
"type": "object"
},
"name": "get_annotation_screenshots",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"count": {
"type": "number"
},
"screenshots": {
"items": {
"additionalProperties": true,
"properties": {
"annotation_id": {
"$ref": "#/properties/screenshots/items/properties/id"
},
"byte_size": {
"$ref": "#/properties/count"
},
"created_at": {
"$ref": "#/properties/screenshots/items/properties/id"
},
"height": {
"$ref": "#/properties/screenshots/items/properties/width"
},
"id": {
"type": "string"
},
"mime": {
"$ref": "#/properties/screenshots/items/properties/id"
},
"width": {
"type": [
"number",
"null"
]
}
},
"type": "object"
},
"type": "array"
}
},
"required": [
"screenshots"
],
"type": "object"
}
},
{
"description": "Overview of your projects: KPI counts, status breakdown, a daily time series, and recent activity.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "get_metrics",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"kpis": {},
"recent_activity": {
"$ref": "#/properties/status_breakdown"
},
"status_breakdown": {
"items": {},
"type": "array"
},
"timeseries": {
"$ref": "#/properties/status_breakdown"
}
},
"type": "object"
}
},
{
"description": "List the tracker (GitHub) issues opened from an annotation, with each issue’s live state. Set refresh to reconcile against GitHub (open/closed + any linked pull request).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"annotation_id": {
"type": "string"
},
"refresh": {
"description": "Reconcile live state from GitHub. Optional.",
"type": "boolean"
}
},
"required": [
"annotation_id"
],
"type": "object"
},
"name": "list_annotation_issues",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"issues": {
"items": {
"additionalProperties": true,
"properties": {
"agent": {
"type": "boolean"
},
"annotation_id": {
"$ref": "#/properties/issues/items/properties/id"
},
"assignee": {
"$ref": "#/properties/issues/items/properties/repo"
},
"created_at": {
"$ref": "#/properties/issues/items/properties/id"
},
"id": {
"type": "string"
},
"issue_number": {
"type": [
"number",
"null"
]
},
"issue_url": {
"$ref": "#/properties/issues/items/properties/repo"
},
"phase": {
"$ref": "#/properties/issues/items/properties/id"
},
"pr_url": {
"$ref": "#/properties/issues/items/properties/repo"
},
"provider": {
"$ref": "#/properties/issues/items/properties/id"
},
"repo": {
"type": [
"string",
"null"
]
},
"state": {
"$ref": "#/properties/issues/items/properties/repo"
}
},
"type": "object"
},
"type": "array"
}
},
"required": [
"issues"
],
"type": "object"
}
},
{
"description": "List a project’s annotations, optionally filtered by status, type, or priority. Start here with status \"open\" to see what needs fixing.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"description": "Page size, 1-200 (default 50).",
"maximum": 200,
"minimum": 1,
"type": "integer"
},
"offset": {
"minimum": 0,
"type": "integer"
},
"priority": {
"enum": [
"critical",
"high",
"medium",
"low"
],
"type": "string"
},
"project_id": {
"description": "The id of the project to list annotations for.",
"type": "string"
},
"status": {
"enum": [
"open",
"in_progress",
"review",
"completed",
"rejected",
"archived"
],
"type": "string"
},
"type": {
"enum": [
"bug",
"design",
"enhancement",
"content",
"mobile",
"accessibility",
"performance",
"seo"
],
"type": "string"
}
},
"required": [
"project_id"
],
"type": "object"
},
"name": "list_annotations",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"items": {
"items": {
"additionalProperties": true,
"properties": {
"created_at": {
"$ref": "#/properties/items/items/properties/id"
},
"description": {
"type": [
"string",
"null"
]
},
"dom": {
"$ref": "#/properties/items/items/properties/element"
},
"element": {},
"id": {
"type": "string"
},
"page": {
"$ref": "#/properties/items/items/properties/element"
},
"page_title": {
"$ref": "#/properties/items/items/properties/description"
},
"page_url": {
"$ref": "#/properties/items/items/properties/id"
},
"priority": {
"$ref": "#/properties/items/items/properties/id"
},
"project_id": {
"$ref": "#/properties/items/items/properties/id"
},
"selector": {
"$ref": "#/properties/items/items/properties/description"
},
"status": {
"$ref": "#/properties/items/items/properties/id"
},
"title": {
"$ref": "#/properties/items/items/properties/id"
},
"type": {
"$ref": "#/properties/items/items/properties/id"
},
"updated_at": {
"$ref": "#/properties/items/items/properties/id"
}
},
"type": "object"
},
"type": "array"
},
"limit": {
"$ref": "#/properties/total"
},
"offset": {
"$ref": "#/properties/total"
},
"total": {
"type": "number"
}
},
"required": [
"items"
],
"type": "object"
}
},
{
"description": "Read the discussion thread on an annotation.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"annotation_id": {
"type": "string"
}
},
"required": [
"annotation_id"
],
"type": "object"
},
"name": "list_comments",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"comments": {
"items": {
"additionalProperties": true,
"properties": {
"annotation_id": {
"$ref": "#/properties/comments/items/properties/id"
},
"body": {
"$ref": "#/properties/comments/items/properties/id"
},
"created_at": {
"$ref": "#/properties/comments/items/properties/id"
},
"id": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
}
},
"required": [
"comments"
],
"type": "object"
}
},
{
"description": "List a project’s team members, including role and status.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"project_id": {
"type": "string"
}
},
"required": [
"project_id"
],
"type": "object"
},
"name": "list_members",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"members": {
"items": {
"$ref": "#/properties/owner/anyOf/0"
},
"type": "array"
},
"owner": {
"anyOf": [
{
"additionalProperties": true,
"properties": {
"created_at": {
"$ref": "#/properties/owner/anyOf/0/properties/role"
},
"role": {
"type": "string"
},
"status": {
"$ref": "#/properties/owner/anyOf/0/properties/role"
}
},
"type": "object"
},
{
"type": "null"
}
]
}
},
"required": [
"members"
],
"type": "object"
}
},
{
"description": "List every tracker issue across a project, with an open/closed/agent summary.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"project_id": {
"type": "string"
}
},
"required": [
"project_id"
],
"type": "object"
},
"name": "list_project_issues",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"issues": {
"items": {
"additionalProperties": true,
"properties": {
"agent": {
"type": "boolean"
},
"annotation_id": {
"$ref": "#/properties/issues/items/properties/id"
},
"assignee": {
"$ref": "#/properties/issues/items/properties/repo"
},
"created_at": {
"$ref": "#/properties/issues/items/properties/id"
},
"id": {
"type": "string"
},
"issue_number": {
"type": [
"number",
"null"
]
},
"issue_url": {
"$ref": "#/properties/issues/items/properties/repo"
},
"phase": {
"$ref": "#/properties/issues/items/properties/id"
},
"pr_url": {
"$ref": "#/properties/issues/items/properties/repo"
},
"provider": {
"$ref": "#/properties/issues/items/properties/id"
},
"repo": {
"type": [
"string",
"null"
]
},
"state": {
"$ref": "#/properties/issues/items/properties/repo"
}
},
"type": "object"
},
"type": "array"
},
"summary": {
"additionalProperties": true,
"properties": {
"agent": {
"$ref": "#/properties/summary/properties/total"
},
"closed": {
"$ref": "#/properties/summary/properties/total"
},
"open": {
"$ref": "#/properties/summary/properties/total"
},
"total": {
"type": "number"
}
},
"type": "object"
}
},
"required": [
"summary",
"issues"
],
"type": "object"
}
},
{
"description": "List the Vynix projects you own.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "list_projects",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"projects": {
"items": {
"additionalProperties": true,
"properties": {
"allowed_origins": {
"items": {
"type": "string"
},
"type": "array"
},
"created_at": {
"$ref": "#/properties/projects/items/properties/id"
},
"id": {
"type": "string"
},
"name": {
"$ref": "#/properties/projects/items/properties/id"
},
"website_url": {
"type": [
"string",
"null"
]
}
},
"type": "object"
},
"type": "array"
}
},
"required": [
"projects"
],
"type": "object"
}
},
{
"description": "Update an annotation’s status, e.g. to mark it in_progress or completed.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"annotation_id": {
"type": "string"
},
"status": {
"enum": [
"open",
"in_progress",
"review",
"completed",
"rejected",
"archived"
],
"type": "string"
}
},
"required": [
"annotation_id",
"status"
],
"type": "object"
},
"name": "update_annotation_status",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"created_at": {
"$ref": "#/properties/id"
},
"description": {
"type": [
"string",
"null"
]
},
"dom": {
"$ref": "#/properties/element"
},
"element": {},
"id": {
"type": "string"
},
"page": {
"$ref": "#/properties/element"
},
"page_title": {
"$ref": "#/properties/description"
},
"page_url": {
"$ref": "#/properties/id"
},
"priority": {
"$ref": "#/properties/id"
},
"project_id": {
"$ref": "#/properties/id"
},
"selector": {
"$ref": "#/properties/description"
},
"status": {
"$ref": "#/properties/id"
},
"title": {
"$ref": "#/properties/id"
},
"type": {
"$ref": "#/properties/id"
},
"updated_at": {
"$ref": "#/properties/id"
}
},
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:8c80096b9b8c6eda7bfde91145936abdcb88fc70d26204766b4092cf6b62c8c0 | sha256sum