Awesome MCP Servers by AI Anytime

Directory / Marketing, content & social

Ahel

Data and tools for AI agents from one catalog: company and people enrichment, SEO and SERP data, social media data, official EU business registers and sanctions lists; the price is shown before each call. OAuth sign-in at ahel.ai, free to start, pay per call. Endpoint: https://mcp.ahel.ai · Docs

Live  Answered an MCP handshake without credentials and listed 10 tools.

Category
Marketing, content & social
Transport
http
Source
https://github.com/ahel-technologies/ahel
Endpoint
https://mcp.ahel.ai
MCP Registry
ai.ahel/ahel
Reports itself as
ahel 1.0.0
Protocol
2025-06-18
Tools
10
Context cost
about 3,112 tokens for the tool definitions (estimated at four characters per token)
Tool definitions last changed
no change seen since first check
Handshake time
364 ms
Repository
0 stars · last push 2026-11-02
Last checked
2026-11-03 10:54:34 UTC
Listed since
2026-11-03

Health and compatibility

Endpoint reachableVerifiedResponded in 364 ms
MCP handshake (initialize)VerifiedCompleted without credentials
Tool discovery (tools/list)Verified10 tools listed
AuthenticationVerifiedNone needed to connect
Protocol versionVerified2025-06-18
TransportVerifiedStreamable HTTP
Capabilities declaredVerifiedextensions, resources, tools

Last checked . Verified means the check saw it happen; it says nothing about whether the server is safe.

Recent history

1 daily check so far. Green answered, violet asked for auth, red did not answer.

Set up in your client

Claude Code

Run this in a terminal:

claude mcp add --transport http ahel https://mcp.ahel.ai

Claude Desktop

Open Settings → Connectors → Add custom connector and paste this URL:

https://mcp.ahel.ai

Or bridge it through mcp-remote in claude_desktop_config.json (needs Node.js):

{
  "mcpServers": {
    "ahel": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.ahel.ai"
      ]
    }
  }
}

Cursor

Add to Cursor

Or add it to ~/.cursor/mcp.json (or .cursor/mcp.json in a project):

{
  "mcpServers": {
    "ahel": {
      "url": "https://mcp.ahel.ai"
    }
  }
}

VS Code

Add to VS Code

Or add it to .vscode/mcp.json:

{
  "servers": {
    "ahel": {
      "type": "http",
      "url": "https://mcp.ahel.ai"
    }
  }
}

Or from a terminal:

code --add-mcp '{"name": "ahel", "type": "http", "url": "https://mcp.ahel.ai"}'

Windsurf

Add it to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "ahel": {
      "serverUrl": "https://mcp.ahel.ai"
    }
  }
}

Other clients

Most clients accept this shape. The endpoint is:

https://mcp.ahel.ai
{
  "mcpServers": {
    "ahel": {
      "type": "http",
      "url": "https://mcp.ahel.ai"
    }
  }
}

If it does not connect

Tools 10

Names, descriptions and input schemas exactly as the server returned them on 2026-11-03. This is the server author's own text. Nothing is run from this page. Labels such as read-only are declared by the server and are not verified. Raw JSON

balanceread-onlyThe workspace's prepaid balance in USD, what runs in flight hold, what settled runs used today and this month …

The workspace's prepaid balance in USD, what runs in flight hold, what settled runs used today and this month (shown to the Owner), any daily spend cap on the team API key this connection uses, and where to top up. Check it when a run is refused for funds, or before a job that will make many runs. Free; changes nothing. NOT for: the price of one run, which is capability_inspect.

Takes no parameters.

Example call (required arguments only, placeholder values):

{
  "method": "tools/call",
  "params": {
    "name": "balance",
    "arguments": {}
  }
}
capability_inspectread-onlyRead one task or provider tool from Ahel's catalog by its id: its exact inputs (Ahel's own contract, or the …

