thinkhard.si prompt tools

Search 300+ expert prompt templates for work, grade a prompt out of 10, and price AI models.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
96%
Integridad del esquema
82%
Calidad de los nombres
92%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~1,849Tokens (definiciones de herramientas)
~3.2 KBTamaño de respuesta típico
Impacto moderado en la atención (1.44% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "prompt-tools": {
      "url": "https://thinkhard.si/mcp"
    }
  }
}

Puntos de conexión remotos

https://thinkhard.si/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (5)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢search_prompts(query, collection, model, limit)

Find ready-made, expert prompt templates for a work task in the thinkhard.si repository (300+ prompts for email, meetings, presentations, job search, marketing, sales, support, HR, finance, legal, spreadsheets, research and more). Use it whenever the user wants to write, plan, summarize, analyze or draft something at work, before writing a prompt from scratch. Then call get_prompt with the slug.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "What the user wants to do, in plain words, for example \"cover letter\" or \"summarize a long contract\"."
    },
    "collection": {
      "type": "string",
      "enum": [
        "office",
        "writing",
        "marketing",
        "careers",
        "sales",
        "support",
        "management",
        "people",
        "projects",
        "research",
        "data",
        "finance",
        "legal",
        "operations",
        "smallbiz",
        "education",
        "product",
        "engineering",
        "system",
        "media"
      ],
      "description": "Optional: limit to one collection (see list_collections)."
    },
    "model": {
      "type": "string",
      "enum": [
        "claude",
        "gpt",
        "gemini",
        "any",
        "agent",
        "midjourney",
        "image",
        "video"
      ],
      "description": "Optional: only prompts laid out for this kind of model."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 25,
      "default": 8
    }
  },
  "required": [
    "query"
  ]
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "prompts": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Registry number, such as CAR-002."
          },
          "slug": {
            "type": "string",
            "description": "Pass it to get_prompt."
          },
          "title": {
            "type": "string"
          },
          "use": {
            "type": "string",
            "description": "When to use it."
          },
          "collection": {
            "type": "string",
            "description": "The collection it belongs to."
          },
          "laid_out_for": {
            "type": "string",
            "description": "The kind of model it is laid out for."
          },
          "score": {
            "type": "integer",
            "description": "Its own grade out of 10."
          },
          "url": {
            "type": "string",
            "description": "Its page on thinkhard.si."
          }
        },
        "required": [
          "id",
          "slug",
          "title",
          "use",
          "collection",
          "laid_out_for",
          "score",
          "url"
        ]
      },
      "description": "Best match first. Empty when nothing matches."
    }
  },
  "required": [
    "prompts"
  ]
}
🟢get_prompt(prompt, values)

Get the full text of one prompt from the thinkhard.si repository by its slug, registry number (such as CAR-001) or exact title, with its {{blanks}}, what goes in each, and why it works. If the name does not match exactly, it answers with the closest matches instead. Pass values to fill blanks with the user's details. Ask the user for any blank you cannot fill from the conversation instead of inventing it.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "prompt": {
      "type": "string",
      "description": "The slug, registry number or exact title from search_prompts."
    },
    "values": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      },
      "description": "Optional: blank name → the user's text, for example {\"job_posting\": \"...\"}."
    }
  },
  "required": [
    "prompt"
  ]
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Registry number."
    },
    "slug": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "system": {
      "type": "string",
      "description": "The system prompt, with the given values filled in. Empty when the template has none."
    },
    "prompt": {
      "type": "string",
      "description": "The user message, with the given values filled in."
    },
    "open_blanks": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Blanks still to fill. Ask the user for these."
    },
    "url": {
      "type": "string"
    }
  },
  "required": [
    "id",
    "slug",
    "title",
    "system",
    "prompt",
    "open_blanks",
    "url"
  ]
}
🟢list_collections

List the collections in the thinkhard.si prompt repository, with how many prompts each has.

Esquema de entrada

