Wakapi MCP Server
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation5/5
Each tool has a distinct purpose with clear boundaries: get_all_time_since_today for overall summary, get_stats for detailed statistics, get_projects/get_project_detail for project data, get_recent_logs for heartbeat logs, get_user for user info, get_leaders for rankings, and test_connection for connectivity. No overlap or ambiguity exists between these functions.
Naming Consistency4/5The naming follows a consistent 'verb_noun' pattern with 'get_' prefix for 7 out of 8 tools (e.g., get_stats, get_projects), which is highly predictable. The only deviation is test_connection, which breaks the pattern but remains clear in purpose.
Tool Count5/5With 8 tools, this server is well-scoped for a Wakatime/Wakapi analytics domain. It covers essential operations like retrieving stats, projects, user data, logs, and rankings without being overwhelming or sparse, fitting the typical 3-15 tool range for focused servers.
Completeness4/5The toolset provides comprehensive read-only coverage for Wakatime/Wakapi analytics, including user stats, projects, logs, and leaderboards. A minor gap exists in write operations (e.g., creating or updating data), but this aligns with the server's apparent purpose as a data retrieval interface, and agents can work effectively within this scope.
Average 3.5/5 across 8 of 8 tools scored. Lowest: 2.9/5.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 0 commits in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
This repository is licensed under Apache 2.0.
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
- Behavior3/5
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 mentions authentication requirements ('Requires ApiKeyAuth') and references an external API, which adds some behavioral context. However, it lacks details on rate limits, error handling, or response structure beyond the HTTP 200 code. The description doesn't contradict any annotations, as none exist.
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 structured but verbose, including OpenAPI-like details (operationId, tags, parameters, responses) that may be redundant with the input schema. The core purpose is stated upfront, but the additional technical specifications could be streamlined. It's not excessively long but includes elements that might not earn their place in a tool description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 8 parameters with 0% schema coverage and an output schema present, the description partially compensates by listing parameters and noting authentication. However, it lacks context on sibling tool differentiation, error cases, or usage scenarios. The output schema existence reduces the need to describe return values, but overall completeness is moderate due to missing operational guidance.
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. It lists all parameters with brief descriptions (e.g., 'User ID to fetch data for', 'Range interval identifier'), which adds meaning beyond the schema's titles. However, it doesn't explain parameter interactions, default behaviors, or provide examples, leaving gaps for the agent to infer usage.
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 the tool's purpose: 'Retrieve statistics for a given user.' It specifies the verb ('Retrieve') and resource ('statistics'), and mentions the user context. However, it doesn't explicitly differentiate from sibling tools like 'get_user' or 'get_project_detail', which might also retrieve user-related data.
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?
The description provides no guidance on when to use this tool versus alternatives. It mentions mimicking an external API reference but doesn't explain when to choose this over sibling tools like 'get_user' or 'get_projects'. There's no mention of prerequisites, such as authentication requirements, which are only noted in a separate section.
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 provided, the description carries the full burden. It discloses authentication requirements ('Requires ApiKeyAuth') and references the API endpoint, which is helpful. However, it doesn't mention rate limits, pagination behavior, error responses, or what happens when filtering returns no results—significant gaps for a tool with no annotation coverage.
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 front-loaded with the core purpose but includes extensive OpenAPI specification details (operationId, summary, parameters, responses) that duplicate information already in structured fields. This adds verbosity without proportional value, though the authentication note at the end is necessary and well-placed.
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?
Given the tool's moderate complexity (2 parameters, no annotations, but with an output schema), the description is reasonably complete. It covers authentication, parameters, and references the external API, though it could better explain behavioral aspects like error handling. The presence of an output schema reduces the need to describe return values in the description.
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. It explains the 'user' parameter ('User ID to fetch data for (or 'current')') and 'q' parameter ('Query to filter projects by'), adding meaningful context beyond the bare schema. However, it doesn't clarify what 'current' means in practice or provide examples of valid query formats, leaving some ambiguity.
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 the verb ('Retrieve and filter') and resource ('user's projects'), making the purpose evident. It distinguishes from some siblings like 'get_user' or 'get_stats' by focusing specifically on projects, though it doesn't explicitly differentiate from 'get_project_detail' which retrieves a single project versus this tool's list/filter functionality.
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?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'get_project_detail' for single project details or 'get_stats' for project statistics, leaving the agent to infer usage context from tool names alone.
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 provided, the description carries the full burden of behavioral disclosure. It adds some context by specifying authentication requirements (ApiKeyAuth with Basic header) and referencing the external API, but lacks details on error handling, rate limits, or response structure beyond the schema reference. This is adequate but has clear gaps.
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 front-loaded with the core purpose but includes verbose OpenAPI-like details (e.g., operationId, tags, responses) that could be streamlined. Some sentences, like the API mimic reference, add value, but others repeat structured information, reducing efficiency.
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?
Given the tool's low complexity (1 parameter) and the presence of an output schema, the description is reasonably complete. It covers authentication, parameter semantics, and references the API, though it could benefit from more behavioral context like error cases or usage examples to be fully comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/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 explains the 'user' parameter as 'User ID to fetch (or 'current')', which adds meaning beyond the schema's basic type and title. However, it doesn't detail format constraints or examples, leaving some ambiguity, so it meets the baseline for partial compensation.
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 the verb 'retrieve' and the resource 'user', making the purpose evident. However, it does not explicitly differentiate this tool from sibling tools like 'get_stats' or 'get_leaders', which might also retrieve user-related data in different contexts, so it falls short of a perfect score.
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?
The description provides no guidance on when to use this tool versus alternatives, such as whether it's for fetching basic user info compared to more detailed stats from sibling tools. It mentions the API endpoint it mimics but offers no context-specific usage advice.
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 provided, the description carries the full burden of behavioral disclosure. It adds useful context: it mimics a specific external API, requires authentication via ApiKeyAuth with a Basic header, and implies a read-only operation ('retrieve'). However, it doesn't disclose rate limits, error handling, or response format details beyond the schema reference, leaving gaps for a tool with authentication requirements.
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 moderately concise but includes extraneous OpenAPI metadata (operationId, summary, tags, responses) that doesn't directly aid tool selection. The core purpose is front-loaded, but the additional details add noise without clear value. It could be more streamlined by focusing only on actionable information for the agent.
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?
Given the tool's low complexity (1 parameter), no annotations, and the presence of an output schema (which handles return values), the description is reasonably complete. It covers authentication needs and parameter semantics adequately. However, it lacks error handling or rate limit info, which would enhance completeness for an authenticated API tool.
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?
The description adds significant meaning beyond the input schema, which has 0% description coverage. It explains the 'user' parameter as 'User ID to fetch data for (or 'current')', clarifying the optional default and special value 'current'. This compensates well for the schema's lack of descriptions, though it doesn't detail format constraints or examples beyond this.
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 the verb 'retrieve' and resource 'summary for all time since today for the specified user', making the purpose evident. It distinguishes from siblings by specifying the time scope ('all time since today'), though it doesn't explicitly contrast with tools like get_stats or get_recent_logs. The purpose is specific but not fully differentiated from all alternatives.
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?
The description provides no guidance on when to use this tool versus alternatives like get_stats or get_recent_logs. It mentions the API endpoint it mimics but doesn't explain the context or prerequisites for choosing this specific summary retrieval. There's an implied usage based on the time scope, but no explicit when/when-not instructions or named alternatives.
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 provided, the description carries the full burden of behavioral disclosure. It does reveal important behavioral traits: it requires API key authentication with specific header formatting, and it returns a 200 response with a structured schema. However, it doesn't mention rate limits, pagination, error conditions, or whether this is a read-only operation (though 'list' implies read-only).
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 reasonably concise but has structural issues. The first sentence clearly states the purpose, but then includes API documentation details (operationId, summary, tags, responses) that might be redundant. The authentication instructions are necessary but could be more integrated. Some information feels like it belongs in structured fields rather than the description text.
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?
Given that this tool has 0 parameters, 100% schema coverage, and an output schema exists, the description provides adequate context. It explains what the tool does, mentions the API endpoint it mimics, specifies authentication requirements, and indicates the response structure. For a parameterless read operation with output schema, this is reasonably complete, though it could benefit from more behavioral context.
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?
The input schema has 0 parameters with 100% description coverage, so the schema already fully documents the parameter situation. The description appropriately doesn't waste space discussing non-existent parameters. It does mention the authentication requirement which could be considered a parameter-like concern, though it's handled via headers rather than input parameters.
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 the tool's purpose: 'List of users ranked by coding activity in descending order.' This specifies the verb ('list'), resource ('users'), and ranking criteria ('coding activity'), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from sibling tools like 'get_stats' or 'get_user' which might also involve user data.
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?
The description provides no guidance on when to use this tool versus alternatives. While it mentions mimicking a WakaTime API endpoint, it doesn't explain when this leaderboard tool is appropriate compared to other user-related tools like 'get_user' or 'get_stats'. There's no mention of prerequisites or typical use cases.
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 provided, the description carries the full burden of behavioral disclosure. It effectively describes key traits: it's a read operation ('Retrieve'), requires authentication (ApiKeyAuth with specific header format), and mimics an undocumented endpoint. It doesn't cover rate limits, error handling, or pagination, but for a simple retrieval tool, this is reasonably transparent.
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 well-structured with clear sections (purpose, endpoint reference, authentication, args, returns) and uses bullet points for returns. It's appropriately sized for the tool's complexity, but the authentication details could be slightly more concise, and some sentences are a bit lengthy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (2 parameters, no annotations, but with an output schema), the description is complete enough. It covers purpose, authentication, parameters, and return values in detail. The output schema is provided, so the description doesn't need to explain return values extensively, and it adds useful context like the endpoint mimicry.
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 adds meaningful semantics for both parameters: 'id' is explained as 'Project ID to fetch', and 'user' is detailed as 'User ID to fetch data for (or 'current')', including the default value. This goes beyond the schema's basic titles, though it could provide more context on valid formats or constraints.
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 the verb ('Retrieve') and resource ('a single project'), making the purpose unambiguous. It distinguishes this from sibling tools like 'get_projects' (plural) by specifying it fetches a single project. However, it doesn't explicitly contrast with other siblings like 'get_user' or 'get_stats', so it's not a perfect 5.
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 description implies usage by mentioning it 'mimics undocumented endpoint related to https://wakatime.com/developers#projects', which provides context. However, it lacks explicit guidance on when to use this tool versus alternatives like 'get_projects' or other siblings, and doesn't specify prerequisites or exclusions beyond the authentication note.
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 provided, the description carries full burden and delivers substantial behavioral information. It discloses authentication requirements (ApiKeyAuth with specific header format), describes the return format in detail, mentions sorting behavior ('Sorted by time descending'), and references the external API it mimics. It doesn't mention rate limits, error conditions, or pagination behavior, preventing a perfect score.
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 well-structured with clear sections: purpose statement, API reference, authentication requirements, parameter documentation, and return format. Each sentence adds value. It could be slightly more concise by combining some return field explanations, but overall it's efficiently organized and front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 parameters, 0% schema description coverage, no annotations, but with output schema details provided, the description is remarkably complete. It covers authentication, parameters, return format, sorting behavior, and API context. The detailed return type documentation compensates for the lack of output schema, making this description comprehensive for agent understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters5/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Given 0% schema description coverage, the description fully compensates by providing detailed parameter documentation. Each of the 4 parameters is clearly explained with type, requirement status, defaults, and purpose. The description adds crucial semantic context beyond what the bare schema provides, such as 'user (or current)' clarification and filtering behavior for project_name.
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 the tool's purpose: 'Get heartbeats of user for recent days' with specific resource (heartbeats) and scope (recent days). It distinguishes from siblings by specifying it's an extension of heartbeats GET for multiple days, differentiating from tools like get_stats or get_user. However, it doesn't explicitly contrast with all siblings like get_projects or get_project_detail.
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 description implies usage context by mentioning it's an 'extension of heartbeats GET' and 'mimics' a specific API endpoint, suggesting when this tool might be preferred over simpler heartbeats queries. However, it doesn't provide explicit guidance on when to use this vs. alternatives like get_stats or get_projects, nor does it mention any prerequisites beyond authentication.
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 provided, the description carries full burden and does disclose this is a read-only diagnostic operation that makes an API call. However, it doesn't mention potential side effects, authentication requirements, rate limits, or error handling specifics beyond what's in the return structure.
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?
The description is efficiently structured with the purpose in the first sentence and return details in a clear bulleted format. Every sentence adds value without redundancy, making it easy to parse quickly.
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?
Given the tool's diagnostic nature, 0 parameters, and the presence of an output schema (implied by the detailed return description), the description is mostly complete. However, it could benefit from mentioning typical use cases or prerequisites like server configuration.
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?
With 0 parameters and 100% schema description coverage, the baseline would be 4. The description appropriately notes there are no input parameters by not discussing any, which aligns perfectly with the empty input schema.
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 clearly states the specific action ('Test Wakapi server connection') and method ('via simple API call to fetch projects'), distinguishing it from sibling tools that retrieve actual data rather than testing connectivity. It explicitly identifies the resource being accessed (Wakapi server) and the verification mechanism.
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 implies usage context by specifying this is for connection testing, suggesting it should be used to verify server accessibility before invoking other tools. However, it doesn't explicitly state when NOT to use it or name specific alternative tools for different purposes.
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/impure0xntk/mcp-wakapi'
If you have feedback or need assistance with the MCP directory API, please join our Discord server