Read one task or provider tool from Ahel's catalog by its id: its exact inputs (Ahel's own contract, or the published reference input when Ahel has none), its status and exact reason, Ahel's price per provider (Unknown when Ahel has no rate), for a temporarily unavailable item the market prices seen elsewhere, for comparison, and the exact run_capability call when it can run. With arguments it also prices that exact run before anything runs: Ahel's quote, the most it may cost, the amount a run would reserve and whether the balance covers it; nothing is reserved, charged or started. Free; changes nothing. NOT for: finding ids, which is capability_search, or running it, which is run_capability.

ParameterTypeDescription
idstringrequiredA task id or tool id from capability_search.
argumentsobjectoptionalOptional: the run's inputs, by name, to price that exact run (a quote only; nothing runs).
max_itemsnumberoptionalWith arguments: most rows to price for, 1-100. Default 10.
timeout_secondsnumberoptionalWith arguments: longest the run may take, 1-180 seconds. Default: the provider's own (60, more for slow sources).
endpoint_idsstring[]optionalWith arguments: price the run on these providers only (endpoint ids from this answer).
exclude_endpoint_idsstring[]optionalWith arguments: price the run without these providers.

Example call (required arguments only, placeholder values):

{
  "method": "tools/call",
  "params": {
    "name": "capability_inspect",
    "arguments": {
      "id": "..."
    }
  }
}
capability_run_statusread-onlyWithout execution_id: the paid data capabilities this workspace can run, each with its providers and exact …

Without execution_id: the paid data capabilities this workspace can run, each with its providers and exact prices. With execution_id: that run's state, attempts and exact cost, settled once in the ledger when final; with results true, its rows and provenance (include_raw true adds the provider's own answer). Generated images and audio come as a signed link (media_url, valid for days) with their type and size; a small one is also attached as an image or audio block. A long result answers as many rows as fit and says the offset that reads the rest. NOT for: finding a task or tool to run, which is capability_search.

ParameterTypeDescription
execution_idstringoptionalThe id run_capability answered.
resultsbooleanoptionalWith execution_id: include the rows.
include_rawbooleanoptionalWith results: also include the winning provider's own answer (raw) and the normalised output. Large and repeats the rows; leave it out unless the rows lack a field you need.
offsetnumberoptionalWith results: the first row to answer (0-based), from next_offset when a long result did not fit in one answer. Default 0.
full_textbooleanoptionalWith results: answer long text values whole. By default a result of several rows cuts each text value at 4000 characters and lists the cut fields in that row's truncated_fields.
max_itemsnumberoptionalWith results: the max_items the run was started with, so the answer can say when the rows stopped at that limit. run_capability's next names it.

Example call (required arguments only, placeholder values):

{
  "method": "tools/call",
  "params": {
    "name": "capability_run_status",
    "arguments": {}
  }
}
capability_searchread-onlySearch Ahel's catalog of data tasks and provider tools by words, a task id or a tool id: company and people …

Search Ahel's catalog of data tasks and provider tools by words, a task id or a tool id: company and people enrichment, SEO, social, ads, e-commerce, reviews, AI generation, market and public data. Each result has its genuine task id or tool id, its platform, its status (ready, needs_connection, coming_soon meaning temporarily unavailable because Ahel has no provider for it yet, or unavailable while the run service is down) with the exact reason; a temporarily unavailable result may carry a market price seen elsewhere, for comparison. The same catalog, ids and statuses as the Catalog page on ahel.ai. Describe the job in plain words; results are ranked by how well they fit. When nothing fits it answers verdict none with the three nearest items: then call catalog_request. Free; changes nothing. NOT for: one item's exact inputs and prices, which is capability_inspect, or the team's own tools, which is my_tools.

ParameterTypeDescription
querystringoptionalWords to match, or an exact task id (companies.enrich) or tool id.
platformstringoptionalOptional platform id (companies, google, image-gen): only its items; with no query, its whole shelf.
kindstringoptionalOptional: only tasks or only provider tools. One of: task, tool
statusstringoptionalOptional: only items in this state. One of: ready, needs_connection, coming_soon, unavailable
limitnumberoptionalHow many results, 1-50. Default 10.

