HiveAuth MCP Server
Utilizes .ENV for configuration management, allowing users to customize server settings like the HiveAuth API base URL.
Integrates with the HiveAuth ecosystem on the Hive blockchain, exposing credential management capabilities including issuing verifiable credentials, verification, revocation, and presentation handling.
Provides package management through npm for installation, building, and running the server.
Built on TypeScript for a production-ready implementation with comprehensive error handling and validation.
Planned integration for tool input validation using Zod schemas to ensure proper data formatting.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@HiveAuth MCP Serververify this university degree credential for authenticity"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
HiveAuth MCP Server
A Model Context Protocol (MCP) server that provides tools for verifiable credential operations using the HiveAuth ecosystem. This server exposes HiveAuth's credential management capabilities to LLM applications via the standardized MCP interface.
Overview
The HiveAuth MCP Server provides these tools to LLM applications:
Issue Credential: Create new verifiable credentials with HiveAuth
Verify Credential: Verify individual credentials for authenticity and status
Verify Presentation: Verify complete presentations containing multiple credentials
Revoke Credential: Revoke credentials using status lists
Create Presentation Definition: Build DIF Presentation Exchange definitions
Evaluate Presentation: Test credentials against presentation definitions
Related MCP server: Agentforce MCP Integration Server
Installation
cd hiveauth-mcp
npm installConfiguration
Copy the example environment file and configure:
cp .env.example .envKey environment variables:
HIVEAUTH_API_BASE_URL: URL of the main HiveAuth application (default: http://localhost:3000)
Usage
As an MCP Server
The server is designed to be used with MCP-compatible clients (like Claude Desktop, IDEs with MCP support, etc.):
# Start the server
npm run devThe server communicates via stdio and will be available for MCP clients to connect to.
Building for Production
npm run build
npm startAvailable Tools
issue_credential
Issues a new verifiable credential using HiveAuth.
Parameters:
credentialSubject(object): The subject data for the credentialtype(array): Credential types (e.g., ["VerifiableCredential", "EducationCredential"])vcVersion(string, optional): VC Data Model version ("1.1" or "2.0", default: "2.0")expirationDate(string, optional): ISO 8601 expiration date
verify_credential
Verifies a verifiable credential for authenticity and status.
Parameters:
credential(object): The verifiable credential to verify
verify_presentation
Verifies a verifiable presentation containing multiple credentials.
Parameters:
presentation(object): The verifiable presentation to verify
revoke_credential
Revokes a verifiable credential using status lists.
Parameters:
credentialId(string): The ID of the credential to revokestatusListIndex(number): The status list index of the credential
create_presentation_definition
Creates a DIF Presentation Exchange definition for requesting specific credentials.
Parameters:
id(string): Unique identifier for the presentation definitionname(string, optional): Human-readable namepurpose(string, optional): Purpose of the presentation requestinputDescriptors(array): Input descriptors defining what credentials are requested
evaluate_presentation
Evaluates credentials against a presentation definition using DIF PEX.
Parameters:
presentationDefinition(object): The presentation definition to evaluate againstcredentials(array): Array of credentials to evaluate
Integration with LLM Applications
This MCP server allows LLM applications to:
Issue credentials on behalf of users: Create education, employment, or other types of credentials
Verify credentials in real-time: Check authenticity and revocation status
Build presentation requests: Create complex credential requirements using DIF PEX
Evaluate credential compliance: Test if available credentials meet specific requirements
Manage credential lifecycle: Handle revocation and status updates
Example Usage in Claude Desktop
Add this server to your Claude Desktop MCP configuration:
{
"mcpServers": {
"hiveauth": {
"command": "node",
"args": ["/path/to/hiveauth-mcp/dist/index.js"],
"env": {
"HIVEAUTH_API_BASE_URL": "http://localhost:3000"
}
}
}
}Then you can ask Claude to:
"Issue a university degree credential for John Smith with Computer Science major"
"Verify this credential for authenticity"
"Create a presentation definition requesting employment credentials"
"Check if these credentials satisfy the job application requirements"
Architecture
MCP SDK: Built on the official Model Context Protocol TypeScript SDK
HiveAuth Integration: Calls HiveAuth API endpoints for all credential operations
Tool-based Interface: Exposes functionality as discrete, composable tools
Standards Compliance: Supports W3C VC Data Model 1.1/2.0 and DIF Presentation Exchange
Development Status
This implementation includes:
✅ Complete MCP server with stdio transport
✅ All core HiveAuth credential operations as tools
✅ W3C VC 1.1 and 2.0 support
✅ DIF Presentation Exchange Protocol integration
✅ Comprehensive error handling and validation
✅ Production-ready TypeScript implementation
🚧 HTTP transport support
🚧 Authentication/authorization mechanisms
🚧 Tool input validation with Zod schemas
Available Tools
13 toolsbatch_issue_credentialsB
Issue multiple verifiable credentials in parallel or sequentially. Supports up to 50 credentials per batch with comprehensive error handling and performance metrics.
| Name | Required | Description | Default |
|---|---|---|---|
| credentials | Yes | ||
| parallel | No | Whether to process credentials in parallel |
TDQS
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 mentions 'comprehensive error handling and performance metrics,' which adds some context about outputs and robustness. However, it doesn't disclose critical behavioral traits such as whether this is a read-only or destructive operation, authentication requirements, rate limits, or what happens on partial failures. For a batch mutation tool, this leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose and includes key constraints. Every phrase ('issue multiple verifiable credentials,' 'parallel or sequentially,' 'up to 50 credentials,' 'error handling and performance metrics') adds value without redundancy. It could be slightly more structured but is appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (batch mutation with up to 50 items), lack of annotations, and no output schema, the description is incomplete. It mentions error handling and performance metrics but doesn't describe the return format, success/failure semantics, or authentication needs. For a tool that modifies data in bulk, this leaves the agent with insufficient context to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50%, with the 'credentials' parameter well-documented in the schema but 'parallel' only having a basic description. The description adds value by specifying 'up to 50 credentials per batch,' which clarifies the maxItems constraint, and mentions parallel/sequential processing, hinting at the 'parallel' parameter's purpose. However, it doesn't fully compensate for the schema's coverage gap, as it doesn't explain parameter interactions or provide examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Issue multiple verifiable credentials in parallel or sequentially.' It specifies the verb ('issue'), resource ('verifiable credentials'), and scope ('multiple'), distinguishing it from the sibling 'issue_credential' which presumably handles single credentials. However, it doesn't explicitly contrast with other credential-related siblings like 'derive_credential' or 'refresh_credential'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context by mentioning 'parallel or sequentially' and 'up to 50 credentials per batch,' suggesting this tool is for bulk operations. However, it doesn't provide explicit guidance on when to use this versus the single 'issue_credential' tool or other alternatives like 'derive_credential,' nor does it 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.
batch_verify_credentialsA
Verify multiple verifiable credentials efficiently. Supports parallel processing, early termination on errors, and detailed verification statistics.
| Name | Required | Description | Default |
|---|---|---|---|
| credentials | Yes | ||
| parallel | No | Whether to process credentials in parallel | |
| stopOnFirstError | No | Whether to stop verification on first error |
TDQS
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: 'parallel processing' (performance characteristic), 'early termination on errors' (error handling), and 'detailed verification statistics' (output behavior). This goes beyond the input schema by explaining how the tool operates and what results to expect, though it doesn't cover aspects like rate limits or authentication needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that efficiently communicates the tool's purpose and key features. Every phrase ('Verify multiple verifiable credentials efficiently,' 'Supports parallel processing,' 'early termination on errors,' 'detailed verification statistics') adds value without redundancy. It's front-loaded with the core purpose and follows with supporting details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 3 parameters, no annotations, and no output schema, the description provides a good overview of behavior and purpose. However, it lacks details on output format (beyond 'statistics'), error handling specifics, or integration with sibling tools. Given the complexity of credential verification and the absence of structured metadata, the description is adequate but leaves gaps an agent might need to infer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67% (2 out of 3 parameters have descriptions). The description doesn't add any parameter-specific information beyond what's in the schema. It mentions general features like 'parallel processing' and 'early termination on errors,' which align with the 'parallel' and 'stopOnFirstError' parameters but don't provide additional semantic context. Given the moderate schema coverage, the description doesn't compensate for gaps but doesn't detract either.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Verify multiple verifiable credentials efficiently.' It specifies the verb ('verify'), resource ('verifiable credentials'), and scope ('multiple'). However, it doesn't explicitly distinguish this batch operation from the sibling 'verify_credential' tool, which appears to handle single credentials.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context through 'efficiently' and mentions features like 'parallel processing' and 'early termination on errors,' which suggest when batch processing is advantageous. However, it doesn't provide explicit guidance on when to use this tool versus the 'verify_credential' sibling or other verification-related tools, nor does it 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.
create_presentation_definitionC
Create a DIF Presentation Exchange v2.0 definition for requesting specific credentials. Defines input descriptors and constraints for credential selection.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | ||
| name | No | ||
| purpose | No | ||
| inputDescriptors | Yes |
TDQS
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 states this is a creation tool but doesn't describe what happens after creation (e.g., where definitions are stored, whether they're persisted, permissions required, or error conditions). For a tool with complex parameters and no annotations, this is a significant gap in behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately concise with two sentences that efficiently convey the core purpose. It's front-loaded with the main action and avoids unnecessary elaboration. Every sentence contributes to understanding the tool's function.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex tool with 4 parameters (2 required), nested objects, 0% schema description coverage, no annotations, and no output schema, the description is inadequate. It doesn't explain parameter meanings, expected outputs, error handling, or behavioral implications. The agent lacks sufficient context to use this tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate but only mentions 'input descriptors and constraints' generically. It doesn't explain the purpose or relationships of the 4 parameters (id, name, purpose, inputDescriptors) or their nested structures. The description adds minimal value beyond what's inferable from parameter names in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a DIF Presentation Exchange v2.0 definition for requesting specific credentials, specifying both the verb ('Create') and resource ('definition'). It distinguishes from siblings by focusing on definition creation rather than credential operations like issue/verify/revoke, though it doesn't explicitly contrast with 'validate_presentation_definition' which validates rather than creates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does 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 prerequisites, appropriate contexts, or contrast with sibling tools like 'validate_presentation_definition' or 'generate_presentation_request'. The agent must infer usage from the purpose alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
derive_credentialC
Derive credentials with selective disclosure using JSON-LD frames. Supports credential chaining and zero-knowledge proofs for privacy-preserving presentations.
| Name | Required | Description | Default |
|---|---|---|---|
| originalCredential | Yes | W3C Verifiable Credential | |
| frame | Yes | JSON-LD frame for selective disclosure | |
| nonce | No | Nonce for derived proof |
TDQS
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 mentions 'selective disclosure', 'credential chaining', and 'zero-knowledge proofs', which give some context about privacy and transformation behaviors. However, it lacks critical details such as whether this is a read-only or mutative operation, what permissions are required, how errors are handled, or what the output format looks like (especially since there's no output schema).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that efficiently communicates the core purpose and key features without any wasted words. It front-loads the main action ('derive credentials') and follows with supporting details, making it easy to parse and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of credential derivation with JSON-LD frames and proofs, the description is insufficient. There are no annotations to clarify safety or behavior, no output schema to describe results, and the description lacks details on error conditions, performance implications, or example use cases. For a tool with 3 parameters (including nested objects) and advanced cryptographic features, more context is needed for effective agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for 'originalCredential' as 'W3C Verifiable Credential', 'frame' as 'JSON-LD frame for selective disclosure', and 'nonce' as 'Nonce for derived proof'. The description adds value by explaining that these parameters are used for 'selective disclosure' and 'privacy-preserving presentations', providing context beyond the schema. However, it doesn't detail how the frame interacts with the credential or the role of the nonce in proofs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'derive' and resource 'credentials', specifying the mechanism 'with selective disclosure using JSON-LD frames'. It distinguishes from siblings like 'issue_credential' or 'verify_credential' by focusing on derivation rather than creation or verification. However, it doesn't explicitly contrast with 'refresh_credential' or 'create_presentation_definition', which might have overlapping privacy-preserving aspects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions 'supports credential chaining and zero-knowledge proofs for privacy-preserving presentations', which implies usage for privacy-focused scenarios, but provides no explicit guidance on when to use this tool versus alternatives like 'create_presentation_definition' or 'submit_presentation'. There's no mention of prerequisites, exclusions, or specific contexts where this tool is preferred over siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
evaluate_presentationC
Evaluate credentials against a presentation definition using DIF Presentation Exchange Protocol. Tests credential compliance and matching.
| Name | Required | Description | Default |
|---|---|---|---|
| presentationDefinition | Yes | DIF PEX Presentation Definition | |
| credentials | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It states the tool 'tests credential compliance and matching,' which implies a read-only validation operation, but doesn't clarify whether this is a pure check or has side effects, what permissions are required, what happens with invalid credentials, or what the output format is. For a tool with complex nested parameters and no annotations, this leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two sentences that directly state the tool's function and protocol. Every word earns its place, with no redundant information. It's front-loaded with the core purpose, making it easy to scan and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (2 nested parameters, 50% schema coverage, no annotations, no output schema), the description is insufficient. It doesn't explain what the tool returns, error conditions, or how results should be interpreted. For a validation/evaluation tool in a domain with many sibling tools, more context is needed to guide proper usage and integration.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50%, with two complex nested parameters. The description mentions 'credentials' and 'presentation definition' but adds minimal semantic context beyond the schema's property names. It doesn't explain what constitutes valid inputs, the relationship between these parameters, or typical use cases. The baseline is 3 because the schema provides some documentation, but the description doesn't compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Evaluate credentials against a presentation definition using DIF Presentation Exchange Protocol. Tests credential compliance and matching.' It specifies the action (evaluate/test), resources (credentials and presentation definition), and protocol (DIF PEX). However, it doesn't explicitly distinguish this tool from sibling tools like 'validate_presentation_definition' or 'verify_presentation', which likely involve similar concepts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does 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. With multiple sibling tools related to credentials and presentations (e.g., 'validate_presentation_definition', 'verify_presentation', 'submit_presentation'), there's no indication of this tool's specific context or prerequisites. The description mentions the protocol but doesn't explain when this evaluation step fits in a workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_presentation_requestC
Generate complete presentation request flows with DIF PEX v2.0 definitions. Creates wallet-ready requests with security features, human-readable instructions, and multiple format support.
| Name | Required | Description | Default |
|---|---|---|---|
| presentationDefinition | Yes | DIF PEX Presentation Definition | |
| verifierDid | No | DID of the verifier requesting the presentation | |
| callbackUrl | No | URL where presentation should be submitted | |
| challenge | No | Challenge nonce for presentation security | |
| domain | No | Domain for presentation binding | |
| expiresIn | No | Request expiration time in seconds (1 minute to 24 hours) | |
| requestFormat | No | Format for the presentation request | json |
| includeInstructions | No | Whether to include human-readable instructions |
TDQS
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 'security features' and 'human-readable instructions,' but lacks details on permissions, side effects, rate limits, or error handling. For a tool that generates requests (likely involving data processing), this is insufficient to inform the agent about operational risks or requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that efficiently conveys the core functionality. It front-loads the main action ('Generate complete presentation request flows') and lists key features without redundancy. However, it could be slightly more concise by integrating the features more seamlessly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (8 parameters, nested objects, no output schema, and no annotations), the description is inadequate. It doesn't explain what the tool returns, how errors are handled, or the implications of generating 'wallet-ready requests.' For a tool with significant input complexity and no structured behavioral hints, more context is needed to guide effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all 8 parameters. The description adds minimal value beyond the schema, mentioning 'DIF PEX v2.0 definitions' and 'multiple format support,' which loosely relate to parameters like 'presentationDefinition' and 'requestFormat.' This meets the baseline for high schema coverage but doesn't provide additional semantic context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generate complete presentation request flows with DIF PEX v2.0 definitions.' It specifies the verb ('generate'), resource ('presentation request flows'), and technical standard ('DIF PEX v2.0'). However, it doesn't explicitly differentiate from sibling tools like 'create_presentation_definition' or 'submit_presentation,' which reduces it from 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.
Does 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 features like 'wallet-ready requests' and 'multiple format support,' but doesn't specify prerequisites, use cases, or contrast with sibling tools such as 'create_presentation_definition' or 'submit_presentation.' This leaves the agent without clear direction on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
issue_credentialC
Issue a new verifiable credential using HiveAuth. Supports both W3C VC Data Model 1.1 and 2.0 formats with comprehensive validation.
| Name | Required | Description | Default |
|---|---|---|---|
| credentialSubject | Yes | Credential subject data | |
| type | Yes | Array of credential types (e.g., ["VerifiableCredential", "EducationCredential"]) | |
| vcVersion | No | W3C VC Data Model version | 2.0 |
| expirationDate | No | ISO 8601 date string | |
| validUntil | No | ISO 8601 date string | |
| context | No | Additional JSON-LD contexts | |
| issuer | No | Custom issuer DID or object |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral information. It mentions 'comprehensive validation' but doesn't specify what that entails (e.g., schema validation, issuer verification, or cryptographic checks). It lacks details on permissions required, rate limits, whether the operation is idempotent, or what happens on failure. For a mutation tool with zero annotation coverage, this is inadequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose. It avoids unnecessary words and gets straight to the point. However, it could be slightly more structured by separating format support from validation claims for better readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex mutation tool with 7 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain what the tool returns (e.g., a signed credential object, a credential ID, or status), error handling, authentication requirements, or how it differs from sibling tools. The mention of 'comprehensive validation' is vague and doesn't compensate for the missing contextual details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no parameter-specific information beyond what's already in the schema (which has 100% coverage). It mentions 'W3C VC Data Model 1.1 and 2.0 formats' which relates to the 'vcVersion' parameter, but this is already covered by the schema's enum and description. With high schema coverage, the baseline score of 3 is appropriate as the description doesn't enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('issue a new verifiable credential') and the resource ('using HiveAuth'), with specific mention of supported formats (W3C VC Data Model 1.1 and 2.0). However, it doesn't explicitly differentiate from sibling tools like 'batch_issue_credentials' or 'derive_credential', which would be needed for 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.
Does 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 'batch_issue_credentials' for multiple credentials, 'derive_credential' for derived credentials, or 'refresh_credential' for updates. There's also no information about prerequisites, authentication needs, or error conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
refresh_credentialB
Refresh expiring or expired credentials using W3C Credential Refresh specification. Supports automatic service discovery and credential lifecycle management.
| Name | Required | Description | Default |
|---|---|---|---|
| credentialId | Yes | ||
| refreshService | No |
TDQS
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 mentions 'automatic service discovery' and 'credential lifecycle management,' which adds some context about how the tool operates. However, it fails to disclose critical behavioral traits such as whether this is a read-only or mutating operation, potential side effects (e.g., credential updates), authentication needs, rate limits, or error handling. This is a significant gap for a tool that likely modifies credential states.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded: two concise sentences that directly state the tool's purpose and key features. Every sentence earns its place by providing essential information without redundancy or fluff, making it easy to scan and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (credential refresh with potential side effects), no annotations, no output schema, and 0% schema coverage, the description is incomplete. It lacks details on parameters, behavioral traits (e.g., mutation effects), return values, and explicit differentiation from siblings. For a tool that likely involves credential state changes, this leaves too many gaps for reliable agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate for undocumented parameters. It does not mention any parameters or their meanings (e.g., 'credentialId' or 'refreshService'), leaving both parameters unexplained. The description adds no value beyond the schema, failing to clarify what inputs are needed or how they relate to the tool's purpose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Refresh expiring or expired credentials' using a specific specification (W3C Credential Refresh). It includes a verb ('Refresh') and resource ('credentials'), and distinguishes from siblings like 'issue_credential' or 'revoke_credential' by focusing on renewal rather than creation or revocation. However, it doesn't explicitly contrast with all siblings (e.g., 'derive_credential' might overlap in lifecycle management).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context ('expiring or expired credentials') and mentions 'automatic service discovery and credential lifecycle management,' which suggests when to use it—for maintaining valid credentials. However, it lacks explicit guidance on when not to use it (e.g., vs. 'issue_credential' for new credentials) or named alternatives, leaving some ambiguity compared to sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
revoke_credentialC
Revoke a verifiable credential using W3C Status List 2021 specification. Updates the credential status in the bitstring status list.
| Name | Required | Description | Default |
|---|---|---|---|
| credentialId | Yes | ||
| statusListIndex | Yes | ||
| reason | No | Reason for revocation |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the technical method (W3C Status List 2021) and that it updates a status list, which implies mutation. However, it lacks critical behavioral details: whether revocation is permanent/reversible, permission requirements, rate limits, error handling, or what happens to the credential post-revocation. The description is insufficient for a mutation tool with zero 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences with zero waste. It front-loads the core action and technical specification, efficiently conveying essential information without redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of credential revocation (a mutation operation), no annotations, no output schema, and low schema description coverage (33%), the description is incomplete. It lacks details on behavioral implications, parameter meanings, return values, and integration with sibling tools, making it inadequate for safe and effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 33% (only 'reason' has a description). The description adds no parameter-specific semantics beyond what the schema provides—it doesn't explain what 'credentialId' or 'statusListIndex' represent, their formats, or how they relate to the revocation process. With low coverage, the description fails to compensate, but the baseline is 3 as it doesn't mislead.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('revoke') and resource ('verifiable credential'), specifying the technical method ('using W3C Status List 2021 specification') and outcome ('updates the credential status in the bitstring status list'). It distinguishes from siblings like 'refresh_credential' or 'verify_credential' by focusing on revocation, but doesn't explicitly contrast with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives is provided. The description implies it's for revoking credentials, but doesn't mention prerequisites, when not to use it, or how it relates to siblings like 'batch_issue_credentials' or 'verify_credential' in a workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_presentationC
Create and submit verifiable presentations from evaluation results. Builds presentations that satisfy DIF PEX v2.0 requirements with holder binding and proof generation.
| Name | Required | Description | Default |
|---|---|---|---|
| presentationDefinition | Yes | DIF PEX Presentation Definition | |
| credentials | Yes | ||
| holderDid | No | DID of the presentation holder | |
| challenge | No | Challenge for the presentation proof | |
| domain | No | Domain for the presentation proof |
TDQS
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 'holder binding and proof generation', which hints at security features, but doesn't describe what the tool actually does (e.g., whether it returns a presentation object, makes an API call, or stores data), error conditions, rate limits, or side effects. For a complex tool with 5 parameters, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (two sentences) and front-loaded with the core purpose. Every sentence contributes meaning: the first states what the tool does, and the second adds technical context. There's no wasted verbiage, though it could be slightly more structured for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 parameters, nested objects, no output schema, and no annotations), the description is incomplete. It doesn't explain what the tool returns, error handling, or how parameters like 'challenge' and 'domain' interact with 'holder binding and proof generation'. For a tool that likely produces cryptographic outputs, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 80%, so the schema already documents most parameters well. The description adds minimal value beyond the schema—it mentions 'evaluation results' which might relate to 'credentials', and 'DIF PEX v2.0 requirements' which maps to 'presentationDefinition', but doesn't explain parameter interactions or provide usage examples. This meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Create and submit verifiable presentations from evaluation results.' It specifies the action (create and submit) and resource (presentations), and mentions compliance with DIF PEX v2.0. However, it doesn't explicitly differentiate from siblings like 'create_presentation_definition' or 'evaluate_presentation', which is why it doesn't achieve 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.
Does 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 building presentations that satisfy DIF PEX v2.0 requirements, but doesn't specify prerequisites, exclusions, or compare it to related tools like 'evaluate_presentation' or 'verify_presentation'. This leaves the agent without context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_presentation_definitionA
Validate presentation definitions against DIF PEX v2.0 specification. Performs comprehensive compliance checking, best practices validation, and provides improvement recommendations.
| Name | Required | Description | Default |
|---|---|---|---|
| presentationDefinition | Yes | DIF PEX Presentation Definition | |
| strict | No | Whether to perform strict DIF PEX v2.0 validation | |
| checkSchemas | No | Whether to validate referenced credential schemas |
TDQS
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 the tool performs validation and provides recommendations, but lacks details on behavioral traits like error handling, performance characteristics, authentication requirements, or rate limits. For a validation tool with complex input, more operational context would be helpful.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise with two sentences that each earn their place. The first sentence states the core purpose, and the second elaborates on the validation scope. No wasted words, and information is front-loaded appropriately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (3 parameters with nested objects) and lack of annotations/output schema, the description is adequate but has clear gaps. It explains what the tool does but doesn't provide enough context about how it behaves, what it returns, or how to interpret results. For a validation tool, more guidance on output format or error cases would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all three parameters. The description adds no parameter-specific information beyond what's in the schema, such as examples or usage notes for the complex presentationDefinition object. Baseline 3 is appropriate when the schema does all the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does 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', 'performs') and resource ('presentation definitions'), distinguishing it from siblings like create_presentation_definition or evaluate_presentation. It specifies the standard (DIF PEX v2.0) and types of validation (compliance checking, best practices, improvement recommendations).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for validating presentation definitions against a specific standard, but does not explicitly state when to use this tool versus alternatives like evaluate_presentation or verify_presentation. No exclusions or prerequisites are mentioned, leaving the agent to infer context from the tool name and description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_credentialA
Verify a verifiable credential for authenticity, integrity, and revocation status. Checks signature, issuer validity, and status list compliance.
| Name | Required | Description | Default |
|---|---|---|---|
| credential | Yes | The verifiable credential to verify |
TDQS
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 key behavioral traits: the verification checks (signature, issuer validity, status list compliance) and the aspects verified (authenticity, integrity, revocation status). However, it lacks details on error handling, performance expectations, or specific constraints like rate limits or 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded and efficient, using two sentences that directly state the tool's purpose and specific checks without redundancy. Every sentence contributes essential information, making it appropriately sized for a single-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (verification with multiple checks), no annotations, and no output schema, the description is moderately complete. It covers what the tool does but lacks details on return values, error cases, or operational constraints, which are important for a verification tool with no structured output documentation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the 'credential' parameter well-documented in the schema. The description adds minimal value beyond the schema by implying the credential is the input for verification, but doesn't provide additional context on format expectations or usage nuances, meeting the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does 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 ('verify', 'checks') and resources ('verifiable credential'), and distinguishes it from siblings by focusing on individual credential verification rather than batch operations (batch_verify_credentials), presentation handling (verify_presentation), or credential lifecycle actions (issue, revoke, refresh).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context through 'verify... for authenticity, integrity, and revocation status,' suggesting it's for validation rather than creation or modification. However, it doesn't explicitly state when to use this versus alternatives like batch_verify_credentials for multiple credentials or verify_presentation for presentations, leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_presentationC
Verify a verifiable presentation containing multiple credentials. Validates presentation signature, holder verification, and all included credentials.
| Name | Required | Description | Default |
|---|---|---|---|
| presentation | Yes | The verifiable presentation to verify |
TDQS
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 what gets validated but doesn't describe the verification process, success/failure conditions, error handling, or output format. For a verification tool with complex input and no output schema, this leaves significant gaps in understanding how the tool behaves and what results to expect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's function without unnecessary words. It's front-loaded with the core action and specifies the validation targets clearly, making every word earn its place. No structural issues or redundancy are present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a verification tool with complex nested input (presentation object with credentials) and no output schema, the description is insufficient. It doesn't explain what constitutes successful verification, what the output looks like, or how errors are handled. Given the technical nature of verifiable presentations and multiple sibling tools, more context is needed for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the single parameter 'presentation' having a clear description in the schema. The description adds no additional parameter information beyond what's already documented in the schema, so it meets the baseline for high schema coverage but doesn't provide extra value like format examples or validation nuances.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('verify') and resource ('verifiable presentation containing multiple credentials'), making the purpose unambiguous. It specifies what gets validated: presentation signature, holder verification, and all included credentials. However, it doesn't explicitly differentiate from sibling tools like 'verify_credential' or 'evaluate_presentation', which prevents 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.
Does 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 'verify_credential' (for single credentials) or 'evaluate_presentation' (which appears related). It doesn't mention prerequisites, such as needing a properly formatted presentation object, or when this verification is appropriate versus other validation tools in the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool has a clearly distinct purpose targeting specific operations in the verifiable credentials domain, such as issuing, verifying, refreshing, revoking, and managing presentations. The descriptions highlight unique functions like batch processing, selective disclosure, and compliance validation, with no apparent overlap that would cause agent confusion.
All tool names follow a consistent verb_noun pattern with underscores, such as 'issue_credential', 'verify_credential', and 'create_presentation_definition'. This uniformity makes the tool set predictable and easy to navigate, supporting clear agent selection.
With 13 tools, the server is well-scoped for its domain of verifiable credentials management, covering essential operations like issuance, verification, revocation, and presentation handling. Each tool earns its place by addressing a specific aspect of the workflow without redundancy or bloat.
The tool set provides comprehensive coverage of the verifiable credentials lifecycle, including CRUD-like operations (issue, verify, revoke, refresh) and advanced features like presentation definitions and evaluations. There are no obvious gaps, ensuring agents can handle end-to-end workflows without dead ends.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
MCP server for verifying EUDI/Talao wallet data via OIDC4VP (pull) for AI agents.
MCP server bridging holepunchto/keet-identity-key to the Hive agentic identity network
An MCP server that provides an API to LLMs to manage their JumpCloud resources.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that bridges MCP clients with local LLM services, enabling seamless integration with MCP-compatible applications through standard tools like chat completion, model listing, and health checks.
- AlicenseNot gradedqualityDmaintenanceEnables MCP clients to connect to LLM/API services using the Model Context Protocol, providing real-time interaction and tool access. Also offers RESTful API endpoints via FastAPI for programmatic integration with existing systems.Apache 2.0
- AlicenseNot gradedqualityDmaintenanceMCP server for Citizen of the Cloud — agent identity verification, trust scoring, and registry access for any AI runtime that speaks the Model Context Protocol.19MIT
- AlicenseNot gradedqualityDmaintenanceModel Context Protocol server that standardizes tool discovery, execution, and context management for AI applications.MIT
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/AlyssonM/hiveauth-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server