V Language MCP Server
A comprehensive Model Context Protocol (MCP) server that provides LLMs with extensive knowledge about the V programming language, including documentation, code examples, standard library reference, and syntax explanations.
Features
📚 Documentation Access
Full V documentation: Access the complete V programming language documentation
Section-specific queries: Get detailed information about specific language features
Search functionality: Search through documentation for specific topics
💡 Code Examples
Example browser: Browse through hundreds of V code examples
Code retrieval: Get complete source code for any example
Pattern search: Search through examples for specific coding patterns
🔧 Standard Library Reference
Module listing: Browse all available V standard library modules
Module details: Get comprehensive information about specific modules
File listings: See what functions and types are available in each module
🎯 Syntax Explanations
Feature explanations: Detailed explanations of V language features
Code examples: Practical examples for each concept
Quick reference: Fast access to common syntax patterns
🚀 Code Execution (Planned)
Code validation: Check V code syntax and semantics
Example execution: Run V examples and see their output
Interactive learning: Learn by running and modifying code
Installation
Prerequisites
Python 3.10+
Access to the V language repository (this project should be run from within the V repo or with V_REPO_PATH configured)
Setup
Clone or navigate to the V repository
Navigate to the MCP server directory:
cd v-mcp-serverInstall dependencies:
pip install -r requirements.txt(Optional) Configure the V repository path:
export V_REPO_PATH="/path/to/v/repository"If not set, the server assumes it's running from within the V repository.
Usage
Starting the Server
STDIO Mode (Default)
HTTP Mode
SSE Mode
Available Tools
Documentation Tools
get_v_documentation([section])- Get V documentation, optionally for a specific sectionsearch_v_docs(query)- Search through V documentation for specific topics
Example Tools
list_v_examples()- List all available V code examplesget_v_example(name)- Get the complete source code for a specific examplesearch_v_examples(query)- Search through example code for patterns
Standard Library Tools
list_v_stdlib_modules()- List all V standard library modulesget_v_module_info(module_name)- Get detailed information about a specific module
Language Reference Tools
explain_v_syntax(feature)- Get detailed explanation of V language featuresget_v_quick_reference()- Get a quick reference guide for V basics
MCP Client Integration
Using with Claude Desktop
Add this to your Claude Desktop configuration:
Using with Other MCP Clients
The server supports all standard MCP transports:
STDIO: Best for local development and testing
HTTP: Suitable for web applications and remote access
SSE: Good for real-time applications
Examples
Getting Started with V
Finding Code Examples
Standard Library Exploration
Learning Specific Features
Configuration
Environment Variables
V_REPO_PATH: Path to the V language repository (defaults to parent directory)
Server Options
--transport: Transport protocol (stdio,http,sse)--host: Host address (for HTTP/SSE transports)--port: Port number (for HTTP/SSE transports)--path: URL path (for HTTP transport)
Architecture
The MCP server is built with the following components:
VDocumentationServer Class
Handles file system operations within the V repository
Caches documentation and example data for performance
Provides search functionality across documentation and code
MCP Tools
Each tool corresponds to a specific functionality:
Documentation tools: Access and search V language documentation
Example tools: Browse and retrieve code examples
Standard library tools: Explore V's standard library modules
Syntax tools: Explain language features and provide quick reference
FastMCP Framework
Built on the FastMCP library, providing:
Multiple transport support: STDIO, HTTP, SSE
Type safety: Full type annotations and validation
Performance: Efficient caching and search algorithms
Extensibility: Easy to add new tools and features
Development
Adding New Tools
To add a new tool, create a function decorated with @mcp.tool:
Extending Functionality
The server can be extended by:
Adding new tools for specific V features
Implementing code execution capabilities
Adding integration with V's compiler
Creating interactive tutorials
Testing
Run tests with pytest:
License
MIT
Related Projects
V Programming Language - The main V language repository
FastMCP - The MCP framework used by this server
v-analyzer - V language server for IDE support