Ask Claude, GPT, Grok, GLM, Kimi or DeepSeek from your client; token price plus a $0.001 call fee.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Bearer followed by your TopxAI API key (create one at https://api.topxai.xyz/keys)
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Send a prompt to one text model of the TopxAI catalogue and return its reply. The models reason before they answer and the reasoning counts toward max_output_tokens, so leave at least 4096 tokens for a full answer or pass a lower reasoning_effort. Billed at the model's token price, reasoning included, plus a $0.001 call fee; the reply reports the exact charge.
Model to ask; list_models shows the choices and prices.
The user message sent to the model. Include every piece of context the model needs; it sees nothing else.
Optional system prompt.
Optional sampling temperature.
Refuse the call, before anything is billed, when its estimated cost (prompt, max_output_tokens and the call fee) exceeds this amount.
Optional thinking effort. Each model takes its own set and list_models shows them with the default, which applies when this is omitted. A lower effort answers sooner and costs less; the reasoning is billed as output and counts toward max_output_tokens.
Upper bound on the reply, reasoning included; the reasoning itself is not returned. Below 4096 a model may stop before writing any text, and that call is still charged.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http models https://api.topxai.xyz/mcp/models \ --header 'Authorization: Bearer YOUR_TOKEN'
Headers
Authorization (required): Bearer followed by your TopxAI API key (create one at https://api.topxai.xyz/keys)Send a prompt to one text model of the TopxAI catalogue and return its reply. The models reason before they answer and the reasoning counts toward max_output_tokens, so leave at least 4096 tokens for a full answer or pass a lower reasoning_effort. Billed at the model's token price, reasoning included, plus a $0.001 call fee; the reply reports the exact charge.
| Argument | Type | Description |
|---|---|---|
| model* | string | Model to ask; list_models shows the choices and prices. |
| prompt* | string | The user message sent to the model. Include every piece of context the model needs; it sees nothing else. |
| system | string | Optional system prompt. |
| temperature | number | Optional sampling temperature. |
| max_cost_usd | number | Refuse the call, before anything is billed, when its estimated cost (prompt, max_output_tokens and the call fee) exceeds this amount. |
| reasoning_effort | string | Optional thinking effort. Each model takes its own set and list_models shows them with the default, which applies when this is omitted. A lower effort answers sooner and costs less; the reasoning is billed as output and counts toward max_output_tokens. |
| max_output_tokens | integer | Upper bound on the reply, reasoning included; the reasoning itself is not returned. Below 4096 a model may stop before writing any text, and that call is still charged. |
{
"type": "object",
"required": [
"model",
"prompt"
],
"properties": {
"model": {
"type": "string",
"description": "Model to ask; list_models shows the choices and prices."
},
"prompt": {
"type": "string",
"description": "The user message sent to the model. Include every piece of context the model needs; it sees nothing else."
},
"system": {
"type": "string",
"description": "Optional system prompt."
},
"temperature": {
"type": "number",
"maximum": 2,
"minimum": 0,
"description": "Optional sampling temperature."
},
"max_cost_usd": {
"type": "number",
"minimum": 0,
"description": "Refuse the call, before anything is billed, when its estimated cost (prompt, max_output_tokens and the call fee) exceeds this amount."
},
"reasoning_effort": {
"type": "string",
"description": "Optional thinking effort. Each model takes its own set and list_models shows them with the default, which applies when this is omitted. A lower effort answers sooner and costs less; the reasoning is billed as output and counts toward max_output_tokens."
},
"max_output_tokens": {
"type": "integer",
"default": 8192,
"maximum": 65536,
"minimum": 1,
"description": "Upper bound on the reply, reasoning included; the reasoning itself is not returned. Below 4096 a model may stop before writing any text, and that call is still charged."
}
},
"additionalProperties": false
}Ask TypeSafe's Jev (a System One model) typed questions about a piece of text and get calibrated numbers back, not prose: a probability for a yes/no question (type noul), one option with a probability per option (type choice, with criteria), or a value on a scale with a probability per anchor (type score, with anchors). Billed at Jev's input-token price plus a $0.001 call fee.
| Argument | Type | Description |
|---|---|---|
| model | string | System One model. |
| state* | string | The text the questions are about: a ticket, a log excerpt, a document, a transcript. |
| questions* | object | Question id to typed question. Each question is {"type": "noul" | "choice" | "score", "instructions": "one question a careful reader could answer from the state alone"}. noul may add "criteria": {"true": ..., "false": ...}; choice adds "criteria": {option: description or null, ...} (a plain list of option names is accepted too); score adds "criteria": [level description, ...] with 2 to 10 ordered levels. |
{
"type": "object",
"required": [
"state",
"questions"
],
"properties": {
"model": {
"type": "string",
"description": "System One model."
},
"state": {
"type": "string",
"description": "The text the questions are about: a ticket, a log excerpt, a document, a transcript."
},
"questions": {
"type": "object",
"description": "Question id to typed question. Each question is {\"type\": \"noul\" | \"choice\" | \"score\", \"instructions\": \"one question a careful reader could answer from the state alone\"}. noul may add \"criteria\": {\"true\": ..., \"false\": ...}; choice adds \"criteria\": {option: description or null, ...} (a plain list of option names is accepted too); score adds \"criteria\": [level description, ...] with 2 to 10 ordered levels.",
"minProperties": 1,
"additionalProperties": {
"type": "object",
"required": [
"type",
"instructions"
],
"properties": {
"type": {
"enum": [
"noul",
"choice",
"score"
],
"type": "string"
},
"instructions": {
"type": "string"
}
}
}
}
},
"additionalProperties": false
}List the text models this API key can ask, with their USD prices per million tokens, the reasoning efforts each takes and the call fee.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 13, 2026.
No readOnlyHint / destructiveHint annotations, so clients can't tell a read from a write without asking.
Fix: Add annotations to each tool, e.g. { readOnlyHint: true } for tools that only read.