Custom AI and software · MCP
MCP server development: custom MCP servers for your API and data
MCP server development means building the server that lets an AI application use your tools and data through the Model Context Protocol (MCP), an open standard for connecting AI to outside systems. Vexio builds custom MCP servers as a service, in Node.js and Python. Each one has a dry-run default for anything that writes, an audit log and a scoped identity per caller. It can run locally or on Cloudflare, AWS or Azure.
By The Vexio team Updated
- 01AskAn AI assistant sends a request
- 02Discover toolsThe server lists the tools and their scope
- 03ReadA read-only call is allowed
- 04Dry run and approvalA write is previewed, then approved by a person
- 05Audit logEvery step is recorded
Example tools (generic)
Illustration of an example MCP flow with fictional tool names. It shows the pattern, not a product.
What is an MCP server? Tools, resources and prompts.
An AI client connects, asks the server what it offers, then uses it. The server decides what is on offer and under which rules.
-
Tools
Actions the AI can call
A tool has a name, a description and a typed input. The AI application reads the description, decides when the tool fits and sends the input.
-
Resources
Data the AI can read
Files, records or query results the model can use as context, under the access rules you set.
-
Prompts
Reusable instructions
Templates for common tasks that a user can pick from a list, so the same request is worded the same way every time.
Four common MCP server projects.
Most start with something you already run. The job is to make it usable by an AI application without giving the AI more access than it needs.
-
A wrapper for an existing API
Your REST or GraphQL API stays as it is. The MCP server adds clearly named tools, descriptions an AI can act on, and the permissions and approval rules the API does not express.
-
Read-only access to data
A database, warehouse or document store open for questions only, with query limits and no way to write.
-
Workflow tools
A multi-step action, such as creating a record and notifying a team, packaged as one tool with an approval step before anything changes.
-
Advertising tools
Tools that let an agent read ad reports and draft campaign changes, with approval before anything is published. The Vexio AI advertising agent follows the same pattern.
How we build an MCP server: few tools, tight permissions, real-client tests.
- 01
Choose the tools
List what the AI should be able to do and read. A few clear tools beat a long menu. Each one gets a name, a description and a typed input.
- 02
Decide access
Choose authentication that suits where the server runs, give credentials the least privilege that works, and mark which tools need human approval.
- 03
Build
We write the server in Node.js or Python. It exposes the tools over the protocol and adds input validation, rate limits and structured logs.
- 04
Test with real clients
We run the server from real MCP clients and feed it hostile and malformed input before anyone relies on it.
- 05
Deploy and hand over
Local over standard input and output, or remote over HTTP on Cloudflare, AWS or Azure. You get documentation and monitoring.
Local and remote
Local for one person, remote for the whole team.
Local. The server runs on the user's machine and talks to the AI client over standard input and output. It suits personal tools and development. Credentials stay on that machine.
Remote. The server runs on a host you control and is reached over HTTP. It suits shared tools, central access control and audit logs. Cloudflare Workers, AWS and Azure come in here; see cloud and DevOps.
One codebase can serve both. The protocol specification is public: modelcontextprotocol.io.
Treat an MCP server like a public API.
The caller is a language model reading text it does not control. That changes what you have to protect.
- Give every tool the smallest permission that does the job, and keep read tools apart from write tools.
- Make write actions explicit and approvable, and log every call with its inputs and result.
- Treat what a tool returns as untrusted input to the model. Text from a web page or a record can contain instructions, and the server cannot count on the model ignoring them.
- Keep secrets in the server environment, never in tool descriptions or returned text.
- Check every input against its schema before it reaches your system.
Questions on MCP servers.
An MCP server is a program that exposes tools, data and prompts to AI applications through the Model Context Protocol, an open protocol for connecting AI applications to external systems. An AI client connects to the server, lists what it offers and calls the tools. See what is an MCP server.
A REST API is written for developers, who read the documentation and write code against it. An MCP server describes its tools in a form an AI application can discover and call itself. Many MCP servers sit on top of an existing API: the API stays, and the server adds the descriptions, permissions and approval rules an agent needs. Read MCP vs REST API.
Yes. MCP server development is a service we deliver. A typical project wraps an existing API or database with a small set of well-named tools, read-only first, with authentication, rate limits and logging. You get the server, its documentation and a handover session.
The engineering pattern is a dry-run default for anything that writes, an audit log of every call and a scoped identity for each caller, so the server can do only what that caller is allowed to do. We also validate every input and test with hostile input before launch. Details are agreed per project.
A local server runs on the user's machine and talks to the client over standard input and output. A remote server runs on a host you control and is reached over HTTP, which suits shared tools and central access control. We build either, and one codebase can serve both.
It is as safe as the permissions you give it. We scope credentials to the minimum, make write actions explicit and approvable, log every call and test the tools against abuse cases such as unexpected input. Treat an MCP server as an API that an unpredictable client will call.
An MCP server is a normal program that uses an MCP SDK to declare tools with typed inputs and answer calls from a client. For a step-by-step example, read how to build an MCP server in TypeScript. If you want it built, hosted and handed over, that is the service Vexio delivers.
- AI agent development company
The agent that uses the server.
- Custom software development
The applications behind your tools.
- AI agents hub
Agents that call MCP tools.
- Cloud and DevOps
Hosting for remote servers.
- Advertising data pipelines (ETL)
Put warehouse data in reach of an agent.
- What is an MCP server?
The protocol in plain terms.
- MCP vs REST API
How MCP differs from REST.
- Build an MCP server in TypeScript
Step by step.
Tell us what the AI should be able to reach.
Name the system, what an AI may read or change, and who approves changes. We reply by email to set up a scoping call.
- hello@vexio.ai
- Phone
- +1 778 896 4353
- Message us
- Web
- vexio.ai