Features

Executive Summary

This document provides a comprehensive specification of ALL functionality that will be included in the open source vCon MCP server. The goal is to create a powerful, production-ready core that handles all non-privacy/non-compliance operations, making it valuable for general conversation data management.


1. Core vCon CRUD Operations

1.1 Create Operations

create_vcon Tool

Create a new vCon from JSON data with full validation.

Input Schema:

{
  vcon_data: {
    type: "object";
    description: "Complete vCon JSON object following IETF spec";
    required: true;
  };
  metadata?: {
    type: "object";
    description: "Additional metadata (basename, filename, tags)";
  };
  validate_before_insert?: {
    type: "boolean";
    default: true;
    description: "Run validation before inserting";
  };
  return_created?: {
    type: "boolean";
    default: true;
    description: "Return the created vCon object";
  };
}

Features:

  • Full IETF vCon specification compliance

  • Automatic UUID generation if not provided

  • Timestamp management (created_at, updated_at)

  • Validation before insertion

  • Support for all vCon components (parties, dialog, attachments, analysis)

create_vcon_from_template Tool

Create vCons from predefined templates.

Input Schema:

Features:

  • Pre-configured templates for common conversation types

  • Smart defaults for different conversation mediums

  • Extensible template system

1.2 Read Operations

get_vcon Tool

Retrieve a vCon by UUID.

Input Schema:

Features:

  • Selective component retrieval

  • Full object reconstruction from normalized schema

  • Efficient querying with indexed lookups

get_vcon_by_subject Tool

Find vCons by subject text.

Input Schema:

list_vcons Tool

List all vCons with pagination.

Input Schema:

1.3 Update Operations

update_vcon Tool

Update vCon metadata and properties.

Input Schema:

Features:

  • Subject updates

  • Metadata updates

  • Tag management

  • Group data updates

  • Redaction rules updates

update_vcon_status Tool

Update processing status flags.

Input Schema:

1.4 Delete Operations

delete_vcon Tool

Delete a vCon and all related data.

Input Schema:

Features:

  • Cascade deletion of all related components

  • Confirmation requirement

  • Transaction safety

bulk_delete_vcons Tool

Delete multiple vCons in a batch.

Input Schema:


2. Component Management

2.1 Party Management

add_party Tool

Add a participant to a vCon.

Input Schema:

update_party Tool

Update party information.

Input Schema:

remove_party Tool

Remove a party from a vCon.

Input Schema:

find_party Tool

Find parties matching criteria.

Input Schema:

2.2 Dialog Management

add_dialog Tool

Add dialog entry (recording, transcript, message).

Input Schema:

Features:

  • Support for all dialog types (text, audio, video, email)

  • Inline or external content (URL)

  • Base64 encoding for binary data

  • Duration tracking

  • Party and originator references

update_dialog Tool

Update dialog entry.

Input Schema:

remove_dialog Tool

Remove a dialog entry.

Input Schema:

get_dialogs Tool

Get all dialogs for a vCon with filtering.

Input Schema:

2.3 Attachment Management

add_attachment Tool

Add attachment to vCon.

Input Schema:

Features:

  • Custom attachment types

  • Party and dialog associations

  • Inline or external content

  • MIME type support

get_attachments Tool

Retrieve attachments with filtering.

Input Schema:

update_attachment Tool

Update attachment metadata.

remove_attachment Tool

Remove an attachment.

2.4 Analysis Management

add_analysis Tool

Add analysis result to vCon.

Input Schema:

Features:

  • Flexible analysis types

  • Vendor attribution

  • Confidence scores

  • Dialog association

  • Structured result data

get_analysis Tool

Retrieve analysis results with filtering.

Input Schema:

update_analysis Tool

Update analysis result.

remove_analysis Tool

Remove an analysis result.


3. Search & Query Operations

search_vcons Tool

Advanced search across vCons.

Input Schema:

Features:

  • Full-text search across subjects and content

  • Multi-field filtering

  • Date range queries

  • Party-based search

  • Analysis type filtering

  • Tag-based search

  • Pagination support

  • Configurable result components

full_text_search Tool

PostgreSQL full-text search.

Input Schema:

