markaDocs

Introduction

Marka's public API, TypeScript SDK, and MCP servers — what each one is for, and which to reach for.

Marka is a marketplace where the seller is the merchant of record. You create one listing, and Marka projects it to buyers and — where you have connected a channel — to external marketplaces.

These docs cover the three programmatic ways into that: the HTTP API, the TypeScript SDK, and the MCP servers that let an AI assistant work on your listings.

All three use the same credential: an API key you create in your Marka account settings.

Connecting an AI coding agent?

The fastest way is one sentence. Paste it into Claude Code, Codex, Cursor or OpenCode, and the agent reads Marka's setup instructions, asks you for an API key, and connects itself to the hosted MCP gateway. Agent setup has the sentence, and a guide per agent if you would rather do it by hand.

Three surfaces

The HTTP API — /api/v1

Ten operations over your account, your listings, your orders, and the public catalogue. Every request carries an API key. This is the surface everything else is built on, and the one to use from a language Marka does not ship a client for.

The SDK — @joinmarka/sdk

A typed TypeScript client whose request and response types come from the same contract that generates the API reference, so it cannot describe an endpoint the API does not have. It also ships a local MCP server built on top of itself.

npm install @joinmarka/sdk

See SDK for the full surface, or the cookbook for complete, runnable recipes.

MCP

Two different MCP servers, for two different jobs:

  • Hosted — POST https://joinmarka.com/api/mcp. Six operations backed by Marka's own database, which a client reaches by default through two tools, search_tools and execute_typescript. Point any client that speaks streamable HTTP at it.
  • Local — a stdio bridge that runs the SDK's own MCP server in your process, over the public HTTP API. For clients that cannot dial an HTTP MCP server.

They expose different tool sets, on purpose. MCP overview puts them side by side.

Things that are true everywhere

  • Money is integer minor units. A price of 4500 in CAD is CA$45.00. Nothing in the API, the SDK, or the MCP tools converts to or from major units.
  • Every endpoint needs a credential. There is no anonymous door on /api/v1, including the read-only search and category endpoints. (The public browse experience is the Marka web app's own market pages, which do not go through /api/v1.)
  • Publishing is never automatic. Both MCP servers can create and edit drafts; neither can publish. A draft becomes visible to buyers when a human publishes it — in the web app, or through an explicit POST /api/v1/listings/{id}/publish call.
  • Programmatic writes are a paid feature. Key-authenticated writes on /api/v1 require the api_write entitlement. See Plans & limits.

Going deeper

On this page