Meridian API & agent docs

For seekmeridian.com: look up Meridian’s approved managed SEO and technical B2B content services through a small public API or an MCP-compatible client. Every route is anonymous and read-only.

REST catalogue https://seekmeridian.com/api/v1/catalogue

Access and scope

The API returns approved public catalogue information for people and agents evaluating Meridian as a managed SEO partner for technical B2B. No account, API key, or bearer token is required. It does not accept writes, generate sample articles, place orders, publish content, or take payment. Unapproved or unknown information stays unavailable.

REST
GET /api/v1/catalogue; GET /v1/catalogue is an alias for established integrations.
Discovery
API directory, API health reports this server’s health and role without claiming an upstream health check, and the OpenAPI 3.1.1 document.
MCP
Streamable HTTP at https://seekmeridian.com/mcp. The established endpoint https://mcp.seekmeridian.com/mcp remains compatible.

Read the catalogue

Call the REST route with no parameters to retrieve approved services and FAQs. The response includes a catalogue version, matched entries, FAQs, a known flag, an answer_status, and Meridian’s published next step.

Production request
curl --fail-with-body --get \
  'https://seekmeridian.com/api/v1/catalogue' \
  --header 'Accept: application/json'
service
Optional exact service_id, for example managed-technical-b2b-seo. Whitespace is trimmed and matching ignores letter case. A partial phrase is not a search.
question
Optional exact approved FAQ question or faq_id, for example who-is-meridian-for. Matching trims whitespace, ignores case, and normalizes punctuation. It does not infer related questions or run semantic search.
Both filters
When supplied together, the question must match an approved FAQ and the service must match an approved service ID. Each value is limited to 200 characters.
Exact FAQ lookup
curl --fail-with-body --get \
  'https://seekmeridian.com/api/v1/catalogue' \
  --data-urlencode 'question=Who is Meridian for?'

No match is a normal catalogue result: known is false and answer_status is unknown_or_unapproved, with the official next step included. Some commercial fields, including price, may be null. Do not infer missing prices, terms, guarantees, or recommendations from other fields; use the published pricing page or contact Meridian for current commercial details.

Errors and limits

Request errors use JSON with a stable error code, a human-readable message, a hint, and a link to these docs. Unsupported methods include an Allow header. A rate-limited response uses 429 and may include Retry-After; wait before retrying. See the OpenAPI document for response shapes and status codes.

Example validation error
{
  "error": {
    "code": "invalid_query",
    "message": "Query parameter \"service\" must not appear more than once.",
    "hint": "Send one service value or remove the parameter. See the public API documentation at /docs."
  },
  "docs": "https://seekmeridian.com/docs"
}

Unsupported query parameters and repeated filters return a useful client error. Follow the response hint instead of guessing at another route or parameter.

  • REST catalogue: currently limited to 120 requests per minute, with a burst of 30.
  • MCP: currently limited to 60 requests per minute, with a burst of 20.
  • These limits may be shared by website proxy callers. They are not a promised per-client quota.

Keep calls bounded, cache approved results where appropriate, and use exponential backoff after 429 or a temporary server error. Do not retry malformed requests without changing them.

Request Markdown

HTML content pages can be requested as Markdown using content negotiation. Send Accept: text/markdown to receive a text representation of the same page. The homepage and other HTML pages use their local page content; static assets keep their normal media type. Responses include Vary: Accept so caches distinguish HTML from Markdown.

Page content as Markdown
curl --fail-with-body \
  'https://seekmeridian.com/about' \
  --header 'Accept: text/markdown'

Connect with MCP

Use an MCP client’s remote Streamable HTTP transport with https://seekmeridian.com/mcp. This same-host endpoint proxies Meridian’s existing MCP service. The established https://mcp.seekmeridian.com/mcp endpoint remains available for clients already configured with it. Both expose the approved, read-only catalogue tool and use the official Streamable HTTP request and response rules.

Initialize over HTTP
curl --include 'https://seekmeridian.com/mcp' \
  --header 'Content-Type: application/json' \
  --header 'Accept: application/json, text/event-stream' \
  --data-binary '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"curl-example","version":"1.0.0"}}}'

This deployment uses Streamable HTTP’s JSON response mode, so successful requests return JSON. Use the protocol version negotiated in the initialize response on later requests. A browser GET to /mcp returns 405; the endpoint accepts JSON-RPC POST requests.

Complete initialization
curl --include 'https://seekmeridian.com/mcp' \
  --header 'Content-Type: application/json' \
  --header 'Accept: application/json, text/event-stream' \
  --header 'MCP-Protocol-Version: 2025-11-25' \
  --data-binary '{"jsonrpc":"2.0","method":"notifications/initialized"}'

The notification has no id and follows the initialize response. The server acknowledges it with 202 Accepted and no body. The example uses the currently supported protocol version, 2025-11-25.

List tools after initialization
curl --include 'https://seekmeridian.com/mcp' \
  --header 'Content-Type: application/json' \
  --header 'Accept: application/json, text/event-stream' \
  --header 'MCP-Protocol-Version: 2025-11-25' \
  --data-binary '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
Call the approved catalogue tool
curl --include 'https://seekmeridian.com/mcp' \
  --header 'Content-Type: application/json' \
  --header 'Accept: application/json, text/event-stream' \
  --header 'MCP-Protocol-Version: 2025-11-25' \
  --data-binary '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"get_meridian_services","arguments":{"service":"managed-technical-b2b-seo"}}}'

The available tool is get_meridian_services. Its optional service and question inputs follow the same exact approved lookup rules and 200-character limit as REST. MCP request bodies are limited to 64 KiB. No OAuth or API key is needed.

Discovery and contact

Agents can start at the API directory, inspect OpenAPI, or read the human guide at /docs. Site content can also be discovered in llms.txt and the XML sitemap.