Features:

  • PostgreSQL tsvector search

  • Relevance ranking

  • Multi-field search

  • Configurable thresholds

semantic_search Tool

Vector-based semantic search for conversation content.

Input Schema:

How It Works:

  1. Query is converted to vector embedding

  2. Conversation content (subjects, dialog, summaries) are pre-embedded and stored

  3. Cosine similarity computed between query and stored embeddings

  4. Results ranked by semantic similarity

Example Use Cases:

Response:

Features:

  • Natural language queries

  • Concept-based matching (not just keywords)

  • Cross-lingual search (if model supports it)

  • Intent and sentiment matching

  • Can combine with tag filters for hybrid search

Implementation Notes:

  • Requires embedding storage (vector column in PostgreSQL with pgvector extension)

  • Embeddings can be pre-computed during vCon ingestion

  • Can use OpenAI embeddings, Sentence Transformers, or custom models

  • Consider caching embeddings for frequently searched content

hybrid_search Tool

Combine semantic and exact search for best results.

Input Schema:

Example:

Benefits of Hybrid Approach:

  1. Precision + Recall: Exact tags for precision, semantic for recall

  2. Handle Typos: Semantic search doesn't require exact spelling

  3. Find Concepts: Semantic finds related concepts not in tags

  4. Controllable: Adjust weights based on use case

aggregate_stats Tool

Get aggregated statistics.

Input Schema:

Features:

  • Group by various dimensions

  • Multiple aggregation metrics

  • Pre-aggregation filtering


4. Tag Management System

Tags in vCon are key-value pairs stored as a special attachment with type: "tag". They provide simple, flexible metadata for categorization, filtering, and organization. The Python vCon library uses vcon.add_tag() which creates these special attachments behind the scenes.

4.1 Core Tag Operations

add_tag Tool

Add or update a tag on a vCon.

Input Schema:

Features:

  • String, number, or boolean values

  • Automatic type handling

  • Overwrite protection option

  • Creates tag attachment if none exists

Examples:

get_tag Tool

Retrieve a specific tag value.

Input Schema:

Response:

get_all_tags Tool

Get all tags for a vCon.

Input Schema:

Response:

Example Response:

remove_tag Tool

Remove a tag from a vCon.

Input Schema:

update_tags Tool

Update multiple tags at once.

Input Schema:

Example:

4.2 Bulk Tag Operations

bulk_add_tags Tool

Add same tag(s) to multiple vCons.

Input Schema:

Example Use Cases:

bulk_remove_tags Tool

Remove tag(s) from multiple vCons.

Input Schema:

bulk_tag_by_search Tool

Tag all vCons matching search criteria.

Input Schema:

Example:

4.3 Tag-Based Search & Filtering

search_by_tags Tool

Find vCons by tag criteria.

Input Schema:

Match Modes:

  • all: vCon must have ALL specified tags with matching values (AND)

  • any: vCon must have ANY of the specified tags (OR)

  • exact: vCon must have EXACTLY these tags, no more, no less

Examples:

search_by_tag_prefix Tool

Find vCons with tags matching a prefix.

Input Schema:

Example:

search_by_tag_pattern Tool

Advanced tag search with wildcards.

Input Schema:

Example:

4.4 Tag Analytics & Reporting

get_tag_statistics Tool

Get statistics about tag usage.

Input Schema:

Response:

Example Response:

get_all_tag_keys Tool

List all unique tag keys in the database.

Input Schema:

Response:

suggest_tags Tool

Get tag suggestions based on vCon content.

Input Schema:

Response:

Example Response:

4.5 Tag Templates & Presets

create_tag_template Tool

Create reusable tag templates.

Input Schema:

Example:

apply_tag_template Tool

Apply a template to a vCon.

Input Schema:

Example:

list_tag_templates Tool

List available tag templates.

Response:

4.6 Tag Validation & Cleanup

validate_tags Tool

Validate tags across vCons.

Input Schema:

Example:

cleanup_tags Tool

Clean up malformed or deprecated tags.

Input Schema:

4.7 Tag Resources (MCP URI Access)

4.8 Common Tag Patterns

Standard Business Tags


5. Batch & Bulk Operations

5.1 Batch Import

