Melven
Documentation/Discovery XML

Discovery XML Specification

The complete reference guide for creating a discovery.xml file to make your MCP server discoverable by AI agents and search engines like Melven.

Overview

The discovery.xml file is a standardized format for describing MCP (Model Context Protocol) servers. Similar to how sitemap.xml helps search engines discover web pages,discovery.xml helps AI agents and discovery platforms find and understand your MCP server.

Place this file at /.well-known/discovery.xml on your server to enable automatic discovery.

File Location

Your discovery.xml file must be accessible at:

URL Path
https://your-server.com/.well-known/discovery.xml

Basic Structure

Here's a minimal discovery.xml file:

discovery.xml
<?xml version="1.0" encoding="UTF-8"?>
<discovery version="1.0">
  <server>
    <name>My MCP Server</name>
    <url>https://my-server.com</url>
  </server>
  
  <design>
    <logo>https://my-server.com/logo.png</logo>
  </design>
  
  <seo>
    <shortDescription>A powerful MCP server for...</shortDescription>
    <categories>
      <category>Developer Tools</category>
    </categories>
    <keywords>
      <keyword>mcp</keyword>
      <keyword>ai</keyword>
    </keywords>
  </seo>
  
  <engines>
    <allowAll>false</allowAll>
    <allowed>
      <engine>
        <id>melven.ai</id>
        <permissions>
          <displayImages>true</displayImages>
          <displayDesign>true</displayDesign>
          <cacheData>true</cacheData>
          <showInSearch>true</showInSearch>
        </permissions>
      </engine>
    </allowed>
  </engines>
  
  <legal>
    <noIllegalContent>true</noIllegalContent>
    <noMaliciousActivity>true</noMaliciousActivity>
    <accurateInformation>true</accurateInformation>
    <ownershipConfirmed>true</ownershipConfirmed>
    <termsAccepted>true</termsAccepted>
    <confirmedAt>2024-01-01T00:00:00.000Z</confirmedAt>
  </legal>
</discovery>

Server Section

The <server> section contains basic information about your MCP server:

ElementRequiredDescription
nameRequiredThe display name of your server
urlRequiredThe base URL of your server
authorOptionalAuthor information (name, url, email)
versionOptionalServer version (e.g., "1.0.0")
licenseOptionalLicense type (e.g., "MIT")
repositoryOptionalSource code repository URL
documentationOptionalDocumentation URL
supportOptionalSupport URL or contact
Full Server Example
<server>
  <name>Weather MCP Server</name>
  <url>https://weather-mcp.example.com</url>
  <author>
    <name>John Doe</name>
    <url>https://johndoe.dev</url>
    <email>john@example.com</email>
  </author>
  <version>2.1.0</version>
  <license>MIT</license>
  <repository>https://github.com/johndoe/weather-mcp</repository>
  <documentation>https://docs.weather-mcp.example.com</documentation>
  <support>https://github.com/johndoe/weather-mcp/issues</support>
</server>

Design Section

The <design> section lets you customize how your server appears on discovery platforms:

ElementDescription
logoURL to your server's logo (square, min 256x256px)
coverURL to a cover/banner image (16:9 ratio recommended)
primaryColorPrimary brand color in hex (e.g., #3B82F6)
secondaryColorSecondary brand color in hex
backgroundColorBackground color in hex
fontPreferred font family
theme"light", "dark", or "auto"

SEO Section

The <seo> section helps AI agents and search engines understand your server:

ElementRequiredDescription
shortDescriptionRequiredBrief description (10-200 chars)
longDescriptionOptionalDetailed description (up to 2000 chars)
categoriesRequiredList of categories (1-5)
keywordsRequiredList of relevant keywords
primaryCategoryOptionalMain category for the server
targetAudienceOptionalWho the server is for
useCasesOptionalExample use cases

Tools Section

Document your MCP tools with rich metadata and custom design:

Tools Example
<tools>
  <tool>
    <name>get_weather</name>
    <displayName>Get Weather</displayName>
    <description>Fetch current weather data for any location</description>
    <category>Weather</category>
    <keywords>
      <keyword>weather</keyword>
      <keyword>forecast</keyword>
      <keyword>temperature</keyword>
    </keywords>
    <useCases>
      <useCase>Get current weather conditions</useCase>
      <useCase>Check temperature before travel</useCase>
    </useCases>
    <design>
      <icon>https://example.com/weather-icon.png</icon>
      <primaryColor>#0EA5E9</primaryColor>
    </design>
  </tool>
</tools>

Engines Section

Control which discovery engines can index your server:

Engines Example
<engines>
  <!-- Allow all engines -->
  <allowAll>true</allowAll>
  
  <!-- OR specify allowed engines -->
  <allowAll>false</allowAll>
  <allowed>
    <engine>
      <id>melven.ai</id>
      <permissions>
        <displayImages>true</displayImages>
        <displayDesign>true</displayDesign>
        <cacheData>true</cacheData>
        <showInSearch>true</showInSearch>
      </permissions>
    </engine>
  </allowed>
  
  <!-- Optionally deny specific engines -->
  <denied>
    <engine>some-engine.com</engine>
  </denied>
</engines>

Legal Section

Required legal confirmations for indexing:

ElementDescription
noIllegalContentServer does not host illegal content
noMaliciousActivityServer does not engage in malicious activities
accurateInformationAll information provided is accurate
ownershipConfirmedSubmitter has authority to submit
termsAcceptedTerms of service accepted
confirmedAtISO timestamp of confirmation

All legal confirmations must be set to true for your server to be indexed.

Ready to Create Your Discovery File?

Use our interactive builder to generate a valid discovery.xml file for your MCP server.

Open Discovery Builder