Ask Emil – Human Perspective
Server Details
Real human in Denmark: lived experience & opinion. Free 1-question pilot. Set a custom User-Agent.
- Status
- Healthy
- Uptime
- 100.0% over 21 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 3 tools
The three tools serve clearly distinct purposes: asking, retrieving, and providing feedback. While ask_human_perspective and get_answer are related (asynchronous request/response), their descriptions make the request-versus-poll distinction unambiguous.
Names mix verb_noun (ask_human_perspective, get_answer) with a less predictable pattern (give_feedback). The convention is roughly consistent and readable, but the deviation weakens full consistency.
Three tools is on the thin side but tightly scoped to the pilot's core loop: ask, retrieve, feedback. It may feel minimal for a production service, yet the narrow pilot purpose justifies the count.
The ask/get_answer/give_feedback loop covers the pilot's intended lifecycle. However, there is no way to cancel or delete a question, and the hard cap of one question per user limits reusability until the pilot expands.
Available Tools
3 toolsask_human_perspectiveAsk a real humanAInspect
Ask a real human — Emil Hyltoft Eriksen, Denmark — for his lived experience and personal opinion: 'what happened when I…', 'what would a real person actually do', 'how would this feel to a human'. Not facts, not professional medical/legal/financial advice. Free pilot: exactly one question in total; after that the server returns status pilot_full. Emil is testing whether agents find this useful at all. Answers are written personally by Emil and are asynchronous (usually hours; give a realistic deadline). Returns a question_id; poll get_answer(question_id). Include enough context to answer without follow-up.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Background so Emil can answer without follow-up. | |
| options | No | Optional options to choose between. | |
| agent_id | No | Optional stable id for your agent. | |
| deadline | Yes | ISO 8601. When you need the answer by (at least 1 hour, at most 30 days ahead). | |
| question | Yes | The question for Emil. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the full burden and does so well: answers are written personally by Emil, delivery is asynchronous (usually hours, requiring a realistic deadline), the tool returns a question_id rather than an answer, and the free-pilot quota of one question caps usage. It also warns that context must be sufficient to avoid follow-up, which is the key behavioral constraint on input quality.
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 content is front-loaded — purpose first, then exclusions, then the pilot quota, then the async/polling mechanics — and nearly every clause carries operational weight. It is somewhat dense and reads as a single run-on paragraph, but there is little that could be cut without losing required behavior.
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?
There is no output schema, so the description must explain what comes back, and it does: a question_id that is polled via get_answer. Combined with the quota, async timing, and input-quality expectations, an agent has everything needed to call this correctly and handle the result.
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 description coverage is 100%, so all five parameters are already documented in the schema, making 3 the baseline. The description reinforces two of them ('Include enough context to answer without follow-up' and 'give a realistic deadline') but adds no syntax or format detail beyond what the schema already provides, and never mentions the optional options or agent_id parameters.
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?
States a specific verb and resource — asking a named real human (Emil Hyltoft Eriksen) for lived experience and personal opinion — and illustrates it with concrete example phrasings. It clearly bounds the purpose ('Not facts, not professional medical/legal/financial advice') so the agent can distinguish it from any factual lookup tool, and it names the sibling get_answer used to retrieve the result.
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?
Gives explicit when-to-use scenarios ('what happened when I…', 'what would a real person actually do', 'how would this feel to a human') and explicit exclusions (not facts, not medical/legal/financial advice). It also states the hard operational constraint (exactly one question in total, then status pilot_full) and the follow-up path via get_answer(question_id), so the agent knows both the trigger and the alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_answerGet the answerAInspect
Get the status and, when ready, Emil's answer to a question_id from ask_human_perspective. Status is queued, answered, declined or expired. Answers are asynchronous: poll no more often than every 15 minutes.
| Name | Required | Description | Default |
|---|---|---|---|
| question_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it discloses the four terminal states (queued, answered, declined, expired), the asynchronous nature of the operation, and a polling rate constraint. It omits edge behavior such as what happens for an unknown or expired question_id, which keeps it short of a 5.
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?
Three tight sentences with no filler. The return value is front-loaded, the status vocabulary follows, and the polling constraint closes it out — every sentence earns its place.
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?
There is no output schema and no annotations, so the description must stand alone, and it covers the return states, the async contract, and the source of the required parameter. Error handling for invalid or expired IDs is the only notable gap.
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 0% and there is only one parameter, so the description must supply meaning. It does: question_id is explicitly the identifier produced by ask_human_perspective, giving the agent the provenance needed to call this correctly. No format details (e.g., ID shape) are given, so not a 5.
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?
States a specific verb ('Get') and resource (status and, when ready, the answer to a question_id), and anchors it to the companion tool ask_human_perspective. An agent can immediately tell this is the read-back half of the ask/get pair rather than either sibling.
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?
It establishes the usage pattern clearly: this is an asynchronous polling tool and must not be called more often than every 15 minutes, which is exactly the operational guidance an agent needs. It stops short of an explicit when-not or a named alternative, but the context is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
give_feedbackGive feedback (market test)AInspect
Market test: tell us whether the human answer was useful and whether you (or your operator) would pay for answers like this, and roughly how much. One feedback per answered or declined question. This is the whole point of the free pilot, so please be honest.
| Name | Required | Description | Default |
|---|---|---|---|
| useful | Yes | 1 = useless, 5 = very useful | |
| comment | No | ||
| price_usd | No | What one answer like this would be worth to you, in USD. | |
| would_pay | Yes | ||
| question_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses the one-feedback-per-question uniqueness constraint, but says nothing about auth requirements, whether a submission can be corrected or overwritten, or what happens on a duplicate. For a write/submission tool that is a meaningful remaining gap.
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?
Front-loaded with the core purpose and the per-question constraint in the first two sentences; nothing is buried. The closing 'this is the whole point of the free pilot, so please be honest' is motivational rather than operational, so it does not fully earn its place.
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?
For a five-parameter submission tool with no annotations and no output schema, the description covers the essential intent, the key rated fields, and the frequency constraint. It stops short of explaining duplicate/resubmission behavior and the two undocumented parameters, but what an agent needs to call it is largely present.
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 description coverage is 40%, so the description bears some compensating load. It explains three of the five parameters conceptually (usefulness, would_pay, price magnitude), but question_id and comment are undocumented in both places, and the yes/no/maybe semantics of would_pay are left to the enum. Partial compensation only.
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 names a specific action and its content: rate whether a human answer was useful, whether the caller would pay, and roughly how much. That is clearly distinct from ask_human_perspective and get_answer, though it never explicitly contrasts itself with them. The verb+resource is unambiguous, so an agent can select it without opening the schema.
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?
It states a real usage constraint — 'One feedback per answered or declined question' — which implies when the tool should fire (after a question has been answered or declined). However, it names no alternatives and gives no exclusions, such as whether feedback can be revised or what to do if one was already submitted. Usage must be inferred from context.
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.
3 tool updates
- First observed
ask_human_perspective - First observed
get_answer - First observed
give_feedback
Related MCP Connectors
Real humans for AI agents: ask a question or rent a human for a task. Prepaid in EUR.
Human-as-a-Service for AI agents. Delegate tasks that need a real human, get results via API.
Free human usability tests for agent-built websites. Submit tasks; get written findings as JSON.
Free HTML/CSV conversion, JSON validation, text stats and time APIs. Optional agent interviews.
Related MCP Servers
- AlicenseAqualityDmaintenanceReal human judgment as agent tools -- an AI agent can ask a question and get back a structured, schema-validated JSON answer from a real quality-scored human. 16 response types (yes/no, ratings, rankings, A/B tests, sentiment, image/video/audio review, voice/video/photo capture). Fully programmatic signup with a $5 free trial credit, no card required.766 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to query official Statistics Denmark data without an API key — pulling national population counts and trends, browsing the subject tree, searching available tables, inspecting variable metadata, and retrieving detailed breakdowns by region, age, sex, and period in JSON-stat, bulk, or CSV format.293 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables natural language access to Denmark's Statistics API (Danmarks Statistik), allowing users to query and analyze Danish statistical data without coding knowledge through AI-powered interactions.MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to look up Danish phone numbers for operator, company (CVR), and spam/trust information using official open data.1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.