A favicon of Xano MCP Server

Xano MCP Server

Interact with the Xano API to manage database operations.

Xano MCP Server

A Model Context Protocol (MCP) server implementation for interacting with the Xano API. This server provides tools and resources for managing Xano database operations through the MCP interface.

Features

  • Secure authentication with Xano API
  • Type-safe API interactions using TypeScript
  • Environment-based configuration
  • MCP-compliant interface
  • Workspace management tools
  • Table content operations (create, read, update)
  • Improved error handling with detailed messages

Installation

# Clone the repository
git clone [your-repo-url]
cd xano_mcp

# Install dependencies
npm install

Configuration

  1. Copy the example environment file:
cp .env.example .env
  1. Update the .env file with your Xano credentials:
XANO_API_KEY=your_api_key_here
XANO_API_URL=your_xano_api_url
NODE_ENV=development
API_TIMEOUT=10000

Development

# Build the project
npm run build

# Run in development mode
npm run dev

# Start the server
npm start

Project Structure

xano_mcp/
├── src/
│   ├── api/
│   │   └── xano/
│   │       ├── client/       # API client implementation
│   │       ├── models/       # Data models and types
│   │       ├── services/     # API service implementations
│   │       └── utils/        # Utility functions
│   ├── mcp/
│   │   ├── server/          # MCP server implementation
│   │   ├── tools/           # MCP tool implementations
│   │   └── types/           # Tool-specific types
│   ├── config.ts            # Configuration management
│   └── index.ts             # Main entry point
├── .env                     # Environment variables (not in git)
├── .env.example            # Example environment variables
└── tsconfig.json           # TypeScript configuration

Available MCP Tools

Workspace Tools

  • get_workspaces: List all available workspaces

Table Tools

  • create_table: Create a new table in a workspace
  • get_table_content: Get content from a table with pagination support
  • add_table_content: Add new content to a table
  • update_table_content: Update existing content in a table
  • get_all_tables: List all tables in a workspace with detailed information

Usage Examples

Working with Workspaces

// List available workspaces
const result = await mcp.use_tool("get_workspaces", {});
console.log('Workspaces:', result);

Managing Tables

// Create a new table
const createResult = await mcp.use_tool("create_table", {
  workspaceId: 123,
  name: "MyTable"
});

// Add content to a table
const addResult = await mcp.use_tool("add_table_content", {
  workspaceId: 123,
  tableId: 456,
  content: {
    created_at: "2024-01-22T17:07:00.000Z"
  }
});

// Get table content with pagination
const getResult = await mcp.use_tool("get_table_content", {
  workspaceId: 123,
  tableId: 456,
  pagination: {
    page: 1,
    items: 50
  }
});

// Update table content
const updateResult = await mcp.use_tool("update_table_content", {
  workspaceId: 123,
  tableId: 456,
  contentId: "789",
  content: {
    created_at: "2024-01-22T17:07:00.000Z"
  }
});

// List all tables in a workspace
const tables = await mcp.use_tool("get_all_tables", {
  workspaceId: 123
});
console.log('Tables:', tables);
// Returns an array of tables with their details:
// [
//   {
//     id: number,
//     name: string,
//     description: string,
//     created_at: string,
//     updated_at: string,
//     guid: string,
//     auth: boolean,
//     tag: string[],
//     workspaceId: number
//   },
//   ...
// ]

Environment Variables

VariableDescriptionRequiredDefault
XANO_API_KEYYour Xano API authentication keyYes-
XANO_API_URLXano API endpoint URLYes-
NODE_ENVEnvironment (development/production)Nodevelopment
API_TIMEOUTAPI request timeout in millisecondsNo10000

Error Handling

The server provides detailed error messages for:

  • Invalid parameters
  • Authentication failures
  • API request failures
  • Content validation errors
  • Unknown tool requests

Security

  • Environment variables are used for sensitive configuration
  • TruffleHog configuration is included to prevent secret leaks
  • API keys and sensitive data are never committed to the repository

Contributing

  1. Create a feature branch
  2. Make your changes
  3. Submit a pull request

License

ISC

Share:
Details:
  • Stars


    0
  • Forks


    2
  • Last commit


    3 months ago
  • Repository age


    3 months
View Repository

Auto-fetched from GitHub .

MCP servers similar to Xano MCP Server:

 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit