Any-API MCP Server
Server Quality Checklist
Latest release: v0.1.0
- Disambiguation4/5
The five tools map cleanly to distinct HTTP operations (probe, GET, POST, PUT, DELETE), so an agent can generally tell them apart. The only mild overlap is api_probe with any method potentially covering the same requests as the specific verb tools, but its 'safe probe' intent separates it clearly enough.
Naming Consistency5/5All tools follow a consistent api_<verb> pattern, with lowercase snake_case throughout. The verbs are standard HTTP operations, making the naming predictable and easy to infer.
Tool Count5/5Five tools is well-scoped for a generic API interaction server. Each tool covers a necessary HTTP operation without redundancy or bloat.
Completeness4/5The common HTTP methods are covered, along with a safe probing option, which handles most API interaction needs. The surface has a minor gap: PATCH is missing, and the descriptions don't explicitly show how custom paths, headers, or bodies are specified.
Average 2.8/5 across 5 of 5 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 6 commits in the last 12 weeks
- No stable releases found
- 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.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
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
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, but 'guarded' is the only behavioral hint and it is not explained. The description does not disclose side effects, idempotency, error behavior, or what the guard protects against. This is insufficient for a mutating operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness3/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with the operation, but the words 'generic' and 'guarded' add little concrete meaning. It is concise but under-specified, so the brevity does not meaningfully support correct invocation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness1/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has three parameters, no annotations, no output schema, and zero parameter coverage, yet the description only states that it is a generic PUT to API_BASE. Essential context about path construction, payload expectations, header behavior, and return values is missing. The description is far from complete for safe invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters1/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description provides no information about path, headers, or payload. An agent must infer parameter semantics solely from the property names in the schema. The description adds no value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear operation: a generic PUT request against API_BASE. It distinguishes itself from siblings (api_get, api_post, api_delete, api_probe) by the HTTP method. The qualifiers 'generic' and 'guarded' add some ambiguity but do not obscure the core purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus the sibling HTTP-method tools. The description relies entirely on the name and method to imply suitability for update operations. It does not state prerequisites, alternatives, or conditions where another tool should be chosen.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full behavioral disclosure burden. It only says 'guarded', which is too vague to convey auth requirements, side effects, idempotency, error behavior, or whether the call modifies data, and POST's mutation semantics are left implicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness3/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief and front-loaded, stating the method and target in one sentence. However, the parenthetical 'guarded' is vague and its brevity comes at the expense of missing details that other dimensions need.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter generic HTTP tool with no annotations and no output schema, the description leaves path construction, headers/payload semantics, response handling, and the meaning of 'guarded' unspecified. It gives the agent only enough to know that a POST request is made.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not compensate. 'Against API_BASE' hints that 'path' is relative to the base URL, but headers and payload are entirely unexplained in both the schema and description, forcing the agent to rely on HTTP conventions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a concrete operation—sending a POST request to API_BASE—and the HTTP verb distinguishes it from the GET/PUT/DELETE siblings at a basic level. However, it remains generic and doesn't specify the kind of resource or action POST is used for beyond the method itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance about when to use this tool versus api_get, api_put, api_delete, or api_probe. The verb 'POST' implies use for POST-style requests, but no context, prerequisites, or exclusions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. 'Guarded' hints at access protection, but the tool does not disclose that DELETE is destructive, what happens on success or failure, whether authentication is required, or any side effects. The transparency is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness3/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and front-loaded with the core action, containing no fluff or repetition. However, it is so terse that it sacrifices useful context, resembling under-specification rather than deliberate efficient structuring.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given three parameters, nested objects, no output schema, and no annotations, the description is insufficient for an agent to invoke the tool with confidence. It lacks parameter semantics, return-value expectations, error behavior, and clearer auth or safety guidance. The word 'guarded' raises more questions than it answers.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should compensate for the three parameters. It does not explain the path format, how headers should be structured, or what payload is expected. The only implicit clue is 'against API_BASE', which suggests path is relative to a base URL, but headers and payload remain completely unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('DELETE') and a resource scope ('API_BASE'), and the word 'Generic' indicates it is a general-purpose delete wrapper. It is distinguishable from siblings like api_get, api_post, api_put, and api_probe by the HTTP method, so an agent can infer what this tool does.
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?
The phrase 'Generic DELETE' implies the tool is for performing HTTP DELETE requests against the base API, which gives some usage context relative to the sibling method-based tools. However, there is no explicit guidance on when not to use it, no mention of alternatives by name, and no conditions or prerequisites beyond the vague 'guarded'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral disclosure burden, but the only behavioral claim is the vague word 'safe'. It does not clarify whether arbitrary methods can still cause mutations, what the response looks like, how max_bytes affects the response, authentication requirements, or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every phrase carries meaning, but it is so brief that it sacrifices critical behavioral and parameter context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and four parameters, the description is too thin. It omits return semantics, the meaning of 'safe', response size behavior, header usage, and explicit guidance for choosing between this and sibling tools. An agent could select the tool but would not know what to expect from calling it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/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, but it only adds minimal meaning: 'path' is an API path and 'method' can be anything. The headers and max_bytes parameters are completely unexplained, leaving the agent to guess their purpose and interaction with the request.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a specific action ('Probe') and resource ('API path') and stresses that any HTTP method is accepted. The 'any method' qualifier distinguishes it from the fixed-method sibling tools (api_get, api_post, etc.), though 'probe' is somewhat generic and does not fully define the operation's outcome.
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?
The phrase 'with any method (safe)' implies this tool is for flexible or non-standard HTTP method probing, contrasting with the specific method siblings. However, it never explicitly states when to prefer this over api_get/api_post/etc., nor does it mention exclusions or caveats for potentially destructive methods.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the behavioral transparency burden. It adds only the claim '(safe)', which is useful for a GET-based tool, but it does not explain API_BASE resolution, response behavior, error handling, or whether authentication is required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness4/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one compact sentence with no filler. 'Generic' and '(safe)' add useful meaning, though the overall brevity sacrifices informational richness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with three parameters, no output schema, no annotations, and zero schema description coverage, this description is far from complete. It never defines API_BASE, explains how path/query/headers are combined, or describes what the response looks like, leaving the agent to guess at important invocation details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters2/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no direct guidance for 'path', 'query', or 'headers'. The phrase 'against API_BASE' weakly implies that path is relative to the base URL, but query and header semantics are left entirely to inference.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies a concrete operation: a generic GET against API_BASE, which distinguishes it from the method-specific siblings api_post, api_put, and api_delete. However, API_BASE is left undefined and the relationship to api_probe is not addressed, so the purpose is clear but not fully specified.
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?
The word 'Generic' implies this is the catch-all for raw GET requests, and '(safe)' suggests it is appropriate for read-only operations. Still, it provides no explicit guidance about when to use this tool versus api_probe, nor any exclusions or conditions.
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/ghively/API2MCP-creator'
If you have feedback or need assistance with the MCP directory API, please join our Discord server