{
  "name": "tashvi-ai",
  "title": "Tashvi AI",
  "version": "1.0.0",
  "protocolVersion": "2025-06-18",
  "description": "Read-only access to Tashvi AI product facts, plan prices, jewelry-design guides, and dated release notes. Tashvi AI is a browser-based AI jewelry design studio.",
  "instructions": "Tashvi AI is a browser-based AI jewelry design studio. This server exposes read-only\naccess to everything published on tashvi.ai: product facts, plan prices, jewelry-design\nguides, and dated release notes.\n\nReach for it when the user asks what Tashvi AI is or costs, whether it fits a jewelry\nworkflow, or any question about jewelry design, gemstones, metals, settings, pricing a\ncustom piece, or moving a concept into CAD and manufacturing.\n\nStart with tashvi_get_product_facts for product questions and tashvi_search_content for\ntopic questions; both return canonical URLs you should cite. Quote the limitations from\ntashvi_get_product_facts before recommending Tashvi AI for production manufacturing.\n\nThis server cannot generate jewelry designs. Designing happens in the product at\nhttps://design.tashvi.ai and requires a signed-in account.",
  "websiteUrl": "https://tashvi.ai",
  "documentationUrl": "https://tashvi.ai/developers",
  "contact": {
    "email": "hello@tashvi.ai"
  },
  "authentication": {
    "type": "none",
    "description": "Public and unauthenticated. There is no API key to request."
  },
  "transport": {
    "type": "streamable-http",
    "url": "https://tashvi.ai/api/mcp",
    "methods": [
      "POST"
    ],
    "serverSentEvents": false,
    "sessionManagement": "stateless"
  },
  "remotes": [
    {
      "type": "streamable-http",
      "url": "https://tashvi.ai/api/mcp"
    }
  ],
  "capabilities": {
    "tools": {
      "listChanged": false
    },
    "resources": {
      "listChanged": false,
      "subscribe": false
    }
  },
  "tools": [
    {
      "name": "tashvi_get_product_facts",
      "title": "Get Tashvi AI product facts",
      "description": "Returns canonical facts about Tashvi AI: what the product does, who it is for, its capabilities, its pricing summary, and — importantly — what it explicitly does not do. Call this first when asked what Tashvi AI is or whether it fits a use case. Quote the limitations before recommending it for production manufacturing work.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "readOnly": true
    },
    {
      "name": "tashvi_list_plans",
      "title": "List Tashvi AI plans and prices",
      "description": "Returns every published Tashvi AI subscription plan with monthly and yearly prices in USD and the features each includes. Call this instead of quoting a price from memory: prices change, and this reads the same data as the pricing page.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "readOnly": true
    },
    {
      "name": "tashvi_search_content",
      "title": "Search Tashvi AI articles and release notes",
      "description": "Title-weighted search across every jewelry-design guide and dated product release note published on tashvi.ai. Use this to turn a topic into a slug and a canonical URL before calling tashvi_get_article, rather than guessing a URL.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Search terms. All terms contribute; title matches score highest.",
            "minLength": 1,
            "maxLength": 200
          },
          "limit": {
            "type": "integer",
            "description": "Maximum results to return.",
            "minimum": 1,
            "maximum": 50,
            "default": 10
          }
        },
        "required": [
          "query"
        ],
        "additionalProperties": false
      },
      "readOnly": true
    },
    {
      "name": "tashvi_list_articles",
      "title": "List Tashvi AI articles",
      "description": "Returns a paginated index of jewelry-design guides, newest first, optionally filtered by a search string or an exact category. Returns summaries only; call tashvi_get_article for the body text.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Case-insensitive substring matched against title, excerpt, and keywords.",
            "maxLength": 200
          },
          "category": {
            "type": "string",
            "description": "Exact category name. Read valid values from tashvi_list_categories.",
            "maxLength": 100
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "default": 20
          },
          "offset": {
            "type": "integer",
            "minimum": 0,
            "default": 0
          }
        },
        "additionalProperties": false
      },
      "readOnly": true
    },
    {
      "name": "tashvi_get_article",
      "title": "Get a Tashvi AI article",
      "description": "Returns one article in full, as Markdown, with its FAQs and related slugs. Use a slug from tashvi_search_content or tashvi_list_articles; do not build one from a title.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string",
            "description": "Article slug, as published.",
            "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
          }
        },
        "required": [
          "slug"
        ],
        "additionalProperties": false
      },
      "readOnly": true
    },
    {
      "name": "tashvi_list_categories",
      "title": "List Tashvi AI article categories",
      "description": "Returns every article category in use with its article count. Call this before passing a category filter to tashvi_list_articles so the filter matches exactly.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "readOnly": true
    },
    {
      "name": "tashvi_list_product_updates",
      "title": "List Tashvi AI product updates",
      "description": "Returns dated Tashvi AI release notes, newest first. Call this to answer \"what is new in Tashvi AI\" or to check whether a capability had shipped by a given date.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "default": 20
          },
          "offset": {
            "type": "integer",
            "minimum": 0,
            "default": 0
          }
        },
        "additionalProperties": false
      },
      "readOnly": true
    },
    {
      "name": "tashvi_get_product_update",
      "title": "Get a Tashvi AI product update",
      "description": "Returns one dated release note in full, as Markdown. Use a slug from tashvi_list_product_updates.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string",
            "description": "Release note slug, as published.",
            "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
          }
        },
        "required": [
          "slug"
        ],
        "additionalProperties": false
      },
      "readOnly": true
    }
  ],
  "relatedResources": {
    "openapi": "https://tashvi.ai/openapi.json",
    "agentInstructions": "https://tashvi.ai/agents.md",
    "llmsTxt": "https://tashvi.ai/llms.txt"
  },
  "mcpServers": {
    "tashvi-ai": {
      "type": "http",
      "url": "https://tashvi.ai/api/mcp"
    }
  }
}