Skip to content
Docs

9 results

Publisher guide

Create a publisher

A publisher makes a database, API, MCP server, or compute service discoverable through Seren. Define what it offers, how Seren reaches it, which payment assets it accepts, and which operations agents may call. Publisher registration is normally a one-time CLI task; use Seren MCP when an assistant should help inspect or update it later.

Publisher types

Choose what you are publishing

API publishers expose declared HTTP operations. MCP publishers expose the tools and resources of a Streamable HTTP server. Database publishers provide controlled query access through SerenDB, Neon, Supabase, or MongoDB. The publisher type determines which connection and policy fields are required.

For integration publishers, integration_type selects the primary interface, while api_url and mcp_endpoint independently enable REST and native MCP proxying. A single publisher may configure both: ordinary paths use the REST API, and _mcp/* routes use the native MCP server.

API publishers

Publish an HTTP API

Publisher management is organization-scoped. List your organizations first, then pass the owning organization ID to the create command. The current API also requires the publisher's payment destination and network identifiers; use the values provisioned for the publisher account.

Create an API publisher with the CLI
seren organizations

seren agent create-publisher   --organization-id <organization-id>   --name "Research Briefs"   --slug research-briefs   --description "Company and market research briefs"   --publisher-category integration   --integration-type api   --api-url https://research.example.com   --wallet-address <publisher-payment-destination>   --wallet-network-id <publisher-payment-network-id>   --billing-model pay_per_use   --upstream-cost-response-path usage.cost

Seren encrypts upstream authentication material. Do not put secrets in descriptions, endpoint examples, or other discoverable metadata.

Upstream authentication

Choose how Seren authenticates

API publishers support four upstream authentication modes. static (the default) attaches an encrypted publisher-stored API key, jwt signs a short-lived token per request, and oauth2_cc uses an OAuth client-credentials grant. passthrough lets each caller supply their own upstream credential instead.

With passthrough, the caller's Authorization header is reserved for their Seren credential and is never forwarded to a REST upstream. The upstream credential travels in a separate header that the publisher explicitly configures: allowed_passthrough_headers whitelists caller headers to forward as-is, and passthrough_header_rewrite renames a caller header on the way upstream. Authorization may only appear as a rewrite target, never as a source or allowlist entry, and Seren removes the source header after rewriting it.

Create a passthrough API publisher with the CLI
seren agent create-publisher   --organization-id <organization-id>   --name "Linear BYOK"   --slug linear-byok   --description "Linear issue tracking with your own API key"   --publisher-category integration   --integration-type api   --api-url https://api.linear.app   --auth-type passthrough   --allowed-passthrough-header X-Passthrough-Authorization   --passthrough-header-rewrite-json '{"X-Passthrough-Authorization":"Authorization"}'   --wallet-address <publisher-payment-destination>   --wallet-network-id <publisher-payment-network-id>

Callers then authenticate to Seren normally and place the upstream credential in the configured source header. Seren rewrites it to Authorization before the request reaches the upstream.

Call a passthrough publisher
curl https://api.serendb.com/publishers/linear-byok/issues   -H "Authorization: Bearer $SEREN_API_KEY"   -H "X-Passthrough-Authorization: Bearer $LINEAR_API_KEY"

Database publishers

Publish a database

A database publisher connects a supported provider to Seren's query interface. For SerenDB, identify the project and branch to expose. For an external provider, use its corresponding database type and connection flags instead.

Create a SerenDB publisher with the CLI
seren agent create-publisher   --organization-id <organization-id>   --name "Research Warehouse"   --slug research-warehouse   --description "Curated company and market research data"   --publisher-category database   --database-type serendb   --project-id <serendb-project-id>   --branch-id <serendb-branch-id>   --database-name research   --wallet-address <publisher-payment-destination>   --wallet-network-id <publisher-payment-network-id>

API configuration

Describe callable operations

Endpoint definitions make an integration discoverable and enforce access policy. Record the method, path, parameters, and description; mark administrative or unsafe operations as protected. Treat any undeclared-operation policy as part of the publisher's security boundary, not merely documentation.

Describe operations through Seren MCP
Inspect the research-briefs publisher, then prepare an update that declares these operations:
- GET /briefs: list available research briefs
- GET /briefs/{brief_id}: retrieve one research brief

Block undeclared paths. Show me the proposed update before applying it.

Publisher pricing

Configure asset-specific pricing

Pricing is configured per accepted asset. After the publisher's accepted assets are provisioned, set the relevant per-call, per-method, execution, or row-based prices for its type. Seren MCP is the convenient path for this occasional administrative update because it can inspect the existing publisher before changing its pricing.

Update pricing through Seren MCP
Inspect the current pricing for the research-briefs publisher.
Set its per-call price to 0.01 and enable prepaid billing.
Show me the resulting pricing configuration before making any other changes.

Verification

Verify discovery and access

Retrieve the organization-owned publisher, then inspect its public store entry. Confirm the displayed metadata, accepted assets, pricing, authentication behavior, and protected operations before directing agents to it.

Verify the publisher with the CLI
seren agent get-publisher research-briefs