import_vcons_batch Tool

Import multiple vCons from array.

Input Schema:

Response:

import_vcons_from_file Tool

Import vCons from file.

Input Schema:

Features:

  • JSON array format support

  • JSONL (newline-delimited JSON) support

  • Batched processing for large files

  • Error handling options

import_vcons_from_url Tool

Import vCons from remote URL.

Input Schema:

4.2 Batch Export

export_vcons_batch Tool

Export multiple vCons.

Input Schema:

Features:

  • Multiple export formats

  • Selective component export

  • Compression options

  • File or in-memory export

export_to_url Tool

POST vCons to external URL.

Input Schema:

4.3 Batch Updates

bulk_update_vcons Tool

Update multiple vCons at once.

Input Schema:

bulk_tag_vcons Tool

Add/remove tags from multiple vCons.

Input Schema:


5. Validation & Quality Operations

5.1 Validation

validate_vcon Tool

Validate vCon against IETF specification.

Input Schema:

Response:

validate_vcons_batch Tool

Batch validation.

Input Schema:

Response:

5.2 Data Quality

check_data_quality Tool

Run data quality checks.

Input Schema:

Response:

repair_vcon Tool

Attempt automatic repair of vCon issues.

Input Schema:


6. Analysis & Insight Operations (Non-Compliance)

6.1 Content Analysis

analyze_conversation Prompt

Generic analysis workflow.

Arguments:

Features:

  • Sentiment analysis

  • Conversation summarization

  • Topic extraction

  • Named entity recognition

  • Keyword extraction

  • Language detection

  • Custom analysis pipelines

extract_insights Prompt

Extract specific insights.

Arguments:

6.2 Transcription (Integration Ready)

transcribe_dialog Tool

Transcribe audio/video dialog.

Input Schema:

Features:

  • Multiple transcription service support

  • Speaker diarization

  • Timestamp generation

  • Language detection

  • Automatic save to analysis


7. MCP Resources (URI-based Access)

7.1 Direct vCon Access

7.2 Search Resources

7.3 Aggregate Resources


8. Format Conversion & Export

8.1 Format Conversion

export_vcon Prompt

Export in various formats.

Arguments:

Formats:

  • standard: Full IETF vCon JSON

  • minimal: Metadata + references only

  • readable: Human-readable HTML or Markdown

  • csv: Flattened CSV export (for dialogs/parties)

  • html: Formatted HTML view

convert_format Tool

Convert between vCon versions.

Input Schema:


9. Database & System Operations

9.1 Database Management

database_stats Tool

Get database statistics.

Response:

vacuum_database Tool

Clean up and optimize database.

Input Schema:

9.2 Health Checks

health_check Tool

Server health status.

Response:


10. Webhook & Event System (Open Source)

10.1 Webhook Configuration

configure_webhook Tool

Set up webhooks for events.

Input Schema:


11. Developer Features

11.1 Schema & Documentation

get_schema Tool

Get vCon schema definition.

Input Schema:

get_examples Tool

Get example vCons.

Input Schema:


Summary of Open Source Features

Core Capabilities

✅ Full CRUD operations for vCons ✅ Component management (parties, dialog, attachments, analysis) ✅ Advanced search and filtering ✅ Batch import/export ✅ Validation and data quality checks ✅ Basic analysis (sentiment, topics, summaries) ✅ Format conversion ✅ Webhook system ✅ Full-text search ✅ Aggregation and statistics ✅ MCP Resources (URI-based access)

What's NOT Included (Proprietary)

❌ Consent management ❌ Privacy request handling (GDPR/CCPA) ❌ Compliance checking ❌ Access logging with audit trails ❌ Privacy-level data filtering ❌ PII detection and masking (beyond basic) ❌ Data retention enforcement ❌ Transparency service integration ❌ Regulatory compliance workflows

This makes the open source version extremely valuable for:

  • Development and testing

  • Non-regulated use cases

  • Custom implementations

  • Academic research

  • Community building

While the proprietary version is essential for:

  • Healthcare (HIPAA)

  • Finance (PCI)

  • EU operations (GDPR)

  • California operations (CCPA)

  • Enterprise compliance needs

Last updated