{
  "type": "object",
  "properties": {}
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "collections": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Pass it to search_prompts as collection."
          },
          "code": {
            "type": "string",
            "description": "Registry prefix, such as CAR."
          },
          "name": {
            "type": "string"
          },
          "blurb": {
            "type": "string"
          },
          "count": {
            "type": "integer",
            "description": "Prompts in the collection."
          }
        },
        "required": [
          "id",
          "code",
          "name",
          "blurb",
          "count"
        ]
      }
    }
  },
  "required": [
    "collections"
  ]
}
🟢grade_prompt(prompt, system, target)

Score a prompt out of 10 on the ten checks thinkhard.si uses (what to make, who it is for, background facts, length, format, what to avoid, what good looks like, an example, what to do if unsure, layout for the model). Returns which checks pass and a plain question for each one that fails. Rule-based and instant; use it to see what a prompt is missing before improving it.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "prompt": {
      "type": "string",
      "description": "The prompt to grade (the user message)."
    },
    "system": {
      "type": "string",
      "description": "Optional system prompt, graded together with the prompt."
    },
    "target": {
      "type": "string",
      "enum": [
        "claude",
        "gpt",
        "gemini",
        "any",
        "agent",
        "midjourney",
        "image",
        "video"
      ],
      "default": "any",
      "description": "The model it is for. Layout is judged for this model."
    }
  },
  "required": [
    "prompt"
  ]
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "score": {
      "type": "integer",
      "description": "Out of 10."
    },
    "band": {
      "type": "string",
      "description": "The score in a word."
    },
    "target": {
      "type": "string",
      "description": "The model it was read for."
    },
    "checks": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "check": {
            "type": "string"
          },
          "pass": {
            "type": "boolean"
          }
        },
        "required": [
          "check",
          "pass"
        ]
      },
      "description": "The ten checks, in order."
    }
  },
  "required": [
    "score",
    "band",
    "target",
    "checks"
  ]
}
🟢estimate_ai_cost(input_tokens, prompt_text, output_tokens, calls_per_month, models)

Estimate the monthly cost of running a prompt on current AI models (Claude, GPT, Gemini, DeepSeek, Qwen and others), from thinkhard.si's price catalog, which is checked against each provider's pricing page. Give token counts, or paste the prompt text to estimate them.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "input_tokens": {
      "type": "integer",
      "minimum": 0,
      "description": "Input tokens per call. Omit to estimate from prompt_text."
    },
    "prompt_text": {
      "type": "string",
      "description": "Optional: the prompt, to estimate input tokens (about 4 characters a token)."
    },
    "output_tokens": {
      "type": "integer",
      "minimum": 0,
      "default": 500,
      "description": "Output tokens per call."
    },
    "calls_per_month": {
      "type": "integer",
      "minimum": 1,
      "default": 1000
    },
    "models": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Optional: model names or ids to include, such as \"Claude Sonnet 5.5\". Default: every current model."
    }
  }
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "checked": {
      "type": "string",
      "description": "When the prices were last checked against each provider."
    },
    "calls_per_month": {
      "type": "integer"
    },
    "input_tokens": {
      "type": "integer"
    },
    "output_tokens": {
      "type": "integer"
    },
    "models": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "model": {
            "type": "string"
          },
          "ref": {
            "type": "string",
            "description": "Provider and model id."
          },
          "per_call_usd": {
            "type": "number",
            "description": "US dollars per call."
          },
          "monthly_usd": {
            "type": "number",
            "description": "US dollars a month."
          },
          "input_per_million": {
            "type": "number",
            "description": "US dollars per million input tokens."
          },
          "output_per_million": {
            "type": "number",
            "description": "US dollars per million output tokens."
          },
          "note": {
            "type": "string",
            "description": "Empty unless something about the price needs saying."
          }
        },
        "required": [
          "model",
          "ref",
          "per_call_usd",
          "monthly_usd",
          "input_per_million",
          "output_per_million",
          "note"
        ]
      },
      "description": "Cheapest first."
    }
  },
  "required": [
    "checked",
    "calls_per_month",
    "input_tokens",
    "output_tokens",
    "models"
  ]
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada5 herramientas