Marginalia Search · Capability
Marginalia Search API — Search
Marginalia Search API — Search. 1 operations. Lead operation: Execute a web search. Self-contained Naftiko capability covering one Marginalia Search business surface.
What You Can Do
GET
Search
— Execute a web search
/v1/search
MCP Tools
execute-web-search
Execute a web search
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Marginalia Search API — Search
description: 'Marginalia Search API — Search. 1 operations. Lead operation: Execute a web search. Self-contained Naftiko
capability covering one Marginalia Search business surface.'
tags:
- Marginalia Search
- Search
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
MARGINALIA_SEARCH_API_KEY: MARGINALIA_SEARCH_API_KEY
capability:
consumes:
- type: http
namespace: marginalia-search-search
baseUri: https://api2.marginalia-search.com
description: Marginalia Search API — Search business capability. Self-contained, no shared references.
resources:
- name: search
path: /search
operations:
- name: search
method: GET
description: Execute a web search
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: query
in: query
type: string
description: Search terms.
required: true
- name: count
in: query
type: integer
description: Number of results to return.
- name: timeout
in: query
type: integer
description: Maximum execution time in milliseconds.
- name: dc
in: query
type: integer
description: Maximum results per domain.
- name: page
in: query
type: integer
description: Result page (1-indexed).
- name: nsfw
in: query
type: integer
description: NSFW content filtering (experimental).
- name: filter
in: query
type: string
description: Apply a named filter previously created via /filter.
authentication:
type: apikey
key: API-Key
value: '{{env.MARGINALIA_SEARCH_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: marginalia-search-search-rest
port: 8080
description: REST adapter for Marginalia Search API — Search. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/search
name: search
description: REST surface for search.
operations:
- method: GET
name: search
description: Execute a web search
call: marginalia-search-search.search
with:
query: rest.query
count: rest.count
timeout: rest.timeout
dc: rest.dc
page: rest.page
nsfw: rest.nsfw
filter: rest.filter
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: marginalia-search-search-mcp
port: 9090
transport: http
description: MCP adapter for Marginalia Search API — Search. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: execute-web-search
description: Execute a web search
hints:
readOnly: true
destructive: false
idempotent: true
call: marginalia-search-search.search
with:
query: tools.query
count: tools.count
timeout: tools.timeout
dc: tools.dc
page: tools.page
nsfw: tools.nsfw
filter: tools.filter
outputParameters:
- type: object
mapping: $.