Serveur MCP

Vynix

in.vynix/vynix-mcp
Entreprise et opérations Outils développeur Public et accessible MCP 2025-11-25

Ce que fait ce MCP

Gives coding agents access to visual bug annotations, screenshots, runtime diagnostics, AI diagnoses, comments, project metrics, and GitHub issue creation.

add_comment
Add comment
Add a comment to an annotation’s thread, e.g. to record what you changed. Notifies the team.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['annotation_id', 'body'], 'properties': {'body': {'type': 'string', 'minLength': 1, 'description': 'The comment text.'}, 'annotation_id': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'id': {'type': 'string'}, 'body': {'$ref': '#/properties/id'}, 'created_at': {'$ref': '#/properties/id'}, 'annotation_id': {'$ref': '#/properties/id'}}, 'additionalProperties': True}
create_github_issue
Create GitHub issue
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.
Accès externe
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['annotation_id'], 'properties': {'repo': {'type': 'string', 'description': 'owner/repository to file the issue in. Optional.'}, 'assignees': {'type': 'array', 'items': {'type': 'string'}, 'description': 'GitHub usernames to assign. Optional.'}, 'annotation_id': {'type': 'string', 'description': 'The id of the annotation to file as an issue.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'id': {'type': 'string'}, 'repo': {'$ref': '#/properties/id'}, 'state': {'$ref': '#/properties/id'}, 'provider': {'$ref': '#/properties/id'}, 'issue_url': {'type': ['string', 'null']}, 'created_at': {'$ref': '#/properties/id'}, 'issue_number': {'type': ['number', 'null']}, 'annotation_id': {'$ref': '#/properties/id'}}, 'additionalProperties': True}
create_share_link
Create share link
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.
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string'}, 'expires_in_days': {'type': 'integer', 'maximum': 365, 'minimum': 0, 'description': 'Days until the link expires. 0 or omitted means it never expires.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'id': {'type': 'string'}, 'path': {'$ref': '#/properties/id'}, 'scope': {'$ref': '#/properties/id'}, 'created_at': {'$ref': '#/properties/id'}, 'expires_at': {'type': ['string', 'null']}, 'is_expired': {'type': 'boolean'}, 'project_id': {'$ref': '#/properties/id'}}, 'additionalProperties': True}
diagnose_annotation
Run AI diagnosis
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.
Accès externe
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['annotation_id'], 'properties': {'model': {'type': 'string', 'description': 'Override the model. Optional.'}, 'provider': {'enum': ['openai', 'anthropic', 'gemini', 'openrouter', 'mistral', 'groq'], 'type': 'string', 'description': 'Override the AI provider. Defaults to the workspace default.'}, 'annotation_id': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'id': {'type': 'string'}, 'model': {'$ref': '#/properties/provider'}, 'status': {'$ref': '#/properties/id'}, 'summary': {'$ref': '#/properties/provider'}, 'provider': {'type': ['string', 'null']}, 'confidence': {'type': ['number', 'null']}, 'created_at': {'$ref': '#/properties/id'}, 'updated_at': {'$ref': '#/properties/id'}, 'root_causes': {'type': 'array', 'items': {}}, 'annotation_id': {'$ref': '#/properties/id'}, 'suggested_fix': {'$ref': '#/properties/provider'}, 'suggested_files': {'$ref': '#/properties/root_causes'}}, 'additionalProperties': True}
generate_prompt
Generate coding prompt
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.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['annotation_id'], 'properties': {'target': {'enum': ['claude', 'copilot', 'cursor', 'gemini', 'codex', 'generic'], 'type': 'string', 'description': 'Which assistant to format for. Defaults to generic.'}, 'annotation_id': {'type': 'string', 'description': 'The id of the annotation to turn into a prompt.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'prompt': {'$ref': '#/properties/target'}, 'target': {'type': 'string'}}, 'additionalProperties': True}
get_activity
Get activity
Recent activity feed for a project (status changes, comments, issues, members).
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['activity'], 'properties': {'activity': {'type': 'array', 'items': {'type': 'object', 'properties': {'action': {'type': 'string'}, 'created_at': {'$ref': '#/properties/activity/items/properties/action'}, 'annotation_id': {'type': ['string', 'null']}, 'annotation_title': {'$ref': '#/properties/activity/items/properties/annotation_id'}}, 'additionalProperties': True}}}, 'additionalProperties': True}
get_annotation
Get annotation
Fetch one annotation with its full captured context: page, target element (selector, XPath, styles), surrounding DOM, and runtime diagnostics (console + network).
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['annotation_id'], 'properties': {'annotation_id': {'type': 'string', 'description': 'The id of the annotation to fetch.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'id': {'type': 'string'}, 'dom': {'$ref': '#/properties/element'}, 'page': {'$ref': '#/properties/element'}, 'type': {'$ref': '#/properties/id'}, 'title': {'$ref': '#/properties/id'}, 'status': {'$ref': '#/properties/id'}, 'element': {}, 'page_url': {'$ref': '#/properties/id'}, 'priority': {'$ref': '#/properties/id'}, 'selector': {'$ref': '#/properties/description'}, 'created_at': {'$ref': '#/properties/id'}, 'page_title': {'$ref': '#/properties/description'}, 'project_id': {'$ref': '#/properties/id'}, 'updated_at': {'$ref': '#/properties/id'}, 'description': {'type': ['string', 'null']}}, 'additionalProperties': True}
get_annotation_analysis
Get AI diagnosis
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.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['annotation_id'], 'properties': {'annotation_id': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'analysis': {'anyOf': [{'type': 'object', 'properties': {'id': {'type': 'string'}, 'model': {'$ref': '#/properties/analysis/anyOf/0/properties/provider'}, 'status': {'$ref': '#/properties/analysis/anyOf/0/properties/id'}, 'summary': {'$ref': '#/properties/analysis/anyOf/0/properties/provider'}, 'provider': {'type': ['string', 'null']}, 'confidence': {'type': ['number', 'null']}, 'created_at': {'$ref': '#/properties/analysis/anyOf/0/properties/id'}, 'updated_at': {'$ref': '#/properties/analysis/anyOf/0/properties/id'}, 'root_causes': {'type': 'array', 'items': {}}, 'annotation_id': {'$ref': '#/properties/analysis/anyOf/0/properties/id'}, 'suggested_fix': {'$ref': '#/properties/analysis/anyOf/0/properties/provider'}, 'suggested_files': {'$ref': '#/properties/analysis/anyOf/0/properties/root_causes'}}, 'additionalProperties': True}, {'type': 'null'}]}, 'diagnosis_enabled': {'type': 'boolean'}}, 'additionalProperties': True}
get_annotation_screenshots
Get screenshots
Return the region screenshots attached to an annotation as viewable images, so you can see exactly what the reporter pointed at.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['annotation_id'], 'properties': {'annotation_id': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['screenshots'], 'properties': {'count': {'type': 'number'}, 'screenshots': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'mime': {'$ref': '#/properties/screenshots/items/properties/id'}, 'width': {'type': ['number', 'null']}, 'height': {'$ref': '#/properties/screenshots/items/properties/width'}, 'byte_size': {'$ref': '#/properties/count'}, 'created_at': {'$ref': '#/properties/screenshots/items/properties/id'}, 'annotation_id': {'$ref': '#/properties/screenshots/items/properties/id'}}, 'additionalProperties': True}}}, 'additionalProperties': True}
get_metrics
Get metrics
Overview of your projects: KPI counts, status breakdown, a daily time series, and recent activity.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'kpis': {}, 'timeseries': {'$ref': '#/properties/status_breakdown'}, 'recent_activity': {'$ref': '#/properties/status_breakdown'}, 'status_breakdown': {'type': 'array', 'items': {}}}, 'additionalProperties': True}
list_annotation_issues
List annotation issues
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).
Lecture seule Accès externe
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['annotation_id'], 'properties': {'refresh': {'type': 'boolean', 'description': 'Reconcile live state from GitHub. Optional.'}, 'annotation_id': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['issues'], 'properties': {'issues': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'repo': {'type': ['string', 'null']}, 'agent': {'type': 'boolean'}, 'phase': {'$ref': '#/properties/issues/items/properties/id'}, 'state': {'$ref': '#/properties/issues/items/properties/repo'}, 'pr_url': {'$ref': '#/properties/issues/items/properties/repo'}, 'assignee': {'$ref': '#/properties/issues/items/properties/repo'}, 'provider': {'$ref': '#/properties/issues/items/properties/id'}, 'issue_url': {'$ref': '#/properties/issues/items/properties/repo'}, 'created_at': {'$ref': '#/properties/issues/items/properties/id'}, 'issue_number': {'type': ['number', 'null']}, 'annotation_id': {'$ref': '#/properties/issues/items/properties/id'}}, 'additionalProperties': True}}}, 'additionalProperties': True}
list_annotations
List annotations
List a project’s annotations, optionally filtered by status, type, or priority. Start here with status "open" to see what needs fixing.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['project_id'], 'properties': {'type': {'enum': ['bug', 'design', 'enhancement', 'content', 'mobile', 'accessibility', 'performance', 'seo'], 'type': 'string'}, 'limit': {'type': 'integer', 'maximum': 200, 'minimum': 1, 'description': 'Page size, 1-200 (default 50).'}, 'offset': {'type': 'integer', 'minimum': 0}, 'status': {'enum': ['open', 'in_progress', 'review', 'completed', 'rejected', 'archived'], 'type': 'string'}, 'priority': {'enum': ['critical', 'high', 'medium', 'low'], 'type': 'string'}, 'project_id': {'type': 'string', 'description': 'The id of the project to list annotations for.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['items'], 'properties': {'items': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'dom': {'$ref': '#/properties/items/items/properties/element'}, 'page': {'$ref': '#/properties/items/items/properties/element'}, 'type': {'$ref': '#/properties/items/items/properties/id'}, 'title': {'$ref': '#/properties/items/items/properties/id'}, 'status': {'$ref': '#/properties/items/items/properties/id'}, 'element': {}, 'page_url': {'$ref': '#/properties/items/items/properties/id'}, 'priority': {'$ref': '#/properties/items/items/properties/id'}, 'selector': {'$ref': '#/properties/items/items/properties/description'}, 'created_at': {'$ref': '#/properties/items/items/properties/id'}, 'page_title': {'$ref': '#/properties/items/items/properties/description'}, 'project_id': {'$ref': '#/properties/items/items/properties/id'}, 'updated_at': {'$ref': '#/properties/items/items/properties/id'}, 'description': {'type': ['string', 'null']}}, 'additionalProperties': True}}, 'limit': {'$ref': '#/properties/total'}, 'total': {'type': 'number'}, 'offset': {'$ref': '#/properties/total'}}, 'additionalProperties': True}
list_comments
List comments
Read the discussion thread on an annotation.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['annotation_id'], 'properties': {'annotation_id': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['comments'], 'properties': {'comments': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'body': {'$ref': '#/properties/comments/items/properties/id'}, 'created_at': {'$ref': '#/properties/comments/items/properties/id'}, 'annotation_id': {'$ref': '#/properties/comments/items/properties/id'}}, 'additionalProperties': True}}}, 'additionalProperties': True}
list_members
List members
List a project’s team members, including role and status.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['members'], 'properties': {'owner': {'anyOf': [{'type': 'object', 'properties': {'role': {'type': 'string'}, 'status': {'$ref': '#/properties/owner/anyOf/0/properties/role'}, 'created_at': {'$ref': '#/properties/owner/anyOf/0/properties/role'}}, 'additionalProperties': True}, {'type': 'null'}]}, 'members': {'type': 'array', 'items': {'$ref': '#/properties/owner/anyOf/0'}}}, 'additionalProperties': True}
list_project_issues
List project issues
List every tracker issue across a project, with an open/closed/agent summary.
Lecture seule
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['project_id'], 'properties': {'project_id': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['summary', 'issues'], 'properties': {'issues': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'repo': {'type': ['string', 'null']}, 'agent': {'type': 'boolean'}, 'phase': {'$ref': '#/properties/issues/items/properties/id'}, 'state': {'$ref': '#/properties/issues/items/properties/repo'}, 'pr_url': {'$ref': '#/properties/issues/items/properties/repo'}, 'assignee': {'$ref': '#/properties/issues/items/properties/repo'}, 'provider': {'$ref': '#/properties/issues/items/properties/id'}, 'issue_url': {'$ref': '#/properties/issues/items/properties/repo'}, 'created_at': {'$ref': '#/properties/issues/items/properties/id'}, 'issue_number': {'type': ['number', 'null']}, 'annotation_id': {'$ref': '#/properties/issues/items/properties/id'}}, 'additionalProperties': True}}, 'summary': {'type': 'object', 'properties': {'open': {'$ref': '#/properties/summary/properties/total'}, 'agent': {'$ref': '#/properties/summary/properties/total'}, 'total': {'type': 'number'}, 'closed': {'$ref': '#/properties/summary/properties/total'}}, 'additionalProperties': True}}, 'additionalProperties': True}
list_projects
List projects
List the Vynix projects you own.
Lecture seule
Schéma d’entrée
{'type': 'object', 'properties': {}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['projects'], 'properties': {'projects': {'type': 'array', 'items': {'type': 'object', 'properties': {'id': {'type': 'string'}, 'name': {'$ref': '#/properties/projects/items/properties/id'}, 'created_at': {'$ref': '#/properties/projects/items/properties/id'}, 'website_url': {'type': ['string', 'null']}, 'allowed_origins': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}}}, 'additionalProperties': True}
update_annotation_status
Update status
Update an annotation’s status, e.g. to mark it in_progress or completed.
Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['annotation_id', 'status'], 'properties': {'status': {'enum': ['open', 'in_progress', 'review', 'completed', 'rejected', 'archived'], 'type': 'string'}, 'annotation_id': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'id': {'type': 'string'}, 'dom': {'$ref': '#/properties/element'}, 'page': {'$ref': '#/properties/element'}, 'type': {'$ref': '#/properties/id'}, 'title': {'$ref': '#/properties/id'}, 'status': {'$ref': '#/properties/id'}, 'element': {}, 'page_url': {'$ref': '#/properties/id'}, 'priority': {'$ref': '#/properties/id'}, 'selector': {'$ref': '#/properties/description'}, 'created_at': {'$ref': '#/properties/id'}, 'page_title': {'$ref': '#/properties/description'}, 'project_id': {'$ref': '#/properties/id'}, 'updated_at': {'$ref': '#/properties/id'}, 'description': {'type': ['string', 'null']}}, 'additionalProperties': True}
Ajouté
create_share_link
17 September 2026 12:39
Ajouté
create_github_issue
17 September 2026 12:39
Ajouté
diagnose_annotation
17 September 2026 12:39
Ajouté
add_comment
17 September 2026 12:39
Ajouté
update_annotation_status
17 September 2026 12:39
Ajouté
get_activity
17 September 2026 12:39
Ajouté
list_members
17 September 2026 12:39
Ajouté
get_metrics
17 September 2026 12:39
Ajouté
generate_prompt
17 September 2026 12:39
Ajouté
list_project_issues
17 September 2026 12:39
Ajouté
list_annotation_issues
17 September 2026 12:39
Ajouté
get_annotation_screenshots
17 September 2026 12:39
Ajouté
get_annotation_analysis
17 September 2026 12:39
Ajouté
list_comments
17 September 2026 12:39
Ajouté
get_annotation
17 September 2026 12:39
Ajouté
list_annotations
17 September 2026 12:39
Ajouté
list_projects
17 September 2026 12:39