Expose
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Exposecreate a subscription for customer abc-123"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
title: Expose description: Easily build MCP tools for Claude desktop app
Expose lets you build MCP tools that you can invoke with MCP client like Claude desktop app.
Self-hosted: You can easily self-host tools and deploy them on your own server.
Unified gateway: Generates a single HTTP endpoint that you can register with
expose-cliFlexible: Easily configure and customize your tools to fit your needs.
Getting started
Setup expose CLI
curl -fsSL https://github.com/a0dotrun/expose/releases/download/stable/download_cli.sh | bashInstall dependencies
npm i @a0dotrun/exposeCreate server
touch src/server.tsimport { create } from "@a0dotrun/expose" const app = create({ tools: [], }) export default { port: 3000, fetch: app.fetch, }Define your tools
+ import { tool } from "@a0dotrun/expose/tool"
+ import { subscription } from "@acme/lib/subscription"
+ import { z } from "zod"
+ const getCustomerSubscription = tool({
+ name: "getCustomerSubscription",
+ description: "Get subscription information for a customer",
+ args: z.object({
+ customer: z.string().uuid()
+ }),
+ run: async (input) => {
+ // Your subscription logic here
+ return input;
+ },
+ });
+ const createCustomerSubscription = tool({
+ name: "createCustomerSubscription",
+ description: "Create a subscription for a customer",
+ args: z.object({
+ customer: z.string().uuid()
+ }),
+ run: async (input) => {
+ // Your subscription logic here
+ return input;
+ },
+ });
const app = create({
tools: [
+ getCustomerSubscription,
+ createCustomerSubscription,
],
});Start server
npm run devYou can also deploy the server and note down the public URL.
Register in Claude desktop app MACOS Claude desktop MCP config path:
~/Library/Application Support/Claude/claude_desktop_config.json
{
...
"mcpServers": {
"subscriptionManager": {
"command": "/Users/acmeuser/.local/bin/expose-cli",
"args": ["--url", "http://localhost:3000", "--timeout", "15"]
}
}
...
}replace localhost with your public URL
expose is created by @_sanchitrk at a0
Acknowledgements
I was inspired by opencontrol
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/deadcodedump/expose'
If you have feedback or need assistance with the MCP directory API, please join our Discord server