@mafdet/mcp 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -8,6 +8,19 @@ It does **not** run model inference — you keep calling Mafdet AI models throug
8
8
  each tool's normal OpenAI-compatible endpoint. This server only exposes
9
9
  read-only account and documentation helpers.
10
10
 
11
+ ## What Mafdet AI is
12
+
13
+ Mafdet AI is an OpenAI-compatible AI gateway: one API key and one base URL reach
14
+ models from several providers, billed by usage. Any tool or SDK that speaks the
15
+ OpenAI API works by pointing its base URL and key at Mafdet AI.
16
+
17
+ - Base URL: `https://api.mafdet.ai/v1`
18
+ - Endpoints: `/chat/completions`, `/embeddings`, `/audio/speech`
19
+ - Providers: Google (Gemini), Kimi (Moonshot), Qwen, DeepSeek
20
+ - 30 models as of August 2026. The catalogue changes, so the authoritative list
21
+ with current prices is [`models.json`](https://docs.mafdet.ai/models.json)
22
+ - Docs: <https://docs.mafdet.ai>
23
+
11
24
  ## Tools
12
25
 
13
26
  | Tool | Needs a key | What it does |
package/dist/tools.js CHANGED
@@ -53,6 +53,14 @@ export async function listModels(config, args = {}) {
53
53
  display_name: m.displayName,
54
54
  provider: m.provider,
55
55
  tier: m.accessTier,
56
+ // GEMMOD-003: endpoint + content modalities (additive; defaults when absent).
57
+ api_surface: m.apiSurface ?? "CHAT_COMPLETIONS",
58
+ input_modalities: Array.isArray(m.inputModalities)
59
+ ? m.inputModalities
60
+ : ["TEXT"],
61
+ output_modalities: Array.isArray(m.outputModalities)
62
+ ? m.outputModalities
63
+ : ["TEXT"],
56
64
  input_per_1m_micro_usd: String(m.inputPricePer1mMicroUsd ?? "0"),
57
65
  output_per_1m_micro_usd: String(m.outputPricePer1mMicroUsd ?? "0"),
58
66
  context_length: m.contextLength,
@@ -64,6 +72,7 @@ export async function listModels(config, args = {}) {
64
72
  }
65
73
  const lines = models.map((m) => `- ${m.model_id} (${m.provider}, ${m.tier})` +
66
74
  `${m.trial ? " [trial]" : ""}${m.deprecated ? " [deprecated]" : ""}` +
75
+ `${m.output_modalities.includes("IMAGE") ? " [image-out]" : ""}` +
67
76
  ` — in ${money(m.input_per_1m_micro_usd)}/1M, out ${money(m.output_per_1m_micro_usd)}/1M, ctx ${m.context_length}`);
68
77
  return ok(`Mafdet AI models (${models.length}):\n${lines.join("\n")}`);
69
78
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mafdet/mcp",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Mafdet AI MCP server — read-only account tools (models, balance, usage, subscription, docs) for Claude Code, Cursor, Codex, OpenCode, and Claude Desktop.",
5
5
  "type": "module",
6
6
  "license": "MIT",