Synap
Open AI models through one OpenAI-compatible API: chat, live model list, prices and cost estimates.
Installation
Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).
claude mcp add --transport http synap 'https://pool.linkrra.com/mcp' --header 'Authorization: <Bearer <your Synap API key>. Only needed for synap_chat_completion; listing models and estimating cost work without it.>'
{
"mcpServers": {
"synap": {
"type": "http",
"url": "https://pool.linkrra.com/mcp",
"headers": {
"Authorization": "<Bearer <your Synap API key>. Only needed for synap_chat_completion; listing models and estimating cost work without it.>"
}
}
}
}
Documentation
Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.
Sommaire
Synap MCP server
Synap by Linkrra as a Model Context Protocol server: open models behind one OpenAI-compatible API. Your agent can list the models we serve, read their prices and limits, estimate the cost of a job before running it, and run a chat completion.
There is one server, hosted at https://pool.linkrra.com/mcp (Streamable HTTP). It is the
server behind com.linkrra/synap in the official MCP registry.
This repository has two parts:
routes.jsis the deployed router itself, byte for byte.bin/synap-mcp.jsis the stdio transport (npx synap-mcp) for MCP hosts that launch a local command. It sends every message to the hosted server unchanged, so it always exposes the same tools as the hosted server.
Tools
| Tool | Cost | Key needed |
|---|---|---|
synap_list_models | free | no |
synap_get_model | free | no |
synap_estimate_cost | free | no |
synap_chat_completion | billed per prompt and completion token | yes |
Model ids are the ones synap_list_models returns. Pass synap-v1 and Synap picks the cheapest
model that can do the job.
Connect
Hosted (Streamable HTTP), no install needed
{
"mcpServers": {
"synap": {
"type": "http",
"url": "https://pool.linkrra.com/mcp",
"headers": { "Authorization": "Bearer YOUR_SYNAP_API_KEY" }
}
}
}
Local stdio (Claude Desktop, Cursor, Cline, Windsurf, Zed)
{
"mcpServers": {
"synap": {
"command": "npx",
"args": ["-y", "synap-mcp"],
"env": { "SYNAP_API_KEY": "YOUR_SYNAP_API_KEY" }
}
}
}
Without a key, the three free tools still work. synap_chat_completion returns an error and
nothing is charged.
| Variable | Meaning |
|---|---|
SYNAP_API_KEY | Your Synap key, sent as Authorization: Bearer. Get one at https://synap.linkrra.com. |
SYNAP_MCP_URL | Optional. Overrides the endpoint (default https://pool.linkrra.com/mcp). |
Use it from goose
A ready-made goose custom-provider file lives in goose/.
Download goose/linkrra.json into ~/.config/goose/custom_providers/, set LINKRRA_API_KEY, and pick
Linkrra (Synap) as the provider. Full setup steps and the model table: goose/README.md.
Paying
- API key (MCP and REST). Top up a Synap account by card or crypto. Each call is billed per token against that balance. MCP always uses this method.
- x402, no account. An agent with a USDC wallet on Base can pay per call over plain HTTP at
POST https://pool.linkrra.com/api/billing/x402/chat/completions. An unpaid request returns402with the payment terms. This route is part of the REST API, not an MCP tool. Its settlement is independently verified on PayAPI Market.
Protocol
The hosted server speaks both MCP eras:
- 2026-07-28 (current): stateless. It implements
server/discoverand reads the per-request_metaprotocol version. It checks thatMCP-Protocol-Version,Mcp-MethodandMcp-Namematch the request body. Results carryresultType, and list results also carryttlMsandcacheScope. - 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05: the
initializehandshake.
The bridge works with both. For a legacy client, it remembers the version agreed during
initialize. For a 2026-07-28 client, it copies the _meta version into the HTTP headers
that the Streamable HTTP transport requires.
The API behind it
https://pool.linkrra.com/v1 is an OpenAI-compatible API. On every self-hosted model it
supports tool calling (tools, tool_choice) and structured outputs (response_format
json_object / json_schema). Requests can be streamed or not. Prompts and completions are
not stored.
Auth
The server passes your key through and nothing else. The key travels in the standard
Authorization: Bearer header, the same way it would on a direct call to
/v1/chat/completions. routes.js forwards that header untouched. The server never reads,
stores or creates a key.
Run the server standalone
npm install && npm start # serves :8080/mcp
Develop
npm test # offline: a local mock checks the bridge's headers for both protocol eras
The stdio bridge needs Node 18 or later and has no dependencies.
License
Apache-2.0
Questions fréquentes
Qu'est-ce que Synap ?
Open AI models through one OpenAI-compatible API: chat, live model list, prices and cost estimates.
Comment installer Synap ?
Il fonctionne comme serveur distant. Dans Claude Code : claude mcp add --transport http synap 'https://pool.linkrra.com/mcp' --header 'Authorization: <Bearer <your Synap API key>. Only needed for synap_chat_completion; listing models and estimating cost work without it.>'. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.
Faut-il une clé API pour Synap ?
Oui. Il attend Authorization, à renseigner dans sa configuration.
Synap est-il open source ?
Oui. Son code est sur GitHub sous licence Apache-2.0.
Qui maintient Synap ?
Il est publié par jimmyplup. AI.tn le référence sans le maintenir ni le recommander.
Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.