Example call (required arguments only, placeholder values):

{
  "method": "tools/call",
  "params": {
    "name": "capability_search",
    "arguments": {}
  }
}
catalog_requestcan modifyAsk Ahel to add a data task or provider tool the catalog does not have yet: call it when capability_search …

Ask Ahel to add a data task or provider tool the catalog does not have yet: call it when capability_search answers verdict none and none of its nearest items fits. Give what you need in plain words, an example input, and the most you would pay for one call. Answers a request id; asking again for the same thing adds to that request instead of making a new one. Free; runs nothing and charges nothing. NOT for: finding what already exists, which is capability_search.

ParameterTypeDescription
whatstringrequiredWhat you need done, in plain words: the job, not a provider name.
example_inputanyoptionalOptional: one example input, as text or an object (a domain, a profile URL, a name).
max_price_usdnumberoptionalOptional: the most you would pay for one call, in USD.

Example call (required arguments only, placeholder values):

{
  "method": "tools/call",
  "params": {
    "name": "catalog_request",
    "arguments": {
      "what": "..."
    }
  }
}
feedbackcan modifyRate one run or one catalog request of this workspace good or bad, with an optional note on what was right or …

Rate one run or one catalog request of this workspace good or bad, with an optional note on what was right or wrong (missing rows, wrong data, too slow). Ahel reads every rating to fix providers and the catalog. Free; changes nothing else. NOT for: reading a run's state or rows, which is capability_run_status.

ParameterTypeDescription
idstringrequiredAn execution id from run_capability, or a request id from catalog_request.
ratingstringrequiredgood or bad. One of: good, bad
notestringoptionalOptional: what was right or wrong, in a sentence or two.

Example call (required arguments only, placeholder values):

{
  "method": "tools/call",
  "params": {
    "name": "feedback",
    "arguments": {
      "id": "...",
      "rating": "good"
    }
  }
}
get_startedread-onlyHow to start with Ahel: call this when the person asks what Ahel is, what it can do or how to begin. Returns …

How to start with Ahel: call this when the person asks what Ahel is, what it can do or how to begin. Returns what Ahel is, how the prepaid balance works, the three steps to find, price and run any data task or provider tool, and ready example prompts. Reads only; changes nothing. NOT for: finding a data task or provider tool for a specific ask, which is capability_search.

Takes no parameters.

Example call (required arguments only, placeholder values):

{
  "method": "tools/call",
  "params": {
    "name": "get_started",
    "arguments": {}
  }
}
my_toolscan modifydestructiveexternal accessThis team's own tools: the APIs and MCP servers the team added on ahel.ai under Your own tools. Without tool, …

This team's own tools: the APIs and MCP servers the team added on ahel.ai under Your own tools. Without tool, lists each one with its tools, their inputs and the exact call. With tool ("<key>/<tool name>" from that list) and arguments, calls it with the team's saved credentials, which never enter the chat. NOT for: Ahel's catalog of data tasks and provider tools, which is capability_search. If the transport times out, do not resubmit the work: call again with the same ids and poll.

ParameterTypeDescription
toolstringoptionalOptional: "<key>/<tool name>" from the list, to call that tool. Omit to list the team's own tools.
argumentsobjectoptionalWith tool: the tool's arguments, matching the inputs the list shows.

Example call (required arguments only, placeholder values):

{
  "method": "tools/call",
  "params": {
    "name": "my_tools",
    "arguments": {}
  }
}
reviewcan modifyRate how useful one finished run of this workspace was, after you have used its result: useful, partly, …

Rate how useful one finished run of this workspace was, after you have used its result: useful, partly, not_useful, or not_sure when you cannot tell, with an optional reason about the result (missing rows, wrong data, stale). One review per run; reviewing it again replaces the earlier one. Ahel reads every review to rank and fix providers. Leave out private information, keys and raw rows. Free; changes nothing else. NOT for: a catalog request, or reporting something confusing or broken, which is feedback.

