celp-mcp
OfficialServer Quality Checklist
Latest release: v1.0.50
- Disambiguation4/5
The two metadata tools (get-index-map, get-schema) are clearly distinct. The two query tools (query-database, query-database-turbo) serve different complexity levels, but their overlapping purpose could cause confusion if the agent misjudges the query difficulty.
Naming Consistency5/5All tool names follow a consistent hyphenated lowercase pattern: get for metadata retrieval and query for querying, with a suffix for the turbo variant. The naming is uniform and predictable.
Tool Count5/5With 4 tools covering metadata retrieval and two query modes, the count is well-scoped for a database server. No unnecessary tools, and each serves a distinct purpose.
Completeness3/5The tool surface covers schema/index inspection and both simple and complex querying. However, it lacks write operations (insert, update, delete) and explicit table listing, which are notable gaps for a comprehensive database server.
Average 3.1/5 across 4 of 4 tools scored. Lowest: 2.5/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 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
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses limitations such as unsuitability for multi-step workflows, limited explanation, and simplistic visuals. However, it lacks information about security (e.g., SQL injection risks), authentication requirements, and whether the tool is read-only. Since no annotations are provided, these gaps are significant.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness2/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is excessively long, dominated by a table and detailed heuristics. It is not front-loaded with essential information; the actual purpose and parameters are missing. Every sentence does not earn its place, as many are redundant or tangential to defining the tool.
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 the tool's complexity (nested objects, many parameters, no output schema), the description should explain the tool's function, input parameters, and return values. It only covers usage heuristics, leaving the agent without crucial context for invocation. The description is far from complete.
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?
The input schema has 4 parameters, with 0% schema description coverage. The description does not mention any parameter, leaving the agent without guidance on what 'prompt', 'celpApiKey', 'databaseConfig', or 'databaseConnectionId' mean or how to use them. This is a critical failure for parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose2/5Does the description clearly state what the tool does and how it differs from similar tools?
The description focuses on when to use 'Turbo Mode' rather than clearly stating what the tool does. It implies it executes database queries with optimizations, but the primary function is not explicitly defined. The verb 'query' is only in the name, not in the description.
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 provides a detailed table of heuristics for when to use Turbo Mode, along with a quick mental check and example prompts. It also lists limitations. However, it does not directly compare this tool to its sibling 'query-database' or specify when not to use it in favor of alternatives.
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 are provided, so the description carries the full burden. It merely states the tool 'returns the schema map' with no details on side effects, authentication needs, rate limits, or error conditions. The behavioral insight 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.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two short, front-loaded sentences. The first states the purpose, the second provides usage guidelines. Every sentence is necessary and concise, with no wasted words.
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 the complexity of the input schema (nested databaseConfig object, three parameters, no output schema), the description is far from complete. It does not explain the return format, how parameters influence results, or common pitfalls, leaving significant gaps for the agent.
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?
With 0% schema description coverage and three parameters (apiKey, databaseConfig, databaseConnectionId), the description adds no meaning to any parameter. It fails to explain their purpose or usage, leaving the agent without guidance on how to invoke the tool correctly.
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 the tool 'returns the schema map for the database' with a clear verb and resource. However, it does not differentiate itself from sibling tools like 'get-index-map' or explain what a schema map is, missing the highest level of distinction.
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 explicitly says 'Only use this tool after previous attempts fail, or when specifically requested,' providing clear context on when to use it. It does not mention when not to use it or alternative tools, so it lacks exclusions.
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 are provided. The description only says 'Returns' which implies a read operation, but does not explicitly state read-only nature, permissions required, or any side effects. It fails to disclose traits the agent needs to safely invoke the tool.
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 succinct sentences that front-load purpose and usage. No unnecessary words; every sentence adds value.
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 with a complex nested object and no output schema, the description omits critical details on input construction and return value format. The tool is underspecified for an agent to use correctly without additional assumptions.
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 adds no information about the three parameters (apiKey, databaseConfig, databaseConnectionId). The agent has no guidance on what each parameter means or how to construct the nested object.
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 'Returns the index map for the database' which is a specific verb and resource. However, it does not elaborate on what an index map contains, leaving some ambiguity. It distinguishes from siblings only via usage context, not directly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises to use only after previous attempts fail or when specifically requested, providing clear when-to-use and limiting scope. This is a standout feature.
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, the description carries full transparency burden. It discloses capabilities (multi-step analysis, cross-table reasoning, markdown reports) and restrictions (credentials handled server-side). However, it omits behavioral traits like whether it modifies data (assumed read-only but not stated), performance characteristics, or rate limits. Adequate but not comprehensive.
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 well-structured with sections (Capabilities, When to Use, Effective Prompts, Restrictions) and a clear title. However, it is lengthy and includes redundant guidance (e.g., 'Be specific about metrics'). Some sentences could be condensed. It is front-loaded but not optimally concise for an MCP tool description.
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 the tool's complexity (nested objects, no output schema, 4 parameters), the description is incomplete. It lacks parameter documentation, does not specify return format beyond 'markdown reports', and omits error handling or output schema details. The 'When to Use' is helpful but does not compensate for missing parameter semantics and output context.
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%. The description adds no information about parameters beyond the schema. It fails to explain what 'prompt', 'celpApiKey', 'databaseConfig', or 'databaseConnectionId' represent. The only hint is the restriction about credentials, which vaguely relates to 'celpApiKey' and 'databaseConfig.password'. This is insufficient for a tool with 4 parameters and complex nested objects.
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 tool's purpose: 'translates natural language into multi-step SQL analysis plans and executes them against databases.' It explicitly labels itself as for 'complex analytical questions requiring more reasoning,' distinguishing it from sibling 'query-database-turbo' which implies a faster, simpler variant. The verb 'translates and executes' plus the resource 'databases' is specific. Good differentiation.
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 'When to Use' section provides clear context: complex questions, multi-table analyses, accuracy over speed, detailed insights. It also includes 'Restrictions' warning against sending credentials. However, it does not explicitly name sibling alternatives or state when NOT to use (e.g., simple queries should use query-database-turbo). The guidance is solid but lacks explicit exclusion criteria.
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/CelpAI/celp-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server