ODEI MCP Server
OfficialServer Quality Checklist
Latest release: v1.0.0
- Disambiguation5/5
Each tool has a clearly distinct purpose: guardrail validation, smart contract auditing, world model querying, and trust scoring. There is no overlap in functionality, and the descriptions clearly differentiate their use cases, making misselection unlikely.
Naming Consistency5/5All tool names follow a consistent 'odei_' prefix with descriptive snake_case suffixes (e.g., guardrail_check, smart_contract_audit). This pattern is uniform across all four tools, enhancing predictability and readability.
Tool Count4/5Four tools is a reasonable count for an MCP server focused on AI safety and blockchain security, but it feels slightly thin given the broad scope implied by the descriptions. Each tool earns its place, but additional tools might be expected for more comprehensive coverage in these domains.
Completeness3/5The tools cover key areas like guardrails, smart contracts, and world model interactions, but there are notable gaps. For example, there are no tools for updating or managing the world model, executing actions post-guardrail approval, or handling non-EVM blockchains, which could limit agent workflows in this domain.
Average 4.1/5 across 4 of 4 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 1 commit 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
Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.
If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.
MCP servers without a LICENSE cannot be installed.
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 of behavioral disclosure. It describes what the tool does (analyzes for security risks, returns a risk score and findings) and mentions performance aspects ('slower, more thorough' for 'check_holders'), which adds useful context. However, it lacks details on permissions, rate limits, error handling, or what 'actionable findings' entail, leaving gaps for a mutation-like analysis tool.
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 key features. Each sentence adds value: the first defines the action and scope, the second details analysis components and output, and the third specifies supported chains. There is no wasted text, though it could be slightly more structured (e.g., bullet points for clarity).
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 (security analysis with 3 parameters) and no annotations or output schema, the description is moderately complete. It covers the purpose, analysis types, and output format (risk score and findings), but lacks details on behavioral traits like authentication needs, rate limits, or error cases. For a tool with no structured output, more elaboration on return values would be beneficial, though the description provides a basic framework.
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 100%, so the schema already documents all parameters ('address', 'chain', 'check_holders') with descriptions and constraints. The description adds minimal value beyond the schema, mentioning 'Supports Base and Ethereum contracts' which aligns with the 'chain' enum, and implies 'check_holders' affects thoroughness. Baseline 3 is appropriate as the schema does the heavy lifting, but the description does not add significant semantic depth.
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 ('Analyze an EVM smart contract address for security risks') and resource ('smart contract'), distinguishing it from siblings like 'odei_guardrail_check' or 'odei_world_model_query' by focusing on security auditing rather than general checks or queries. It specifies the scope (EVM contracts on Base and Ethereum) and the analysis components (verification status, vulnerability patterns, token safety, knowledge graph cross-referencing).
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: for security risk analysis of EVM smart contracts on Base or Ethereum. It implies usage by specifying the supported chains and analysis types, but does not explicitly state when not to use it or name alternatives among the sibling tools (e.g., 'odei_guardrail_check' might be for different checks). The guidance is sufficient but lacks explicit exclusions or comparisons.
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. It describes what the tool returns (nodes with types, domains, relationships, metadata) and the knowledge graph structure, but doesn't disclose behavioral aspects like rate limits, authentication requirements, error conditions, or whether this is a read-only operation. The description adds useful context about the knowledge graph but lacks operational 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 efficiently structured in two sentences. The first sentence establishes purpose and scope, while the second provides usage guidance. Every element serves a clear purpose with no redundant information or unnecessary elaboration.
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?
For a search tool with 4 parameters, 100% schema coverage, but no output schema or annotations, the description provides adequate high-level context about what's being searched and why, but lacks details about return format, pagination, error handling, or performance characteristics that would be helpful for an AI agent.
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 100%, so the schema already fully documents all 4 parameters. The description doesn't add any parameter-specific information beyond what's in the schema descriptions. It mentions general search capabilities but provides no additional syntax, format, or usage details for the parameters.
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 searches ODEI's constitutional world model knowledge graph and returns nodes with their attributes. It specifies the resource (10,665-node knowledge graph with 6 domains) and distinguishes this search function from potential sibling tools like guardrail checks or signal analysis.
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 usage contexts: 'to understand the structure of any domain, find specific entities, or explore how goals connect to execution.' However, it doesn't explicitly state when NOT to use this tool or provide direct comparisons with sibling tools like odei_world_model_signal.
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 describes the return values (APPROVED, DENIED, NEEDS_REVIEW with reasoning), mentions the 7-layer safety constraint system, and specifies domains of application. It doesn't cover rate limits or error handling, but provides substantial operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences that are front-loaded with core functionality, followed by usage guidance. Every sentence earns its place by providing essential information without redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a validation tool with no annotations and no output schema, the description does well by explaining return values and behavioral context. It could improve by detailing error cases or system limitations, but covers the core functionality adequately given the complexity.
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 100%, so the schema already documents all parameters thoroughly. The description doesn't add any additional parameter-specific information beyond what's in the schema, maintaining the baseline score of 3 for high schema coverage.
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 with specific verbs ('validate an agent action against ODEI's constitutional guardrails') and resources (guardrails). It distinguishes from siblings by focusing on safety validation rather than auditing, querying, or signaling.
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 states when to use ('before executing any action that could affect finances, reputation, health, or relationships') and provides clear context about appropriate scenarios. No alternatives are mentioned, but the guidance is comprehensive and actionable.
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 and does well by disclosing key behavioral traits: it's a read-only operation (implied by 'scoring' and 'returns'), outputs confidence scores and evidence, and emphasizes performance traits ('faster and cheaper'). However, it lacks details on rate limits or error handling.
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 front-loaded with core functionality, uses two efficient sentences without redundancy, and every part (e.g., 'quick validation', 'faster and cheaper') adds value to guide usage, making it highly concise and well-structured.
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 output schema, no annotations), the description is mostly complete: it covers purpose, usage, and behavioral context. However, it lacks details on output format (beyond mentioning scores and evidence) and error cases, which would enhance completeness for a scoring tool.
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 100%, so the schema already documents both parameters thoroughly. The description adds no additional parameter semantics beyond what's in the schema, such as examples or usage tips for the 'category' enum, meeting the baseline for high coverage.
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 with specific verbs ('scoring', 'returns') and resources ('claim, entity, or topic'), distinguishing it from siblings like 'odei_world_model_query' by emphasizing speed and cost-effectiveness for quick validation rather than comprehensive analysis.
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?
It explicitly states when to use this tool ('for quick validation before making decisions') and when not to ('faster and cheaper than a full world model query'), directly comparing it to the sibling 'odei_world_model_query' as an alternative for more thorough queries.
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/odei-ai/mcp-odei'
If you have feedback or need assistance with the MCP directory API, please join our Discord server