---
name: the-model-company
description: Helps the user create a small, specialized AI model for one task (routing, classifying, tagging or pulling fields out of text) with The Model Company, trained on their own examples. Use when the user wants a custom model for a narrow, repeated task, wants something smaller and cheaper than prompting a large general-purpose model, or mentions The Model Company.
metadata:
  version: "2026-10-01"
  status: preview
---

# The Model Company

The Model Company turns a plain-language task and a set of labeled examples into a small model that does that one job. It's faster and cheaper than a general-purpose model, and it's the user's: in this preview it runs on our API. With this skill you can take the user from "I need a model that…" to a model in the builder.

## Status: check this before you promise anything

- **Live:** the web app at https://themodelcompany.com. A person describes the task, adds examples, sets a bar for quality, speed and spend, and starts a job. No sign-up.
- **Simulated:** jobs in the preview. Nothing is trained or charged, and the results are illustrative. Say so whenever you talk about results.
- **Planned, not live:** the REST API, MCP server and `tmc` CLI. Don't install them, call them or invent endpoints for them. Hosts ending in `.example` are placeholders.

## Setup

When the user asks you to set this up:

1. Save this file exactly as it's served: download it, don't retype or summarize it. For Claude Code:

   ```sh
   mkdir -p ~/.claude/skills/the-model-company && curl -fsSL https://themodelcompany.com/SKILL.md -o ~/.claude/skills/the-model-company/SKILL.md
   ```

   In other agents, save it as `the-model-company/SKILL.md` in your skills folder. If you can't save files, keep it in mind for this conversation.
2. That's all: there's no package to install, and no account or API key to create.
3. Tell the user in a sentence or two what you can now help with, and ask what they'd like a model to do.

## Building a model with the user

### 1. Pin down the task

Agree on one sentence that says what the model does, and the kind of output:

| Kind | The model returns | Limits |
| --- | --- | --- |
| Single label | exactly one label per input | 2 to 50 labels |
| Multi-label | any number of tags per input | 2 to 50 labels |
| Extraction | named fields pulled out of the text | up to 30 fields, named in lowercase_with_underscores |

Propose the labels, each with a one-line definition, and confirm them with the user.

Then word the task so it names the labels after "into", "as", "between" or "either", for example "Sort customer emails into billing, refunds or shipping". The builder reads up to 12 labels of up to four words each from a sentence like that, and fills them in.

### 2. Prepare the examples

Help the user put together a file the builder accepts:

- CSV or TSV with a header row, or JSONL or JSON with one object per example. Up to 20 MB.
- One or more columns with the input text: a subject and a body can stay separate. Except for extraction, one column with each example's label; for multi-label, separate the tags with `|`.
- Export the text as it is. HTML, quoted earlier messages, signatures and repeated footers are fine: the builder offers to clean them, the same way for training and for every call the model answers later.
- Leave out anything written after the decision, such as work notes or resolution notes. They give the answer away, so the model would score better in testing than on new examples.
- At least 20 examples in total, and 10 or more for each label. A label in the task with fewer than 3 examples blocks the job; the builder can combine small labels into one.
- Use the user's real data. Write synthetic examples only if the user agrees, and label them as synthetic.

Save the file where the user can find it, such as `examples.csv`.

### 3. Hand off to the builder

Give the user this link, with the task sentence URL-encoded:

https://themodelcompany.com/create?task=<task>

It opens the builder with the task filled in. The user checks the labels, uploads the file in step 2, sets their bar for quality, latency and spend in step 3, and starts the job. The builder checks the file and explains any problem before anything runs.

### 4. Go through the results together

When the job finishes, the model page shows the score on held-out examples against the user's bar, results for each label, and a comparison with general-purpose models. The Test tab runs any input, so suggest a few hard cases from their data. In the preview these numbers are illustrative.

Real training is by request: in step 3 the user chooses "Real training" and asks for early access.

## Rules

- Never say a model was really trained, or quote preview numbers as real performance.
- Never install or call the planned API, MCP server or CLI, and never make up endpoints.
- Don't send the user's data anywhere except the builder they upload it to.
- Leave spending and real training to the user.

## When the API is live

The planned contract is already documented: scoped keys, free estimates, idempotent job creation, spending caps, polling and signed exports.

- Agent reference: https://themodelcompany.com/agents/reference
- Capability manifest (JSON): https://themodelcompany.com/.well-known/tmc-agent.json
- OpenAPI 3.1 draft: https://themodelcompany.com/openapi.json
- Plain-text summary: https://themodelcompany.com/llms.txt

To share this skill, give someone the line: Set up https://themodelcompany.com/SKILL.md
