Skip to main content
Glama
watchdealer-pavel

WatchBase MCP Server

WatchBase MCP-Server

Ein MCP-Server (Model Context Protocol), der Zugriff auf die WatchBase Data Feed API zum Abfragen von Watch-Metadaten bietet.

Über die WatchBase-API

Die WatchBase Data Feed API bietet strukturierten Zugriff auf eine umfassende Datenbank mit Uhreninformationen, darunter Marken, Familien (Kollektionen), spezifische Uhrenmodelle, Referenznummern, technische Details und Bilder. Entwickler können damit detaillierte Uhrendaten in ihre Anwendungen integrieren. Weitere Informationen finden Sie in der WatchBase API-Dokumentation .

Related MCP server: mcp-mediawiki-crunchtools

Merkmale

Dieser MCP-Server stellt die folgenden Tools bereit, die den WatchBase-API-Endpunkten entsprechen:

  • search : Durchsuchen Sie die Datenbank nach Markennamen, Familiennamen, Uhrennamen und Referenznummer (entspricht ganzen Wörtern).

  • search_refnr : Durchsucht die Datenbank nach Referenznummer (erlaubt teilweise Übereinstimmungen).

  • list_brands : Ruft eine Liste aller Uhrenmarken in der Datenbank ab.

  • list_families : Ruft eine Liste aller Familien (Sammlungen) für eine bestimmte Marken-ID ab.

  • list_watches : Ruft eine Liste von Uhren für eine bestimmte Marken-ID und optional eine Familien-ID ab. Kann nach Aktualisierungsdatum gefiltert werden.

  • get_watch_details : Ruft die vollständigen Details (alle Datenfelder) für eine bestimmte Uhr anhand ihrer WatchBase-ID ab.

Voraussetzungen

  • Node.js und npm: Erforderlich, um Abhängigkeiten zu installieren und den Server auszuführen.

  • WatchBase API-Schlüssel: Sie benötigen einen API-Schlüssel von WatchBase. Besuchen Sie die WatchBase API-Seite, um Zugriff anzufordern und einen Schlüssel zu erhalten.

Installation

  1. Klonen Sie das Repository:

    git clone https://github.com/watchdealer-pavel/watchbase-mcp.git
    cd watchbase-mcp
  2. Installieren Sie Abhängigkeiten:

    npm install
  3. Erstellen Sie den Server:

    npm run build

    Dieser Befehl kompiliert den TypeScript-Quellcode in JavaScript und platziert die Ausgabe im Verzeichnis build/ (insbesondere build/index.js ).

Konfiguration

Der Server benötigt Ihren WatchBase-API-Schlüssel über die Umgebungsvariable WATCHBASE_API_KEY . Sie müssen Ihren MCP-Client (z. B. Cline/Roo Code oder die Claude Desktop App) so konfigurieren, dass dieser Server ausgeführt wird und die Umgebungsvariable übergeben wird.

Beispielkonfiguration:

Nachfolgend finden Sie Beispiele für gängige MCP-Clients. Denken Sie daran, /path/to/your/watchbase-mcp/build/index.js durch den tatsächlichen absoluten Pfad zur kompilierten Serverdatei auf Ihrem System und YOUR_WATCHBASE_API_KEY durch Ihren tatsächlichen WatchBase-API-Schlüssel zu ersetzen.

Cline / Roo Code (VS Code-Erweiterung)

  1. Öffnen Sie Ihre VS Code-Einstellungen für MCP-Server. Unter macOS befindet sich dieser typischerweise unter: ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json(Hinweis: Der genaue Pfad kann je nach Betriebssystem und VS Code-Installationstyp variieren. Für Roo Code ersetzen Sie saoudrizwan.claude-dev durch rooveterinaryinc.roo-cline ).

  2. Fügen Sie den folgenden Konfigurationsblock unter dem Schlüssel mcpServers hinzu:

    "watchbase-mcp": {
      "command": "node",
      "args": ["/path/to/your/watchbase-mcp/build/index.js"], // <-- IMPORTANT: Replace with the ACTUAL absolute path to build/index.js
      "env": {
        "WATCHBASE_API_KEY": "YOUR_WATCHBASE_API_KEY" // <-- IMPORTANT: Replace with your WatchBase API Key
      },
      "disabled": false,
      "autoApprove": [] // Or add specific tools you want to auto-approve
    }

Claude Desktop App

  1. Öffnen Sie die Konfigurationsdatei der Claude Desktop App. Unter macOS befindet sie sich normalerweise unter: ~/Library/Application Support/Claude/claude_desktop_config.json(Hinweis: Der genaue Pfad kann je nach Betriebssystem variieren.)

  2. Fügen Sie den folgenden Konfigurationsblock unter dem Schlüssel mcpServers hinzu:

    "watchbase-mcp": {
      "command": "node",
      "args": ["/path/to/your/watchbase-mcp/build/index.js"], // <-- IMPORTANT: Replace with the ACTUAL absolute path to build/index.js
      "env": {
        "WATCHBASE_API_KEY": "YOUR_WATCHBASE_API_KEY" // <-- IMPORTANT: Replace with your WatchBase API Key
      },
      "disabled": false,
      "autoApprove": [] // Or add specific tools you want to auto-approve
    }

