Skip to content

Universal AI-powered API orchestrator for MCP. Connect services, describe tasks, AI handles the rest. 17 integrations. Open source.

License

Notifications You must be signed in to change notification settings

Crypto-Goatz/0nMCP

Repository files navigation

 ██████╗ ███╗   ██╗███╗   ███╗ ██████╗██████╗
██╔═████╗████╗  ██║████╗ ████║██╔════╝██╔══██╗
██║██╔██║██╔██╗ ██║██╔████╔██║██║     ██████╔╝
████╔╝██║██║╚██╗██║██║╚██╔╝██║██║     ██╔═══╝
╚██████╔╝██║ ╚████║██║ ╚═╝ ██║╚██████╗██║
 ╚═════╝ ╚═╝  ╚═══╝╚═╝     ╚═╝ ╚═════╝╚═╝

The Universal AI API Orchestrator

Connect your apps. Say what you want. AI does the rest.

License: MIT Node.js MCP PRs Welcome Services Tools

Demo · Install · Services · Tools · Examples · Contributing


The Problem

You have Stripe for payments. SendGrid for email. Slack for messaging. Airtable for data. A CRM for contacts.

Today, to automate across them, you need:

  • Zapier ($50+/month) — and build complex zaps
  • n8n/Make — and learn their visual builders
  • Custom code — and maintain API integrations forever

What if you could just... talk to them?


The Solution

You: "Invoice john@acme.com for $500 and notify #sales on Slack when it's sent"

0nMCP figures out the rest:

Step 1: Found John Smith (john@acme.com) in Stripe
Step 2: Created invoice INV-0042 for $500.00
Step 3: Posted to #sales: "New invoice sent to John Smith for $500"

Done. 3 steps. 2 services. 1.2 seconds.

No workflows. No mapping. No code. Just results.


Watch It Work

# In Claude Desktop after setup:

You: "Connect to Stripe with key sk_live_xxx"
AI:  Connected to Stripe (8 capabilities available)

You: "Connect to Slack with bot token xoxb-xxx"
AI:  Connected to Slack (4 capabilities available)

You: "Get my Stripe balance and post it to #finance"
AI:  Your Stripe balance is $12,450.00. Posted to #finance.

That's it. No configuration files. No workflow builders. No decisions about which API to use.


Installation

One Command

npx 0nmcp

Or install globally:

npm install -g 0nmcp

Configure Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (Mac) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "0nmcp": {
      "command": "npx",
      "args": ["0nmcp"],
      "env": {
        "ANTHROPIC_API_KEY": "sk-ant-..."
      }
    }
  }
}

ANTHROPIC_API_KEY is optional. It enables AI-powered multi-step task planning. Without it, 0nMCP still works using keyword-based routing.

Restart Claude Desktop. Start talking.


Supported Services

Service Type What You Can Do
Stripe Payments Create customers, send invoices, check balance, subscriptions, products, prices
SendGrid Email Send emails, manage contacts, templates, lists
Resend Email Send transactional emails, manage domains
Twilio SMS/Voice Send SMS, make calls, check message status
Slack Communication Post to channels, DMs, list users, create channels
Discord Communication Send messages, list server channels
OpenAI AI Text generation, DALL-E images, embeddings, TTS
Airtable Database CRUD records in any base, list bases
Notion Database Search, create pages, query databases
GitHub Code Repos, issues, pull requests
Linear Projects Issues, projects (GraphQL)
Shopify E-commerce Products, orders, customers, inventory
HubSpot CRM Contacts, companies, deals
Supabase Database Tables, auth users, storage buckets
Calendly Scheduling Events, event types, availability
Google Calendar Scheduling Events, calendars, CRUD
CRM CRM Contacts, pipelines, tags, workflows, custom values, SMS, email, snapshots

17 services. 100+ capabilities. One interface.

More coming: Mailchimp, QuickBooks, Jira, Asana, Zendesk, Intercom, Webflow, WordPress...


Examples

Simple Tasks

"Send an email to sarah@example.com: Meeting moved to 3pm"

"Create a Stripe customer for mike@startup.io"

"Post to #engineering on Slack: Deploy complete!"

