Synap

Open AI models through one OpenAI-compatible API: chat, live model list, prices and cost estimates.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
98%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,121Tokens (tool definitions)
~1.4 KBTypical response size
Moderate attention impact (0.88% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "synap": {
      "url": "https://pool.linkrra.com/mcp"
    }
  }
}

Remote endpoints

https://pool.linkrra.com/mcpstreamable-http

What it can do

Tool inventory

Tools (4)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟡synap_chat_completion(model, messages, temperature, max_tokens)

Send a conversation to a model on Synap, Linkrra's OpenAI-compatible inference API, and get the model's reply. Use this when you need text generated, code written or a question answered by one of the open models Synap serves. This is the only tool here that costs money: it bills prompt and completion tokens to the Synap API key supplied as the Authorization: Bearer header on the MCP connection. With no key it returns an error and nothing is spent; a key with no balance returns insufficient_credits. Call synap_estimate_cost first if the price matters. Returns the standard OpenAI chat.completion JSON (choices[0].message.content holds the reply, usage holds token counts). The call is not streamed and keeps no memory between calls — send the full message history each time.

Input Schema

{
  "type": "object",
  "properties": {
    "model": {
      "type": "string",
      "description": "Model id exactly as returned by synap_list_models, e.g. \"qwen3-coder-30b\". Use \"synap-v1\" to let Synap pick the cheapest model that can handle the request."
    },
    "messages": {
      "type": "array",
      "description": "The conversation so far, oldest first. The last message is normally the user turn to answer.",
      "minItems": 1,
      "items": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "system",
              "user",
              "assistant"
            ],
            "description": "Who wrote the message: system (instructions), user, or assistant (an earlier model reply)."
          },
          "content": {
            "type": "string",
            "description": "The message text."
          }
        },
        "required": [
          "role",
          "content"
        ]
      }
    },
    "temperature": {
      "type": "number",
      "minimum": 0,
      "maximum": 2,
      "description": "Sampling randomness, 0 to 2. Lower is more deterministic. Omit to use the model default."
    },
    "max_tokens": {
      "type": "integer",
      "minimum": 1,
      "description": "Upper limit on tokens generated in the reply. Omit to use the model default; lower it to cap cost."
    }
  },
  "required": [
    "model",
    "messages"
  ]
}
🟢synap_list_models(query)

List the models Synap serves right now, each with its price per million tokens, context window and what it is good at. Use this to choose a model id before calling synap_chat_completion, or to compare prices. Free, read-only, no API key needed, and safe to call repeatedly; the list is live, so models can appear or go between calls. Returns {"object":"list","count":N,"data":[{id,name,capability,tier,context_tokens,max_output_tokens,pricing,data_policy}]}; pricing is USD per million prompt and completion tokens and is absent for the auto-routing ids ("synap-v1"), which bill at the price of the model they route to. For every field of one model use synap_get_model.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Optional case-insensitive filter matched against model id, name and capability, e.g. \"coder\", \"qwen\" or \"vision\". Omit to list everything."
    }
  }
}
🟢synap_get_model(model)

Return the complete catalogue record for one Synap model: pricing, context and output limits, supported parameters, quantisation, data-retention policy and readiness. Use this after synap_list_models when you need details the summary leaves out. Free, read-only and needs no API key. Returns the raw model object, or an error naming the id if Synap does not serve it.

Input Schema

{
  "type": "object",
  "properties": {
    "model": {
      "type": "string",
      "description": "Model id exactly as returned by synap_list_models."
    }
  },
  "required": [
    "model"
  ]
}
🟢synap_estimate_cost(model, prompt_tokens, completion_tokens)

Work out what a chat completion would cost on Synap from token counts, using the live price list. Use this before synap_chat_completion when budget matters, or to compare models for a job. Free, read-only, needs no API key and runs no model. Returns {model, prompt_tokens, completion_tokens, prompt_usd, completion_usd, total_usd, pricing}. It is an estimate: the real charge uses the token counts the model reports afterwards. Auto-routing ids such as "synap-v1" have no fixed price and return an error saying so.

Input Schema

{
  "type": "object",
  "properties": {
    "model": {
      "type": "string",
      "description": "Model id exactly as returned by synap_list_models."
    },
    "prompt_tokens": {
      "type": "integer",
      "minimum": 0,
      "description": "Tokens you will send (system + conversation). Roughly 4 characters of English per token."
    },
    "completion_tokens": {
      "type": "integer",
      "minimum": 0,
      "description": "Tokens you expect back. Use your max_tokens for a worst case. Defaults to 0."
    }
  },
  "required": [
    "model",
    "prompt_tokens"
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools
verifiedversion not recorded4 tools
verifiedversion not recorded4 tools
verifiedversion not recorded2 tools
verifiedversion not recorded2 tools
verifiedversion not recorded2 tools