Vublox Agent Tools
OfficialClick on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Vublox Agent ToolsWhat football matches are live right now?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Vublox Agent Tools
Let AI agents discover live football matches, players, and fan clips on Vublox.
An MCP (Model Context Protocol) server that lets AI agents find football matches and players on Vublox — which matches are live or recent, what the score is, player profiles, and links to fan-shot video clips. Each result links to the match or profile page on Vublox.
No API key required — just install and use.
Quick Start
1. Install & Configure
Claude Desktop:
// claude_desktop_config.json
{
"mcpServers": {
"vublox-sports": {
"command": "npx",
"args": ["@vublox/agent-tools"]
}
}
}VS Code Copilot:
// .vscode/mcp.json
{
"servers": {
"vublox-sports": {
"type": "stdio",
"command": "npx",
"args": ["@vublox/agent-tools"]
}
}
}2. Ask Your Agent
Try these in your agent:
"What football matches are live right now?"
"How did Arsenal do today?"
"Show me today's Premier League scores"
"Who is Kylian Mbappé?"
"Tell me about the Barcelona vs Real Madrid match"
Related MCP server: mcp-thesportsdb
Available Tools
Tool | Description |
| Search matches by team, league, or keyword |
| Search football players by name — returns profile links |
| All currently live football matches |
| Match info for a specific match |
| Recent match scores across leagues (last 48h) |
| Recently finished matches (last 48h) |
Local Development
npm install
npm run devEnvironment Variables
Variable | Required | Description |
| No | Override API base URL (default: production) |
License
MIT — Vublox
Available Tools
5 toolsget_live_matchesA
Get all currently live football (soccer) matches with scores via Vublox. Each result includes links to the match page and fan clips on Vublox.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, but the description discloses that results include scores and links to match page and fan clips. It lacks details on update frequency, latency, or authorization, but for a simple read tool, this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose, and contains no unnecessary words. It efficiently conveys what the tool does.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with no parameters and no output schema, the description sufficiently explains the returned data (scores, links) and fits well among sibling tools. No additional information is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters, the schema coverage is 100% and the description adds no parameter information, which is appropriate. Baseline score of 4 for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'currently live football (soccer) matches with scores', and distinguishes itself from siblings like 'get_match_summary' (specific match) and 'get_recent_matches' (not live).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving all live matches but does not explicitly state when to use or not use it relative to alternatives, leaving the agent to infer from sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_match_summaryA
Get basic match info for a specific football match by Vublox event ID. Includes links to the match page and fan clips on Vublox.
| Name | Required | Description | Default |
|---|---|---|---|
| event_id | Yes | The Vublox event ID (UUID) for the match. Obtain from search_sports_events or get_live_matches results. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It discloses the tool is a read operation returning basic info and links. It could detail the info more, but is sufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no redundant information. Front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description adequately explains what it returns. Could be more specific about the output fields, but it's acceptable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%. The description adds value by explaining how to obtain the event_id from other tools, beyond the schema's parameter description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets basic match info for a specific football match by Vublox event ID, and includes links. It distinguishes from siblings like get_live_matches and search_sports_events.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions obtaining the ID from search_sports_events or get_live_matches, implying a prerequisite and usage context. It lacks explicit when-not-to-use but provides clear guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_recent_matchesA
Get recently finished football matches (last 48 hours) via Vublox. Returns final scores and links to match pages and fan clips on Vublox.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It discloses a read operation and output but omits potential behavioral aspects like authentication needs, rate limits, or whether data is cached. Basic transparency is present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that efficiently conveys purpose, time window, and output. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple zero-parameter retrieval tool without an output schema, the description covers the essential purpose and outputs. However, it lacks details on output format or potential limitations like pagination, leaving minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema is empty (0 parameters), so according to guidelines, the baseline is 4. The description adds no parameter info, but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves recently finished football matches from the last 48 hours with final scores and links to Vublox pages and fan clips. It effectively distinguishes itself from siblings like get_live_matches (live) and get_match_summary (single match).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for recent matches but lacks explicit guidance on when to prefer it over siblings or when not to use it. The sibling names provide some context, but no direct exclusion or alternative is mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_todays_goalsC
Get recent football match scores (last 48 hours) across all leagues via Vublox. Each result includes links to match pages on Vublox.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description should fully disclose behavioral traits. It only states it returns match scores with links within the last 48 hours, but omits important details like whether it returns only completed matches, data freshness, rate limits, or authentication needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at two sentences, with the key information front-loaded. Every sentence is necessary and contributes to understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no output schema), the description is mostly adequate but incomplete. It fails to reconcile the tool name with the actual output (goals vs. scores), and does not mention sorting, pagination, or what 'via Vublox' means for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, so the description does not need to explain any. It adds meaning by describing the output as 'recent football match scores (last 48 hours) across all leagues' with links, which is sufficient for a parameterless tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The tool name 'get_todays_goals' suggests returning today's goals, but the description says 'Get recent football match scores (last 48 hours) across all leagues via Vublox.' This mismatch between name and description creates confusion. Additionally, the description does not distinguish this from sibling tools like get_recent_matches.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as get_live_matches, get_match_summary, or get_recent_matches. There is no mention of when-not-to-use or any differentiators.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_sports_eventsB
Search for live or recent football (soccer) matches on Vublox by team name, league, or keyword. Returns match names, scores, clip links, and match page links on Vublox.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search term — team name (e.g. "Arsenal"), league (e.g. "Premier League"), or keyword |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries full burden. It states the tool searches for 'live or recent' matches but does not clarify if upcoming matches are excluded, if search results are paginated, or what happens on no results. Behavior details beyond positive returns are missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description contains two sentences with no wasted words. The first sentence presents the purpose and method, and the second lists returns. Information is front-loaded and clear.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has only one parameter and no output schema, the description adequately covers the main purpose and return values. However, it lacks details on result ordering, limits, or time scope (live vs recent). It is mostly complete for a simple search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 100% description coverage and the parameter description is identical to the text in the tool description. Therefore, the description adds no additional meaning beyond what the schema already provides, earning a baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb (search) and resource (football matches on Vublox) and lists return fields. However, it does not explicitly distinguish itself from sibling tools like get_live_matches or get_recent_matches, which could lead to confusion about when to use this search tool vs those specific retrieval tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by giving examples of search terms, but it does not provide guidance on when to use this tool over alternatives (e.g., when to search versus using get_live_matches for all live matches). No exclusions or comparisons are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
5 tool updates
v0.1.0- First observed
get_live_matches - First observed
get_match_summary - First observed
get_recent_matches - First observed
get_todays_goals - First observed
search_sports_events
TDQS
Two tools, get_recent_matches and get_todays_goals, have nearly identical descriptions covering the last 48 hours, creating confusion. The other tools are distinct, but this overlap makes it hard for an agent to choose correctly.
All tools follow a consistent get_<noun> pattern using snake_case, making them predictable and easy to understand. No mixing of conventions or verb styles.
With 5 tools, the set is well-scoped for retrieving football match data from Vublox. Each tool serves a clear purpose, and the count is appropriate without being excessive or insufficient.
The tools cover live matches, recent matches, today's goals, search, and a summary endpoint, which is sufficient for basic match information retrieval. Minor gaps exist, such as historical data beyond 48 hours, but the main use cases are covered.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Give AI assistants access to real-time data. Search the web, compare flights, find hotels, and more.
Search Google straight from your AI agent. Web results, images, videos, news, products, scholarly ar
Provides AI assistants with access to Seltz's powerful Web Search capabilities.
Video analysis AI: transcripts, summaries, visual scenes/shots, clips, answers in natural language.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables querying community-run, keyless football/soccer match data from OpenLigaDB through natural language or direct tool calls.18MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to query sports data including teams, players, events, and standings from TheSportsDB through natural language or direct tool calls.21MIT
- FlicenseNot gradedqualityDmaintenanceProvides live football match data from Sofascore, including formations, injuries, betting odds, and league positions, enabling natural language queries about matches.1-
- FlicenseBqualityBmaintenanceEnables access to live FotMob football data for fixture lookup, team and player research, match details, lineups, league discovery, and search-based entity lookup.78-
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Vublox/vublox-agent-tools'
If you have feedback or need assistance with the MCP directory API, please join our Discord server