"Send SMS to +1555123456: Your order shipped"

"What's my Stripe balance?"

"Search Notion for project roadmap"

Multi-Step

"Create a Stripe invoice for $1000, then email the link to john@client.com"

"Create a GitHub issue for the login bug, then post it to #bugs on Slack"

"Look up sarah@example.com in my CRM and send her a follow-up email"

Complex Orchestration

"Check if we have any overdue invoices in Stripe. If so, send a summary
 to #finance on Slack and email the finance team."

The AI:

  1. Queries Stripe for overdue invoices
  2. Formats a summary
  3. Posts to Slack
  4. Sends the email
  5. Reports back

You describe the outcome. AI figures out the path.

CRM Snapshots — Deploy Entire Configurations

"Deploy a full CRM snapshot with a 12-stage sales pipeline,
 all lead tags, custom values, and 18 workflow definitions"

One tool call. Everything deployed:

{
  "pipeline": {
    "name": "Sales Pipeline",
    "stages": ["001. New Lead", "002. Attempt to Contact", "003. Engaged",
               "004. Appointment Set", "005. Appointment Showed", "006. Proposal Sent"]
  },
  "tags": ["New Lead", "FB Lead", "Hot Lead", "Booked Appointment", "No Show"],
  "custom_values": {
    "calendar_link": "https://calendly.com/yourlink",
    "support_email": "support@yourco.com",
    "welcome_sms": "Hey {{contact.first_name}}, welcome aboard!"
  },
  "workflows": [
    {
      "id": "001a",
      "name": "001.a New Lead In",
      "trigger": { "type": "tag_added", "tag": "New Lead" },
      "actions": [
        { "type": "send_sms", "message": "{{custom_values.welcome_sms}}" },
        { "type": "wait", "duration": "10 minutes" },
        { "type": "add_tag", "value": "Contacted" }
      ]
    }
  ]
}

All Tools

Universal Tools (7)

Tool Description
execute Run any task in natural language across all connected services
connect_service Connect a new service with credentials
disconnect_service Remove a connected service
list_connections See what's connected and capability counts
list_available_services Browse all 17 services grouped by category
get_service_info Deep dive on a specific service — endpoints, auth, capabilities
api_call Direct API call to any connected service endpoint

CRM Tools (10)

Tool Description
crm_auth_url Generate OAuth authorization URL
crm_exchange_token Exchange auth code for access + refresh tokens
crm_refresh_token Refresh an expired access token
crm_create_tags Bulk create tags in a sub-account
crm_create_pipeline Create pipeline with ordered stages
crm_create_custom_values Push custom key-value pairs
crm_process_workflow Process workflow JSON — extracts and creates tags + custom values
crm_deploy_snapshot Full deployment: pipeline + tags + custom values + all workflows
crm_list_workflows List all workflows
crm_list_pipelines List all pipelines and stages

17 tools total. Universal orchestration + deep CRM integration.


How It Works

┌─────────────────┐     ┌──────────────────┐     ┌─────────────────┐
│   You (Claude)  │────▶│      0nMCP        │────▶│   Your APIs     │
│                 │     │                  │     │                 │
│ "Invoice John   │     │ 1. Parse intent  │     │ Stripe          │
│  for $500 and   │     │ 2. Plan steps    │     │ SendGrid        │
│  notify #sales" │     │ 3. Execute APIs  │     │ Slack           │
│                 │◀────│ 4. Chain data    │◀────│ CRM             │
│                 │     │ 5. Summarize     │     │ + 13 more...    │
└─────────────────┘     └──────────────────┘     └─────────────────┘

With ANTHROPIC_API_KEY (AI Mode)

Claude analyzes your task, inspects connected services and their capabilities, creates a multi-step execution plan, runs every API call in order, passes data between steps, and summarizes the results.

Without API Key (Keyword Mode)

The orchestrator uses keyword matching to route tasks to the right service. Less intelligent but still functional for straightforward single-service requests.


Why Not Just Use...

