USolver
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation2/5
There is significant overlap and confusion between tool pairs: simple_cvxpy_solver vs solve_cvxpy_problem, simple_highs_solver vs solve_highs_problem, and solve_z3 vs solve_z3_simple. Each pair appears to solve the same type of problem with only interface differences, making it difficult for an agent to choose correctly without deep understanding of the subtle distinctions in input formats.
Naming Consistency3/5The naming is mixed with no clear pattern: some tools use 'simple_' prefix (simple_cvxpy_solver, simple_highs_solver, solve_z3_simple), others use 'solve_' prefix (solve_cvxpy_problem, solve_highs_problem, solve_ortools_problem, solve_z3), and there's inconsistency in suffix usage (_solver vs _problem). While readable, the conventions vary enough to cause confusion.
Tool Count4/5With 7 tools, the count is reasonable for an optimization solver server covering multiple backends (CVXPY, HiGHs, OR-Tools, Z3). However, the duplication within backends makes the count feel slightly inflated rather than each tool earning its distinct place.
Completeness4/5The server covers multiple optimization domains (convex, linear/mixed-integer, constraint programming, SMT) with solve capabilities, which is appropriate for a solver-focused toolset. Minor gaps might include lack of model validation or result analysis tools, but core solving functionality is well-represented across supported backends.
Average 3.6/5 across 7 of 7 tools scored. Lowest: 2.9/5.
See the Tool Scores section below for per-tool breakdowns.
This repository is archived. Archived repositories automatically receive an F maintenance tier.
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
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It mentions the tool 'returns a solution using Z3 solver' and the return format, but lacks critical behavioral details: whether it's deterministic, time/complexity characteristics, error handling, memory usage, or what happens with unsatisfiable problems beyond the mention of 'satisfiability status'.
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 reasonably concise with clear sections (purpose, capabilities, Args, Returns). However, the Args section adds little value and could be more efficiently integrated. The structure is front-loaded with the core purpose, but some sentences like 'Takes a structured problem definition' are redundant with the schema.
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 complex constraint solving tool with 1 parameter but deeply nested schema (Z3Problem with variables and constraints), no annotations, and no output schema, the description is inadequate. It doesn't explain how to structure problems, what Z3 syntax to use in constraints, or provide examples. The mention of 'TextContent list' return format is vague without schema details.
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?
The description adds minimal value beyond the input schema. It states 'Takes a structured problem definition' and documents the 'problem' parameter, but with 0% schema description coverage, it doesn't explain the structure of Z3Problem, Z3Variable, or Z3Constraint objects. The Args section merely repeats parameter names without adding meaningful semantics.
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: 'Solve a Z3 constraint satisfaction problem' with the verb 'solve' and resource 'Z3 constraint satisfaction problem'. It distinguishes from some siblings like 'simple_cvxpy_solver' by specifying Z3, but doesn't explicitly differentiate from 'solve_z3_simple' which could cause confusion.
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 mentions 'Handles both satisfiability and optimization problems' which provides some context, but offers no explicit guidance on when to use this tool versus the six listed sibling tools. There's no mention of prerequisites, alternatives, or specific scenarios where Z3 is preferred over other solvers.
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 states the tool 'returns a solution if one exists' and mentions 'an error message' in the Returns section, which provides basic outcome information. However, it lacks details on performance characteristics, computational limits, solver configurations, or what happens with infeasible/unbounded problems. The description adds some value but leaves significant behavioral aspects unspecified.
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 a clear purpose statement, example, and parameter/return sections. The example is detailed but necessary for understanding the complex parameter structure. Some sentences could be more concise (e.g., the Returns section is somewhat redundant), but overall the information is efficiently presented.
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 the complexity of optimization solving (no annotations, no output schema, 1 complex parameter with nested objects), the description provides a good foundation but has gaps. The example helps understand parameter structure, but there's no information about return format beyond 'list of TextContent', no error handling details, and no guidance on solver limitations. For a tool with this complexity, more complete documentation would be beneficial.
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% description coverage (no parameter descriptions in schema), so the description must compensate. It provides a detailed example showing how to structure the 'problem' parameter with variables, objective, constraints, and parameters. This adds substantial semantic value beyond the bare schema structure. However, it doesn't explain all possible parameter configurations or edge cases.
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: 'Solve a CVXPY optimization problem defined with variables, objective, and constraints, and returns a solution if one exists.' This specifies the verb ('solve'), resource ('CVXPY optimization problem'), and outcome. However, it doesn't explicitly differentiate from sibling tools like 'simple_cvxpy_solver' or 'solve_ortools_problem', which appear to be similar optimization solvers.
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 its siblings. With multiple solver tools available (e.g., simple_cvxpy_solver, solve_ortools_problem, solve_z3), there's no indication of which solver is appropriate for which types of problems, performance characteristics, or compatibility differences. The example shows usage but doesn't provide comparative context.
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 mentions the tool 'solves' problems and returns 'Solution results as TextContent list,' but lacks details on behavioral traits such as error handling, performance characteristics, whether it's read-only or destructive, authentication needs, or rate limits. For a solver tool with zero annotation coverage, this is a significant gap in transparency.
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 appropriately sized and front-loaded: it starts with the core purpose, explains the simplified approach, lists parameters with clear explanations, and states the return value. Every sentence adds value without redundancy, and the structure (overview, args, returns) is logical and efficient.
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 the tool's complexity (solving constraint problems), no annotations, no output schema, and 0% schema description coverage, the description is partially complete. It covers the purpose, parameters, and return type, but lacks details on behavioral aspects (e.g., what happens on failure, output format specifics). Without annotations or output schema, more context on behavior and results would improve completeness.
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 beyond the schema by explaining each parameter: 'variables' as 'List of dicts with 'name' and 'type' for each variable,' 'constraints' as 'List of constraint expressions as strings,' and 'description' as 'Optional problem description.' This clarifies the structure and purpose of all three parameters, effectively compensating for the lack of schema descriptions.
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: 'Simplified interface for Z3 constraint problems' and 'A more direct way to solve Z3 problems without full model structure.' It specifies the verb ('solve'), resource ('Z3 constraint problems'), and distinguishes it from the sibling 'solve_z3' by emphasizing simplicity and directness. However, it doesn't explicitly contrast with all siblings like 'solve_ortools_problem' or 'simple_cvxpy_solver'.
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 when to use this tool versus alternatives by stating it's 'simplified' and 'more direct' compared to 'full model structure,' suggesting it's for simpler problems. However, it doesn't explicitly name alternatives (e.g., 'use solve_z3 for complex models') or provide clear exclusions (e.g., 'not for optimization problems'). The guidance is present but not fully explicit.
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 mentions the tool 'solves' problems and returns 'the solution or an error message,' which covers basic behavior. However, it lacks details on performance characteristics, error handling, computational limits, or any side effects, which are crucial for a solver tool. The description adds minimal behavioral context beyond the implied solving action.
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 appropriately sized and front-loaded, starting with the core purpose and then detailing parameters and returns. Every sentence earns its place by explaining functionality or inputs/outputs. It could be slightly more concise by integrating the 'Args' and 'Returns' labels more seamlessly, but overall it's well-structured and efficient.
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 the complexity of a solver tool with 6 parameters, no annotations, and no output schema, the description provides a solid foundation with purpose and parameter details. However, it lacks information on output format (beyond 'list of TextContent'), error specifics, or usage examples, which would enhance completeness for such a tool. It's adequate but has gaps in behavioral and output context.
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?
With 0% schema description coverage, the description compensates fully by detailing all 6 parameters in the 'Args' section, providing clear semantics for each (e.g., 'variables: List of variable definitions, each with 'name' and 'shape''). This adds significant value beyond the bare schema, making the parameters understandable and actionable for the agent.
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: 'A simpler interface for solving CVXPY optimization problems' and distinguishes it from 'the full CVXPYProblem model structure.' It specifies the verb 'solving' and resource 'CVXPY optimization problems,' making it clear what it does. However, it doesn't explicitly differentiate from sibling tools like 'solve_cvxpy_problem,' which slightly reduces clarity.
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 stating it's 'simpler' and 'without requiring the full CVXPYProblem model structure,' suggesting it should be used for straightforward CVXPY problems. However, it doesn't provide explicit guidance on when to use this tool versus alternatives like 'solve_cvxpy_problem' or other solver siblings, leaving the agent to infer based on the 'simpler' qualifier.
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. It states the tool 'returns a list of TextContent containing the solution or an error message,' which provides some output behavior. However, it doesn't disclose critical behavioral traits like whether this is a read-only or mutating operation, computational complexity, potential side effects, authentication requirements, rate limits, or error handling specifics beyond mentioning error messages.
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 a clear introductory sentence followed by organized parameter documentation. It's appropriately sized for an 8-parameter tool with no schema descriptions. However, the opening paragraph could be more front-loaded with the core purpose, and some phrasing ('more straightforward interface') is slightly redundant with 'simplified.'
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 the complexity of an 8-parameter linear programming solver with no annotations and no output schema, the description provides good parameter semantics and basic return format information. However, it lacks sufficient behavioral context for a computational tool (no performance characteristics, no mention of what 'solving' entails, no error conditions beyond 'error message'). The absence of output schema means the description should ideally provide more detail about solution structure.
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?
With 0% schema description coverage for 8 parameters, the description fully compensates by providing detailed semantic explanations for every parameter in the Args section. Each parameter (sense, objective_coeffs, variables, constraint_matrix, constraint_senses, rhs_values, options, description) receives clear explanations of what they represent, including format details (e.g., 'dense format' for constraint_matrix, 'list of TextContent' for returns) and optional status.
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 'solves HiGHs linear programming problems' and specifies it's a 'simplified interface' that 'doesn't require the full HiGHSProblem model structure.' This provides a specific verb (solve) and resource (HiGHs linear programming problems) with clear differentiation from the more complex alternative. However, it doesn't explicitly distinguish from all sibling tools like 'solve_highs_problem' beyond the 'simplified' aspect.
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 stating this is 'simplified' and 'without requiring the full HiGHSProblem model structure,' suggesting it should be used when a simpler interface is needed. However, it doesn't provide explicit guidance on when to use this versus the 'solve_highs_problem' sibling tool or other alternatives, nor does it mention any prerequisites or exclusions.
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 does well by disclosing key behavioral traits: it solves optimization problems, returns a solution or error message, and supports specific HiGHs features (LP/MIP, matrices, algorithms). It mentions the tool 'returns a solution if one exists,' indicating conditional outcomes. However, it doesn't cover performance aspects like computational intensity, memory usage, or error handling details.
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 appropriately sized and front-loaded: the first two sentences state the core purpose and behavior. Subsequent sections (HiGHs features, example, Args/Returns) are organized for clarity. While comprehensive, some details in the example could be streamlined, but overall it earns its place by providing essential context for a complex tool.
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 complexity (optimization solver with one parameter but nested structure), no annotations, and no output schema, the description is largely complete. It covers purpose, input semantics with an example, and return behavior. However, it lacks details on output format (beyond 'list of TextContent') and doesn't address potential solver limitations or edge cases, leaving minor gaps.
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?
Schema description coverage is 0%, so the description must compensate fully. It provides extensive parameter semantics: defines the 'problem' parameter with a detailed example structure, explains components (sense, objective, variables, constraints, options), and clarifies HiGHs-specific elements like variable types and constraint matrices. This adds significant meaning beyond the bare 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 tool's purpose: 'Solve a HiGHs linear/mixed-integer programming problem' with specific verbs ('solve') and resources ('HiGHs optimization problem'). It distinguishes from siblings by specifying HiGHs solver capabilities (LP/MIP, dense/sparse matrices, various algorithms), differentiating from other solvers like CVXPY, OR-Tools, and Z3.
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 through the example problem structure and HiGHs capabilities, suggesting this tool is for optimization problems solvable by HiGHs. However, it lacks explicit guidance on when to use this versus alternatives like 'simple_highs_solver' or other solver siblings, and doesn't mention prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior5/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 behavioral traits: it solves problems defined with variables, constraints, and optional objectives; returns a solution if one exists; and includes critical usage constraints (e.g., 'Each constraint expression must be a single evaluable Python statement' and restrictions on control flow). This provides essential context beyond basic functionality.
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 appropriately front-loaded with the core purpose, but it includes a lengthy example (over 40 lines) that, while helpful, could be considered excessive. The structure is logical, but the example dominates the text, potentially reducing conciseness for quick scanning.
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 complexity of the tool (1 parameter with nested objects, no annotations, no output schema), the description is largely complete. It explains the tool's purpose, usage constraints, and parameter semantics with an example. However, it doesn't detail the return format beyond 'A list of TextContent containing the solution or an error message,' which could be more specific given the lack of output schema.
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?
Schema description coverage is 0%, so the description must compensate. It adds significant meaning beyond the input schema by explaining that the 'problem' parameter includes 'variables, constraints, and an optional objective,' and provides a detailed example showing how to structure these components. This clarifies the semantics of the nested objects in the 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 tool's purpose: 'Solve a constraint programming problem using Google OR-Tools.' It specifies the verb ('solve'), resource ('constraint programming problem'), and technology ('Google OR-Tools'), distinguishing it from sibling tools like 'solve_cvxpy_problem' or 'solve_z3' which use different solvers.
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 clear context for when to use this tool by specifying it's for 'constraint programming problems' and mentioning it uses 'Google OR-Tools.' However, it doesn't explicitly state when not to use it or name specific alternatives among the sibling tools, though the technology distinction implies usage guidance.
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/sdiehl/usolver'
If you have feedback or need assistance with the MCP directory API, please join our Discord server