Verwendung

Nach der Konfiguration können Sie die Tools des Servers von Ihrem KI-Assistenten aus mit dem Befehl/Tool use_mcp_tool aufrufen.

<use_mcp_tool>
  <server_name>watchbase-mcp</server_name>
  <tool_name>search</tool_name>
  <arguments>
    {
      "q": "priors court"
    }
  </arguments>
</use_mcp_tool>

search_refnr Beispiel

<use_mcp_tool>
  <server_name>watchbase-mcp</server_name>
  <tool_name>search_refnr</tool_name>
  <arguments>
    {
      "q": "P2/"
    }
  </arguments>
</use_mcp_tool>

list_brands Beispiel

<use_mcp_tool>
  <server_name>watchbase-mcp</server_name>
  <tool_name>list_brands</tool_name>
  <arguments>
    {}
  </arguments>
</use_mcp_tool>

list_families Beispiel

<use_mcp_tool>
  <server_name>watchbase-mcp</server_name>
  <tool_name>list_families</tool_name>
  <arguments>
    {
      "brand_id": 37
    }
  </arguments>
</use_mcp_tool>

list_watches Beispiel

<use_mcp_tool>
  <server_name>watchbase-mcp</server_name>
  <tool_name>list_watches</tool_name>
  <arguments>
    {
      "brand_id": 37,
      "family_id": 279
    }
  </arguments>
</use_mcp_tool>

get_watch_details Beispiel

<use_mcp_tool>
  <server_name>watchbase-mcp</server_name>
  <tool_name>get_watch_details</tool_name>
  <arguments>
    {
      "id": 17289
    }
  </arguments>
</use_mcp_tool>

Lizenz

Dieses MCP-Serverprojekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE .

Bitte beachten Sie auch die Servicebedingungen von WatchBase bezüglich der API-Nutzung.

Available Tools

6 tools
get_watch_detailsC

Retrieve the full details for a particular watch by its ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesID of the watch

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It states the action ('Retrieve') but doesn't disclose behavioral traits like whether this is a read-only operation, error handling for invalid IDs, authentication needs, rate limits, or response format. This leaves significant gaps for a tool with no annotation support.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is appropriately sized and front-loaded, with zero waste, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete. It doesn't explain what 'full details' include, error scenarios, or return values, which are crucial for a retrieval tool. With low contextual support from structured fields, the description should provide more completeness but fails to do so.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the 'id' parameter documented as 'ID of the watch'. The description adds no additional meaning beyond this, such as format examples or constraints, so it meets the baseline of 3 where the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Retrieve') and resource ('full details for a particular watch'), making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like 'list_watches' or 'search', which might also retrieve watch information but with different scopes or filters.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 'list_watches' or 'search'. It mentions retrieving details by ID, but doesn't clarify if this is for single-item lookups or when other tools might be more appropriate, leaving usage context implied at best.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_brandsB