0nMCP Zapier Custom Code
Setup time 2 minutes 30+ min per zap Hours/days
Learning curve None (natural language) Medium (visual builder) High (APIs, auth)
Multi-step tasks Just describe it Build complex zaps Write orchestration logic
Cost Free + your API keys $20-$100+/month Your time
Flexibility Say what you want Triggers/actions only Unlimited but complex
Maintenance Zero Update broken zaps Fix API changes
Open source Yes (MIT) No Depends

Architecture

0nMCP/
├── index.js          # Entry point — 7 universal tools + server startup
├── catalog.js        # Service catalog — 17 integrations with endpoints
├── connections.js    # Connection manager — credential storage (~/.0nmcp/)
├── orchestrator.js   # AI execution planner — the brain
├── crm.js            # CRM tools — 10 dedicated tools, first full integration
├── package.json
├── LICENSE           # MIT
├── CONTRIBUTING.md
└── README.md
Component What It Does
Service Catalog Defines all 17 services — their base URLs, endpoints, auth patterns, and capabilities
Connection Manager Stores and retrieves credentials locally at ~/.0nmcp/connections.json
Orchestrator The brain — parses natural language, plans multi-step execution, calls APIs, chains data
Universal Tools MCP interface: execute, connect_service, api_call, etc.
CRM Tools Direct access: pipelines, tags, custom values, workflows, full snapshot deploy

Security

  • Local execution — MCP server runs on your machine, not in the cloud
  • Direct API calls — Requests go straight to each service, not through a proxy
  • Your credentials — Stored locally at ~/.0nmcp/connections.json, never sent anywhere
  • Anthropic key — Only used for task planning (never passed to external services)
  • Open source — Audit every line yourself

Configuration

Environment Variables

Variable Required Description
ANTHROPIC_API_KEY No Enables AI-powered multi-step planning. Keyword matching without it.

Credential Storage

Connections stored in plain text at ~/.0nmcp/connections.json. For production:

  • Use a secrets manager
  • Encrypt the connections file
  • Use environment variables for credentials

For Developers

Adding a New Service

Drop a definition into catalog.js:

your_service: {
  name: "Your Service",
  type: "category",
  description: "What it does",
  baseUrl: "https://api.yourservice.com",
  authType: "api_key",
  credentialKeys: ["apiKey"],
  capabilities: [
    { name: "do_thing", actions: ["create", "list"], description: "Does the thing" },
  ],
  endpoints: {
    do_thing:    { method: "POST", path: "/things", body: { name: "" } },
    list_things: { method: "GET",  path: "/things" },
  },
  authHeader: (creds) => ({
    "Authorization": `Bearer ${creds.apiKey}`,
    "Content-Type": "application/json",
  }),
},

Add keyword triggers to orchestrator.js. Submit a PR. Done.

See CONTRIBUTING.md for the full guide.


Roadmap

  • Core orchestration engine with AI planning
  • 17 service integrations
  • Multi-step execution with data chaining
  • CRM deep integration (10 dedicated tools)
  • Full snapshot deployment (pipeline + tags + values + workflows)
  • Keyword fallback mode (works without Anthropic key)
  • OAuth flows — connect with one click
  • Credential encryption — at-rest security
  • Execution history — see what ran and when
  • Scheduled tasks — "every Monday, send a report"
  • Webhooks — trigger on external events
  • Conditionals — "if balance < $100, alert me"
  • More services — 50+ planned
  • npm publishnpx 0nmcp live on npm
  • Web dashboard — manage connections visually
  • Plugin system — bring your own services

Contributing

We want 0nMCP to be the open standard for AI-powered API orchestration.

Ways to contribute:

  • Add a service — Drop it in the catalog. See CONTRIBUTING.md
  • Report bugsOpen an issue
  • Suggest features — Start a discussion
  • Improve docs — PRs welcome
  • Star the repo — Help others find it
git clone https://github.com/Crypto-Goatz/0nMCP.git
cd 0nMCP
npm install
node index.js

License

MIT License — do whatever you want with it. See LICENSE.


Credits

Built on:


Stop building workflows. Start describing outcomes.

Star this repo if you believe AI should just do things for you.


Made with conviction by RocketOpp

"The best automation is the one you don't have to build."

About

Universal AI-powered API orchestrator for MCP. Connect services, describe tasks, AI handles the rest. 17 integrations. Open source.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •