
MCP
Connect Keenable APIs as tools to clients that support MCP
The Keenable tools are also available as a Model Context Protocol server, so agents like Claude Code, Claude Desktop, Cursor, and Windsurf can call them directly. No API key is needed โ the MCP server works without an account. Add an API key to remove the hourly request limit and raise rate limits (see Authentication and Rate limits ).
Available tools
Two tools are exposed by the MCP server.
search_web_pages
Search the web and return ranked results with URLs, titles, and descriptions.
The search query.
Restrict results to a specific site (e.g. "techcrunch.com").
Filter to pages acquired/indexed at or after this point in time.
Filter to pages acquired/indexed at or before this point in time.
Filter to pages published at or after this point in time.
Filter to pages published at or before this point in time.
Date and time filters
acquired_after, acquired_before, published_after, and published_before each accept one of the following formats:
-
Date in RFC 3339
full-dateform (YYYY-MM-DD) โ resolves to00:00:00UTC on that date. -
Timestamp in ISO 8601 form (
YYYY-MM-DDTHH:MM:SS[.sss][ยฑHH:MM]). When a timezone offset is not provided, the timezone is interpreted as UTC. -
Relative delta (
<number><unit>, e.g.7d,30min) โ resolves to the request time minus the delta, truncated to minute precision. Supported units:min(minutes),h(hours),d(days),mo(months),y(years).
Example values:
Value Resolves to
2026-01-15 2026-01-15T00:00:00Z
2026-01-15T10:30:00 2026-01-15T10:30:00Z (no offset โ UTC)
2026-01-15T10:30:00Z 2026-01-15T10:30:00Z
2026-01-15T10:30:00.500-05:00 2026-01-15T15:30:00.500Z
7d 7 days before request time, truncated to the minute
30min 30 minutes before request time, truncated to the minute
Relative deltas may be combined with absolute values across the two bounds of a window:
{
"query": "...",
"published_after": "1y",
"published_before": "6mo"
}
{
"query": "...",
"acquired_after": "2024-01-01",
"acquired_before": "30d"
}
For example, at request time 2026-05-18T14:23:45Z, acquired_after: "2h" resolves to 2026-05-18T12:23:00Z โ a document acquired at 12:22:59Z is dropped, one acquired at 12:23:00Z is kept.
fetch_page_content
Fetch a URL and extract content as clean markdown. By default only URLs from the index are supported; this is not a general web scraper. Pass live=true to fetch directly from the source, including URLs that are not indexed.
The URL to fetch.
Maximum number of characters of content to return. Longer content is truncated.
Fetch the page live from the source instead of returning Keenable's indexed copy. Enables fetching URLs that are not indexed.
Returns url, title, and content (markdown). See the Fetch reference for the response shape.
Installation
One-click install
Add Keenable to Cursor or VS Code with a single click:
Add to Cursor
Add to VS Code
Add to VS Code Insiders
Install via CLI
The easiest way to set up the Keenable MCP server for local coding agents is via the Keenable CLI . Once you've installed the CLI, run the following to be guided through the MCP server setup.
keenable configure-mcp
Claude Code
Add the Keenable MCP server with the Claude Code CLI:
claude mcp add keenable \
--transport http https://api.keenable.ai/mcp \
--scope user
To use an API key:
claude mcp add keenable \
--transport http https://api.keenable.ai/mcp \
--scope user \
--header "X-API-Key: keen_ "
Codex
Add the following to ~/.codex/config.toml
[mcp_servers.keenable]
url = "https://api.keenable.ai/mcp"
To use an API key, add the header:
[mcp_servers.keenable]
url = "https://api.keenable.ai/mcp"
http_headers = { "X-API-Key" = "keen_ " }
Other MCP clients
For Claude Desktop, Cursor, Windsurf, and similar:
{
"mcpServers": {
"keenable": {
"url": "https://api.keenable.ai/mcp"
}
}
}
To use an API key:
{
"mcpServers": {
"keenable": {
"url": "https://api.keenable.ai/mcp",
"headers": {
"X-API-Key": "keen_ "
}
}
}
}
After adding the Keenable MCP, disable any built-in or third-party search/fetch tools (WebSearch, WebFetch, brave_search, tavily_search, etc.). Keenable tools replace them โ leaving both active causes agents to pick inconsistently.
OAuth
The remote MCP server at https://api.keenable.ai/mcp supports the MCP OAuth authorization flow, so clients can authenticate without manually passing an API key. In practice, most MCP clients have unstable OAuth implementations, so we don't currently recommend this path. Use an API key instead.
No common issues documented yet. If you hit a problem, the repository's GitHub Issues page is the best place to look.
Licensed under MITโ you can use, modify, and redistribute it under that license's terms.
View the full license file on GitHub โ