sessemi-mcp
OfficialEnables scraping of websites protected by Akamai, bypassing anti-bot protections such as sensor validation and bot manager.
Enables scraping of websites protected by Cloudflare, bypassing anti-bot protections such as turnstile challenges, JS challenges, and managed challenges.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@sessemi-mcpScrape the Idealista listings page for Madrid apartments"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
sessemi-mcp
MCP server that gives AI agents the ability to scrape websites protected by Cloudflare, DataDome, and Akamai.
Works with Claude Desktop, Cursor, Windsurf, Cline, and any MCP-compatible client.
Zero framework dependencies — implements MCP protocol directly. Only depends on the sessemi Python client.
Install
pip install sessemi-mcpOr run directly with uvx:
uvx sessemi-mcpRelated MCP server: FineData MCP Server
Setup
Get a free API key at app.sessemi.com.
Claude Desktop
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):
{
"mcpServers": {
"sessemi": {
"command": "uvx",
"args": ["sessemi-mcp"],
"env": {
"SESSEMI_KEY": "your_api_key"
}
}
}
}Cursor
Add to .cursor/mcp.json in your project:
{
"mcpServers": {
"sessemi": {
"command": "uvx",
"args": ["sessemi-mcp"],
"env": {
"SESSEMI_KEY": "your_api_key"
}
}
}
}Tools
scrape
Scrape a URL, bypassing anti-bot protection. Returns page content.
Parameter | Type | Description |
| string | Target URL (required) |
| string | Two-letter country code for geo-targeting ( |
| bool | Force browser rendering for JS-heavy pages |
| string | Session name for cookie/IP persistence across requests |
| string | Custom HTTP headers as JSON string |
credits
Check your remaining credit balance, tier, and usage.
Example
Ask Claude:
"Scrape the Idealista listings page for Madrid apartments"
Claude will call the scrape tool with the URL and country: "ES", get back the full HTML, and extract the data you need.
"How many credits do I have left?"
Claude calls credits and reports your balance.
How it works
Sessemi handles the hard parts automatically:
Cloudflare — turnstile challenges, JS challenges, managed challenges
DataDome — device checks, slider CAPTCHAs, interstitials
Akamai — sensor validation, bot manager
Your AI agent sends a URL → Sessemi returns the page content. No browser config, no proxy setup, no CAPTCHA services.
Links
Sessemi — web scraping API
Python client —
pip install sessemi
Available Tools
2 toolscreditsA
Check your Sessemi API credit balance — remaining credits, tier, and usage.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states 'Check', implying a read-only operation, but does not explicitly confirm no side effects, rate limits, or authentication requirements. Basic behavioral information is missing, resulting in a low score.
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 a single, front-loaded sentence that conveys all necessary information without filler. Every word is useful, making it highly efficient.
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 no output schema and low complexity, the description adequately covers the tool's purpose. However, it does not specify the structure or format of the returned data, which could be improved for completeness. It is minimally viable.
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?
There are zero parameters, and schema coverage is 100% (empty schema). The description fully compensates by explaining what the tool returns (remaining credits, tier, usage), adding complete meaning beyond the 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 tool checks credit balance and specifies what information is returned (remaining credits, tier, usage). The verb 'Check' and resource 'Sessemi API credit balance' are specific, and it distinguishes from the sibling tool 'scrape', which likely scrapes data.
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 the tool should be used when the user needs to know their credit balance, tier, or usage. Context is clear, but there is no explicit guidance on when not to use it or alternatives. Given only one sibling, the intent is well understood.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scrapeA
Scrape a URL through Sessemi, bypassing Cloudflare, DataDome, and Akamai anti-bot protection. Returns the page content (HTML or JSON depending on the target's Content-Type). Costs credits per request.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Target URL to scrape. | |
| country | No | Two-letter country code for geo-targeting (e.g. FR, US, DE). Auto-selects residential proxies. | |
| render | No | Force browser rendering for JS-heavy pages. | |
| session | No | Session name for cookie/IP persistence across multiple scrapes. Same session = same cookies and IP. | |
| headers | No | Custom HTTP headers as JSON string. Example: '{"Accept": "application/json"}' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description discloses key behaviors: bypassing specific protections, returning HTML/JSON based on Content-Type, and credit consumption. However, it omits details like error handling or rate limits.
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?
Two concise sentences with no redundant information. Front-loaded with the core action and key differentiators.
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?
With 5 parameters fully described in schema and no output schema, the description covers the core function and cost implication. It could mention timeout behavior but is fairly complete for a scraping tool.
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 description adds minimal value beyond schema descriptions. It doesn't clarify parameter usage further beyond what the schema already provides.
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 scrapes a URL and bypasses specific anti-bot protections (Cloudflare, DataDome, Akamai), distinguishing it from the sibling 'credits' tool which likely handles credit management.
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 mentions it costs credits per request, implying usage is limited by credit balance, but provides no explicit guidance on when to use this tool versus alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
v0.1.0- First observed
credits - First observed
scrape
TDQS
The two tools have completely distinct purposes: 'credits' for checking account balance and 'scrape' for performing web scraping. There is no potential for confusion.
The tool names are simple and clear but not consistent in part of speech: 'credits' is a noun while 'scrape' is a verb. A more consistent pattern like 'check_credits' and 'scrape_url' would improve naming.
Only 2 tools is very minimal for a scraping service. Typically such servers include tools for managing sources, viewing history, or handling different output formats. The count is too low for the implied domain.
The tool surface covers only the basic operations: check credits and perform a scrape. Missing obvious features like listing previous scrapes, cancelling jobs, or configuring output options. Agents would likely encounter dead ends.
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
Cloudflare Solver: Scraping API designed to bypass Cloudflare protection.
Bypass Cloudflare API: A powerful scraping API designed to bypass Cloudflare protection.
Web scraping for AI agents. Converts URLs to clean, LLM-ready Markdown with anti-bot bypass.
Enable language models to perform advanced AI-powered web scraping with enterprise-grade reliabili…
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to perform undetectable browser automation that bypasses Cloudflare, antibots, and social media blocks. Provides 105 tools for element extraction, network debugging, and real-world web scraping with a 98.7% success rate on protected sites.1,883MIT
- AlicenseAqualityBmaintenanceEnables AI agents to scrape any website by providing tools for JavaScript rendering, antibot bypass, and automatic captcha solving. It supports synchronous, asynchronous, and batch scraping operations with built-in proxy rotation.5207MIT

ScrapeLab MCPofficial
AlicenseNot gradedqualityDmaintenanceEnables undetectable web scraping and browser automation for AI agents with 84 tools including stealth navigation, element extraction, network interception, and auto cookie consent dismissal. Bypasses anti-bot systems like Cloudflare and DataDome while providing LLM-ready markdown output and full Chrome DevTools Protocol access.MIT- FlicenseNot gradedqualityDmaintenanceEnables AI agents to bypass Cloudflare protection and scrape web content, returning clean Markdown with smart chunking and file export.1-
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/sessemi/sessemi-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server