actually-mcp-server
Server Quality Checklist
Latest release: v0.1.7
- Disambiguation5/5
check_news takes natural language news text and returns a market anchor with a cached YES probability, while get_market requires a specific marketId and returns live market and orderbook data. The input types and outputs are distinct, and the description explicitly frames them as complementary rather than overlapping.
Naming Consistency5/5Both tool names follow the same snake_case verb_noun pattern: check_news and get_market. The verbs are simple and descriptive, with no mixed conventions or inconsistent styling.
Tool Count4/5Two tools is lean, but the server appears intentionally narrow: it maps news to a Polymarket market and provides live market data. Both tools are necessary for that workflow, making the count slightly small but still reasonable.
Completeness5/5For the stated purpose, the tool surface is complete: check_news handles the news-to-market mapping, and get_market provides the live price and orderbook follow-up referenced by check_news. The primary workflow has no obvious dead ends.
Average 4.3/5 across 2 of 2 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 182 commits in the last 12 weeks
- Last stable release on
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI is passing
This repository is licensed under MIT License.
This repository includes a README.md file.
Tools from this server were used 4 times in the last 30 days.
This repository includes a glama.json configuration file.
This server has been verified by its author.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it delivers a genuinely non-obvious behavioral trait: lookups resolve through a precomputed cache and fall back to a direct Gamma lookup for ids outside the top markets by volume. It also previews return contents. It stops short of covering error behavior for unknown ids or latency differences between the two paths, but the most important behavioral disclosure is present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero filler. The main purpose is front-loaded in the first sentence, and the fallback nuance earns the second. The jargon ('precomputed cache's top markets by volume', 'direct Gamma lookup') is dense but conveys precise information efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool with no output schema and no annotations, the description covers the essentials: purpose, expected return contents, and the one notable behavioral twist. The main gap is failure behavior — what happens when a market id is unknown even after the Gamma fallback — which is not addressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. 'By id' ties the sole parameter to the concept of a Polymarket market identifier, adding domain meaning the schema ('string', 'minLength 1') lacks. It doesn't specify id format or how to obtain one, but for a single parameter whose name is already self-explanatory, the compensation is adequate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('look up'), a specific resource (a Polymarket market by id), and the returned content (details, live price, orderbook snapshot). The market-data domain clearly separates it from the sibling check_news without needing an explicit comparison.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: when an agent has a market id and wants market details, this is the tool. However, there is no explicit when-to-use/when-not-to-use statement, no named alternative, and the fallback sentence describes internal resolution behavior rather than guiding tool selection relative to check_news.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior4/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It discloses that the probability comes from a precomputed cache on a cron cadence and may be up to ~2 hours stale, and it explicitly says the tool does not classify whether news is dramatized. These are non-obvious behaviors an agent must know. It could add error behavior for unmatched news, but the key operational traits are transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two focused sentences: the first states the core function, and the second adds necessary limitations and the routing alternative. Every sentence contributes value, and the key behavior is front-loaded. No filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description covers the main return values (YES probability and marketId), the data freshness caveat, and the alternative for live prices. It does not specify the exact response structure or behavior when no relevant market is found, but the essentials for correct invocation are present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does by clarifying that 'text' is a piece of news text used as the input for market mapping. This adds meaningful semantic context beyond the raw schema constraints of minLength and maxLength. Still, it could be more explicit about input shape expectations, but for a single free-text parameter it is adequate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource: 'Map a piece of news text to the relevant Polymarket market and return its objective YES probability.' It clearly distinguishes this tool from get_market by stating that the returned probability is an objective market anchor backed by news text, not a live price.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit context: this tool maps news to a market and returns a cached probability. It names the alternative get_market for live pricing before trading, which is a clear conditional routing. However, it does not explicitly state scenarios where check_news should not be used beyond the live-price case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
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/Sofiia7/actually'
If you have feedback or need assistance with the MCP directory API, please join our Discord server