Secant Agent Research
This MCP server enables autonomous agents to perform paid web research via the Secant Agent Research x402 API, using a pay-per-request model with Base USDC.
search: Run ranked web searches with natural language queries, returning up to 10 structured results.research_pack: Full end-to-end research workflow combining search, page extraction, normalized JSON output, and citations in a single call. Supports up to 5 page extractions.extract_page: Extract readable content, metadata, links, and content hashes from one or more known URLs.monitor_diff: Monitor page changes by comparing current content against a previous hash or text snapshot — useful for tracking docs, pricing, or competitor pages.
Payment flow (all tools): Unpaid calls return an x402 payment requirement. Pay the quoted Base USDC amount, then retry with the payment proof and an optional idempotency key to receive results.
Secant Agent Research MCP
MCP wrapper for the Secant Agent Research Pack, a paid x402 research API for autonomous agents.
The server exposes tools for:
search: ranked web search.research_pack: search, selected page extraction, normalized JSON, and citations.extract_page: readable page text and metadata extraction.monitor_diff: page change checks.
Tool Behavior
All tools use the same retry-safe x402 pattern:
Call the tool without
paymentto receive the upstream payment requirement.Pay the quoted Base USDC requirement with an x402-compatible client.
Retry with the payment proof and, when available, the same
payment_identifier.
The wrapper returns payment_required: true and the upstream 402 body for unpaid calls. It does not execute paid work until the live API accepts the payment proof.
The native paid API uses HTTP 402 and Base USDC over x402. If you call a tool without a payment proof, the tool returns the upstream payment requirement so an agent can pay and retry. If you include a valid payment proof, the tool forwards it to the live API.
Related MCP server: JMT x402 MCP Server
Run
docker build -t secant-agent-research-mcp .
docker run --rm -i secant-agent-research-mcpEnvironment
Variable | Default | Description |
|
| Base URL for the live Secant Agent Research API. |
Canonical Discovery
Buyer page: https://agentic.secantoutreach.com/agent-research
Smithery listing: https://smithery.ai/servers/hello-j2mo/secant-agent-research-pack
x402 manifest: https://agentic.secantoutreach.com/.well-known/x402.json
Agent card: https://agentic.secantoutreach.com/agent-card.json
Available Tools
4 toolsextract_pageAInspect
Extract readable content, metadata, links, and hashes from page URLs.
Use this when the caller already knows which pages matter and only needs cleaned extraction output. Blocked or failed pages are returned as extraction errors by the upstream API.
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | One or more absolute page URLs to extract. The live API enforces service limits. | |
| payment | No | Optional x402 payment proof returned by the buyer after accepting the 402 payment requirement. | |
| payment_identifier | No | Optional idempotency key/payment identifier used to retry safely without rerunning expensive work. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses that blocked/failed pages result in extraction errors, but does not mention whether the operation is read-only, side effects, authentication needs, or rate limits. The tool name 'extract' hints at read behavior, but more explicit disclosure is expected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, each earning its place: first sentence states action and outputs, second sentence gives usage guidance, third explains error handling. It is front-loaded and efficient with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists (as per context signals), the description does not need to detail return values, but it does list outputs (content, metadata, links, hashes). It explains error handling adequately. However, it could elaborate on the payment parameters and prerequisites for success.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description does not add new meaning beyond what the input schema already provides (e.g., URLs with service limits, payment details). The context of extracting content indirectly applies to the 'urls' parameter, but no additional parameter-specific guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool extracts 'readable content, metadata, links, and hashes' from page URLs. It distinguishes from siblings by specifying 'when the caller already knows which pages matter', implying it's for targeted extraction rather than search or monitoring.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says to use this tool 'when the caller already knows which pages matter', providing clear context. It also mentions that blocked/failed pages return errors, but does not explicitly state when not to use it or suggest alternatives like search or monitor_diff.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
monitor_diffAInspect
Check whether a page changed since a previous hash or text snapshot.
Use this for lightweight monitoring of docs, pricing pages, competitor pages, status pages, or other URLs an agent revisits. Unpaid calls return x402 payment terms before execution.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Absolute page URL to fetch and compare against prior state. | |
| previous_hash | No | Optional previous content hash from an earlier extract or diff check. | |
| previous_text | No | Optional previous readable text to compare with the current page text. | |
| payment | No | Optional x402 payment proof returned by the buyer after accepting the 402 payment requirement. | |
| payment_identifier | No | Optional idempotency key/payment identifier used to retry safely without rerunning expensive work. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that unpaid calls return x402 payment terms, but lacks other behavioral details like read-only nature, caching, or effects of providing hash vs text. No annotations to assist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise paragraph of ~60 words, front-loads the main action, and each sentence adds value. No unnecessary repetition or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema and 5 parameters, the description covers purpose, usage, and payment behavior. It could mention behavior when no previous state is given, but overall is fairly complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so baseline is 3. Description adds minimal extra meaning, only the payment caveat for payment-related params. It does not significantly enhance understanding beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'check' and resource 'whether a page changed', with specific use cases like monitoring docs and pricing pages. It effectively distinguishes from sibling tools which are about extraction, research, and search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use this for lightweight monitoring...' and notes the payment requirement. Provides clear context but does not explicitly list cases to avoid or compare with siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
research_packAInspect
Run the full paid research workflow: search, extraction, JSON, and citations.
Use this when an agent needs a compact source-backed research packet rather than raw search results. Unpaid calls return x402 payment terms; paid retries return normalized results and extraction details.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Research question or search query for the workflow. | |
| max_results | No | Maximum number of ranked search results to include. | |
| extract_pages | No | Number of top-ranked result pages to extract for readable text and citations. | |
| payment | No | Optional x402 payment proof returned by the buyer after accepting the 402 payment requirement. | |
| payment_identifier | No | Optional idempotency key/payment identifier used to retry safely without rerunning expensive work. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavioral disclosure. It reveals the paid nature, the x402 payment requirement, and the retry behavior with normalized results. However, it does not mention error handling or what happens after payment failure, which would be helpful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with three sentences, each contributing distinct value: purpose, usage guidance, and payment behavior. It is front-loaded and contains no redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 parameters, payment workflow) and the existence of an output schema, the description covers the main workflow and payment mechanism adequately. It could elaborate on parameter interactions (e.g., how max_results and extract_pages relate) but is sufficient for an agent to understand the tool's role.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are already well-described. The description adds overall context about the workflow (search, extraction, JSON, citations) but does not provide additional details for individual parameters beyond what the schema offers. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool runs a full paid research workflow combining search, extraction, JSON, and citations. It distinguishes itself from raw search results and sibling tools like extract_page and search by emphasizing it produces a compact source-backed packet.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly advises using this tool when an agent needs a compact research packet rather than raw search results. It also clarifies payment behavior: unpaid calls return x402 terms, paid retries return normalized results. This provides clear context and differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchAInspect
Run ranked web search for autonomous agents.
Unpaid calls return the upstream HTTP 402/x402 payment requirement before execution. Paid retries with a valid payment proof return structured search results from the live Secant Agent Research API.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Natural language web search query to run for the agent. | |
| max_results | No | Maximum number of ranked search results to return. | |
| payment | No | Optional x402 payment proof returned by the buyer after accepting the 402 payment requirement. | |
| payment_identifier | No | Optional idempotency key/payment identifier used to retry safely without rerunning expensive work. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the payment gate (HTTP 402) and the live API source, providing essential behavioral context beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, concise and front-loaded with the core action. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (payment system, 4 params, output schema), the description covers the payment flow clearly. It could mention the output schema or provide sibling differentiation, but existing output schema mitigates the need.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds no extra meaning to parameters beyond what's in the schema, such as clarifying 'payment_identifier' as idempotency key.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs ranked web search, specifying it's for autonomous agents. However, it does not explicitly distinguish from sibling tools like extract_page or research_pack, which could cause ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context through payment requirements (unpaid vs paid), but lacks explicit guidance on when to use this tool over alternatives like extract_page or research_pack.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
The tools are distinct in purpose: search for web searching, extract_page for content from known URLs, monitor_diff for change detection, and research_pack as a higher-level combined workflow. While research_pack encompasses search and extraction, it is presented as a different service level, so confusion is minimal.
Three tools follow a verb_noun pattern (extract_page, monitor_diff, research_pack), with 'research_pack' being noun_noun but still clear. 'search' is a single verb, slightly deviating but acceptable. Overall pattern is recognizable and consistent.
Four tools is an appropriate number for a research-focused server, covering key operations (search, extraction, monitoring, and a bundled paid workflow) without being overbearing or insufficient.
Core research workflows (search, extract, monitor, full research pack) are covered. Minor gaps exist, such as lacking a tool to list or retrieve previous research packs, but the set is functional for autonomous agents.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
8 pay-per-call web intel tools over MCP. Free discovery, calls settle in USDC on Base (x402).
5 pay-per-call SEO tools over MCP. Free discovery, tool calls settle in USDC on Base via x402.
Pay-per-call (x402/USDC-Base) web + crypto data tools for AI agents: audit, extract, crypto, DeFi.
Live web search and research synthesis for agents, with free samples and x402 USDC payments.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenancePay-per-call web search for AI agents, settled in USDC on Base via the x402 protocol. No API key or subscription required; users fund a wallet and get a web_search tool.141MIT
- AlicenseBqualityCmaintenanceExposes 25 paid API endpoints as MCP tools for AI agents, with payments in USDC on Base mainnet via the x402 protocol, enabling tasks like web search, company intelligence, and crypto research.2578MIT

fetcher.cloudofficial
AlicenseNot gradedqualityDmaintenanceMCP server that gives AI agents web capabilities such as rendering pages, extracting content, resolving links, and inspecting domains, with per-call USDC payments via x402.MIT- AlicenseNot gradedqualityDmaintenanceMCP server providing 11 pay-per-call web intelligence tools (page reading, PDF extraction, RSS parsing, screenshots, summarization, structured data extraction) for AI agents, paid automatically in USDC via the x402 protocol on Base mainnet with no API keys required.49MIT
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/jnilrac/secant-agent-research-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server