Retrieve a list of all brands in the database.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states this is a retrieval operation but doesn't mention important behavioral aspects like whether results are paginated, sorted, limited in count, or if authentication is required. For a list operation with zero annotation coverage, this leaves significant gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that states exactly what the tool does with no wasted words. It's appropriately sized for a simple retrieval tool and front-loads the essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a list retrieval tool with no annotations and no output schema, the description is insufficiently complete. It doesn't describe what format the list returns (e.g., array of brand objects with specific fields), whether there are limitations on the result set, or how the tool behaves in different scenarios. The simplicity of having zero parameters doesn't compensate for these gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and schema description coverage is 100%, so there are no parameters to document. The description appropriately doesn't attempt to explain nonexistent parameters, earning a baseline score of 4 for this dimension.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Retrieve a list') and resource ('all brands in the database'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'list_families' or 'list_watches' that likely follow similar patterns for different resources.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 like 'search' or 'get_watch_details'. It doesn't mention whether this is for browsing all brands versus filtered searches, or what context would make this the appropriate choice among the sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_familiesC

Retrieve a list of all families for a given brand.

ParametersJSON Schema
NameRequiredDescriptionDefault
brand_idYesBrandID of the brand

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states this is a retrieval operation but doesn't mention whether it's paginated, rate-limited, requires authentication, returns structured data, or has any side effects. For a list operation with zero annotation coverage, this leaves significant gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that communicates the core purpose without any wasted words. It's appropriately sized for a simple list operation and front-loads the essential information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what a 'family' represents in this domain, what format the returned list takes, or how this tool relates to sibling tools like 'list_watches'. The agent would need to guess about important contextual details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with the single parameter 'brand_id' clearly documented in the schema. The description adds no additional parameter semantics beyond what's already in the schema, so it meets the baseline score when schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Retrieve') and resource ('list of all families for a given brand'), making the purpose immediately understandable. However, it doesn't explicitly differentiate this tool from its sibling 'list_brands' or 'list_watches', which would be needed for a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 like 'list_brands' or 'list_watches'. It mentions the required 'brand_id' parameter but doesn't explain the relationship between brands, families, and watches, leaving the agent to infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_watchesC

Retrieve a list of watches for a particular Brand and/or Family, optionally filtered by update date.

ParametersJSON Schema
NameRequiredDescriptionDefault
brand_idYesBrandID of the brand
family_idNoOptional: FamilyID of the family
updated_sinceNoOptional: Limit results to watches updated after this date (YYYY-MM-DD)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states the retrieval action but doesn't mention pagination, rate limits, authentication needs, error conditions, or what happens when no matches are found. For a list operation with 3 parameters, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that front-loads the core purpose and includes all key filtering options. There's zero waste or redundancy, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a list retrieval tool with 3 parameters and no annotations or output schema, the description is incomplete. It doesn't address behavioral aspects like pagination, sorting, response format, or error handling. While the purpose is clear, the lack of context about how the tool behaves in practice leaves significant gaps for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameters are well-documented in the schema. The description adds marginal value by clarifying that filtering is by 'Brand and/or Family' and 'optionally filtered by update date', but doesn't provide additional semantics beyond what the schema already specifies. Baseline 3 is appropriate when schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Retrieve') and resource ('list of watches') with specific filtering criteria ('for a particular Brand and/or Family, optionally filtered by update date'). It distinguishes from siblings like 'get_watch_details' (single watch) and 'list_brands/families' (different resources), but doesn't explicitly contrast with 'search' or 'search_refnr' which might overlap in functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 like 'search' or 'search_refnr'. It mentions optional filtering by update date, but doesn't clarify use cases, prerequisites, or exclusions. The agent must infer usage from the name and parameters alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_refnrB

Search the database by reference number (allows partial matches).

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSearch keywords (reference number)

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only states the partial match capability. It doesn't disclose whether this is a read-only operation, what permissions are needed, how results are returned (format, pagination), or any rate limits. The description adds minimal behavioral context beyond the basic function.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero wasted words. It front-loads the core function and includes the key behavioral detail (partial matches) without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple search tool with one parameter and no output schema, the description covers the basic purpose and partial match behavior adequately. However, with no annotations and no output schema, it lacks details on return format, error conditions, or operational constraints that would be helpful for an agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% description coverage, with the parameter 'q' documented as 'Search keywords (reference number)'. The description adds that it allows partial matches, which provides useful context beyond the schema, but doesn't elaborate on syntax or format requirements. Baseline 3 is appropriate given high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Search') and resource ('database by reference number'), with the specific capability of partial matches. It distinguishes from the generic 'search' sibling by specifying reference number searches, though it doesn't explicitly contrast with other siblings like list operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when searching by reference number with partial matching, but doesn't explicitly state when to use this tool versus the generic 'search' sibling or list operations. No guidance on prerequisites or exclusions is provided.

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.

  1. 6 tool updates
    • First observedget_watch_details
    • First observedlist_brands
    • First observedlist_families
    • First observedlist_watches
    • First observedsearch
    • First observedsearch_refnr

TDQS

B3.4/5.0
Disambiguation3/5

Most tools have distinct purposes, but 'search' and 'search_refnr' create ambiguity as both handle reference number searches, with overlapping functionality that could cause misselection. The other tools (get_watch_details, list_brands, list_families, list_watches) are clearly differentiated by their specific resource and action.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with snake_case (e.g., get_watch_details, list_brands, search_refnr). There are no deviations in naming conventions, making the set predictable and readable for an agent.

Tool Count5/5

With 6 tools, this server is well-scoped for its watch database domain. Each tool serves a clear purpose, such as retrieving details, listing categories, or searching, without being overly sparse or bloated, fitting typical expectations for a focused MCP server.

Completeness4/5

The tool set covers core read operations for watches, brands, and families, including search capabilities, which is appropriate for a database query server. A minor gap exists in the lack of write operations (e.g., create, update, delete), but this may be intentional for a read-only interface, and agents can still perform comprehensive queries.

Maintenance

ActivityInactive
ResponsivenessNo issues

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

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    MCP Server for accessing W3C/WHATWG/IETF web specifications. Provides AI assistants with access to official web standards data including specifications, WebIDL definitions, CSS properties, and HTML elements.
    11
    32
    4
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    A secure MCP server for interacting with MediaWiki instances, allowing users to search, read, create, and manage wiki content like pages, categories, and files. It supports both public and private wikis with comprehensive authentication for full read and write operations.
    19
    AGPL 3.0
  • A
    license
    A
    quality
    C
    maintenance
    An MCP server designed for interacting with the Model Context Protocol Registry API to discover and retrieve information about available MCP servers. It provides tools to search, list, and view detailed configurations and version history for servers within the registry.
    4
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    A versatile MCP server that connects to multiple relational databases (MySQL, PostgreSQL, Oracle, SQL Server, SQLite) and enables secure read-only SQL query execution and metadata access.
    4
    -

Latest Blog Posts

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/watchdealer-pavel/watchbase-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server