metaid-developers/metaapp-mcp-server
If you are the rightful owner of metaapp-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
MetaAPP MCP Server is a comprehensive service designed to facilitate MetaApp development by providing tools for project management, protocol exploration, and blockchain interaction.
MetaAPP MCP Server
A comprehensive MCP (Model Context Protocol) service for MetaAPP development, providing tools for project initialization, protocol exploration, and blockchain interaction.
Features
- Project Management: Initialize, preview, and build MetaApp projects from templates
- Environment Detection: Check and guide Node.js and Git installation
- Protocol Tools: Query and search MetaID protocols on blockchain
- Documentation Access: Built-in MetaID and Metalet wallet API documentation
- PIN Management: Fetch and analyze PIN data from blockchain
- User Information: Query user profiles by address or MetaID
- Prompt Templates: Pre-configured prompts for common MetaApp development tasks
Installation
Prerequisites
- Node.js v20.19.1 or higher (recommended via NVM)
- npm or yarn
- Git
Install Dependencies
npm install
Development
Run in Development Mode
npm run dev
Build the Project
npm run build
Run Built Version
npm start
Process Management (PM2)
The server includes PM2 configuration for production deployment with auto-restart capabilities.
Start with PM2
npm run pm2:start
Stop PM2 Process
npm run pm2:stop
Restart PM2 Process
npm run pm2:restart
View Logs
npm run pm2:logs
Docker Deployment
Build Docker Image
npm run docker:build
# or
docker build -t metaapp-mcp-server .
Run Docker Container
npm run docker:run
# or
docker run -p 3000:3000 metaapp-mcp-server
MCP Tools
System Tools
- get_assistant_metadata: Get complete server metadata including version and features
Documentation Tools
- get_resource_tree: MetaID and Metalet wallet API documentation
- get_manv1_api_resource: MAN V1 API capabilities and endpoints
- get_manv2_api_resource: MAN V2 API capabilities and endpoints
Environment Tools
- check_environment: Check if Node.js and Git are installed
- install_node_guide: Installation guide for Node.js via NVM
- install_git_guide: Installation guide for Git
Project Tools
- init_project: Initialize a new MetaApp project from template
- Parameters:
project_name,project_description,target_directory
- Parameters:
- run_project: Run npm run dev to preview the project
- Parameters:
project_path
- Parameters:
- build_project: Build and package the project for deployment
- Parameters:
project_path
- Parameters:
Protocol Tools
- get_metaprotocol_list: Get list of MetaProtocols
- Parameters:
cursor(optional),size(optional)
- Parameters:
- search_protocol: Search for a specific protocol by name
- Parameters:
protocol_name
- Parameters:
- get_pin_detail: Get details of a specific PIN
- Parameters:
pin_id
- Parameters:
- get_pin_list_by_path: Get PIN list by protocol path
- Parameters:
path,cursor(optional),size(optional)
- Parameters:
- get_user_info: Get user information
- Parameters:
address_or_metaid
- Parameters:
MCP Prompts
Available Prompts
- meta_app_developer_guide: Activate professional MetaApp developer mode
- init_metaapp_project: Initialize a new MetaApp project
- Arguments:
project_name,project_description
- Arguments:
- explore_protocol: Explore and understand a MetaID protocol
- Arguments:
protocol_name
- Arguments:
- deploy_metaapp: Deploy a MetaApp to the blockchain
Usage Example
With Claude Desktop
Add to your Claude Desktop configuration:
{
"mcpServers": {
"metaapp": {
"command": "node",
"args": ["/path/to/MetaAPP-Mcp/dist/index.js"]
}
}
}
Direct Usage
The server runs on stdio transport and communicates via standard input/output:
node dist/index.js
Project Structure
MetaAPP-Mcp/
├── src/
│ ├── config/ # Configuration files
│ ├── prompts/ # Prompt templates
│ ├── tools/ # Tool implementations
│ │ ├── system-tools.ts
│ │ ├── documentation-tools.ts
│ │ ├── project-tools.ts
│ │ └── protocol-tools.ts
│ ├── types/ # TypeScript type definitions
│ ├── utils/ # Utility functions
│ │ ├── helpers.ts
│ │ └── api-client.ts
│ └── index.ts # Main server entry
├── dist/ # Compiled JavaScript
├── logs/ # PM2 logs
├── Dockerfile # Docker configuration
├── ecosystem.config.cjs # PM2 configuration
├── tsconfig.json # TypeScript configuration
└── package.json # Project metadata
API Endpoints
MetaID APIs
- MAN V1:
https://man.metaid.io/api - MAN V2:
https://manapi.metaid.io
Key Resources
- MetaID Docs: https://docs.metaid.io/
- MetaID SDK: https://github.com/metaid-developers/metaid-sdk
- MetaApp Template: https://github.com/metaid-developers/MetaApp-CLI
- Metalet Wallet: https://metalet.space/
- Deployment: https://metaweb-world.vercel.app
Development Workflow
Creating a New MetaApp
-
Check Environment:
Use: check_environment -
Initialize Project:
Use: init_project Parameters: { target_directory: "/path/to/projects" } -
Explore Protocols:
Use: search_protocol Parameters: { protocol_name: "simplenote" } -
Develop Features: Follow the protocol structure to implement your app
-
Build for Deployment:
Use: build_project Parameters: { project_path: "/path/to/project" } -
Deploy: Upload the generated zip file to https://metaweb-world.vercel.app
Troubleshooting
Node.js Not Found
Use the install_node_guide tool to get installation instructions for your platform.
Git Not Found
Use the install_git_guide tool to get installation instructions for your platform.
Build Errors
Ensure you're in the correct project directory and all dependencies are installed:
cd your-project
npm install
npm run build
Contributing
Contributions are welcome! Please follow these guidelines:
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
License
MIT License - see LICENSE file for details
Support
- GitHub Issues: Create an issue
- MetaID Community: https://metaid.io/
- Documentation: https://docs.metaid.io/
Credits
Built with:
MetaAPP MCP Server - Empowering MetaApp development with AI assistance