ParameterTypeDescription
run_idstringrequiredThe execution id run_capability answered.
usefulnessstringrequiredHow useful the result was. One of: useful, partly, not_useful, not_sure
reasonstringoptionalOptional: why, in a sentence or two, about the result.

Example call (required arguments only, placeholder values):

{
  "method": "tools/call",
  "params": {
    "name": "review",
    "arguments": {
      "run_id": "...",
      "usefulness": "useful"
    }
  }
}
run_capabilitycan modifyexternal accessRun one paid data capability (company data, people and contact data and the like) through Ahel's provider …

Run one paid data capability (company data, people and contact data and the like) through Ahel's provider execution: it is quoted, the exact price is reserved from the workspace balance, and the run starts. Give id, a task id or tool id from capability_search: it runs only through the v2 capability Ahel's task map binds to it, and an item that is not ready is refused with its exact reason before anything is quoted. It then waits up to wait_seconds (default 20, at most 50; 0 answers at once): when the run finishes in that time, this same answer has its state, exact cost and rows, and generated images and audio as links; otherwise it answers the execution id, and capability_run_status reads the run. Data collection only: a capability that writes or has a side effect is refused. Ahel picks the provider unless endpoint_ids pins one; exclude_endpoint_ids leaves providers out. Give idempotency_key so a retry after a lost answer is safe: the same key answers the same run, with no new charge. Give tag (such as a customer name) to see usage and cost by tag in Activity. NOT for: the team's own tools, which is my_tools.

ParameterTypeDescription
idstringoptionalA task id or tool id from capability_search or capability_inspect.
capability_idstringoptionalInstead of id: a v2 capability id from capability_run_status (no execution_id).
argumentsobjectrequiredThe capability's inputs, by name.
max_itemsnumberoptionalMost rows to collect, 1-100. Default 10.
timeout_secondsnumberoptionalLongest the run may take, 1-180 seconds. Default: the provider's own (60, more for slow sources).
endpoint_idsstring[]optionalOptional: run only on these providers, by the endpoint ids capability_inspect lists. Leave it out to let Ahel pick (the default).
exclude_endpoint_idsstring[]optionalOptional: never use these providers, by the endpoint ids capability_inspect lists. Ahel picks among the rest.
wait_secondsnumberoptionalOptional: how long to wait for the run to finish and answer its rows here, 0-50 seconds. Default 20; 0 answers the execution id at once.
idempotency_keystringoptionalOptional: your own key for this run, 8 to 200 letters, digits, dots, underscores, colons or hyphens. Sending the same call again with the same key answers the same run with no new charge; the same key with different inputs is refused.
tagstringoptionalOptional: a label for this run, such as the customer or project it is for: 1 to 64 lowercase letters, digits, dots, dashes or underscores. Activity shows runs and cost by tag. It stays in Ahel and is never sent to a provider.

Example call (required arguments only, placeholder values):

{
  "method": "tools/call",
  "params": {
    "name": "run_capability",
    "arguments": {
      "arguments": {}
    }
  }
}

Resources 1

Badge

Maintain this server? Put its live status in your README:

MCP status badge

[![MCP status](https://mcp.aianytime.net/badge/ahel.svg)](https://mcp.aianytime.net/s/ahel/)

Edit this entry · Report a problem

More in Marketing, content & social

Checks record what a server answered, not whether it is safe. A listing is not a security audit; read a server's source and permissions before you connect it. Add a server · JSON · llms.txt · llms-full.txt

Browse: Agents, IDEs & developer tools · Search & discovery · Knowledge, memory & context · Media & generation · Security · Finance & markets · Marketing, content & social · Cloud, ops & data · Commerce, travel & logistics · Work & productivity · No account needed · Local servers