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.
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/catalogueis 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/mcpremains 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.
curl --fail-with-body --get \
'https://seekmeridian.com/api/v1/catalogue' \
--header 'Accept: application/json'
service- Optional exact
service_id, for examplemanaged-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 examplewho-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.
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.
{
"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.
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.
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.
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.
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.