Gentrepreneur

For developers and AI agents

The knowledge base as an MCP connector.

Our entire public knowledge base — articles on entrepreneurship, grants, funding and legal basics for student and young entrepreneurs — is available as an MCP server. Four read-only tools, no key required.

Please don't scrape us — use the MCP server.

Want to share the content of this knowledge base through your own knowledge base or agent? Don't do it by scraping our pages — use our MCP server instead. It's public, free and needs no key.

  • You get clean, structured JSON instead of HTML you have to pick apart yourself.
  • You're always on the current version — articles are updated continuously.
  • You don't have to work around our rate limits on article pages or our bot protection.
  • We get to see which questions are live and can steer the knowledge base accordingly.

The endpoint.

One URL. This is a remote MCP server over Streamable HTTP — no installation, no local process, no API key.

https://kennisbank.gentrepreneur.be/api/mcp
Transport
Streamable HTTP
Protocol
2025-06-18
Authentication
None
Server name
gentrepreneur-kennisbank
Languages
nl (default), en
Write actions
None — everything is read-only

Responses come back as text/event-stream, even for a single call. Any common MCP client handles that for you; if you work with raw curl, you'll see one event: message line per response.

Adding it to your client.

Claude

Works in Claude on the web and in the desktop app.

  1. Open Settings → Connectors.
  2. Click Add custom connector.
  3. Give it a name and paste the endpoint above as the URL.
  4. Confirm. The four tools show up immediately — there's no sign-in step, because there's no auth.

On Team and Enterprise plans only a workspace admin can usually add connectors. If you're stuck on step 2, that's almost always why.

Claude Code

In the CLI it's a single command:

terminal
claude mcp add --transport http kennisbank https://kennisbank.gentrepreneur.be/api/mcp

ChatGPT

ChatGPT supports custom MCP connectors on the paid plans. The route runs through Settings → Connectors → Advanced, where you enable developer mode, then Add connector with the same URL. Pick No authentication when asked.

OpenAI moves these screens around regularly and availability differs per plan. If you can't find the menu, the connector still works — through the API or one of the clients below.

Cursor, VS Code, Zed and other clients

These take the same block of JSON. The file name differs per tool (mcp.json, .mcp.json, settings.json), the contents don't:

mcp.json
{
  "mcpServers": {
    "kennisbank": {
      "type": "http",
      "url": "https://kennisbank.gentrepreneur.be/api/mcp"
    }
  }
}

The four tools.

Every tool takes language ("nl" or "en", default nl) and returns JSON with absolute URLs to the public article pages.

search_knowledge_base

60 / min

Semantic search across the whole knowledge base. Returns title, slug, URL, category, tags, an excerpt and a relevance score per hit. This is the starting point for almost any question.

query
Natural-language search query. Required.
limit
1–20 results. Default 6.

ask_knowledge_base

10 / min

Ask a question and get a written, sourced answer built from the knowledge base. Slower than search, because a language model runs behind it. Answers stay strictly within our content and say so explicitly when something isn't covered.

question
The question. Required.

get_article

60 / min

Fetches one article in full as plain text, plus category, tags, source URL and last-edited date. Truncated slugs resolve to the closest match as long as it's unambiguous.

slug
E.g. pmv-start-loan-startlening, from a search result or an /artikel/… URL. Required.

list_categories

60 / min

All categories with their description and URL. Useful to orient yourself before searching, or to point someone at an overview page.

language
The only parameter. Default nl.

Calling it directly.

Without an SDK, plain JSON-RPC 2.0 over POST works. Important: the Accept header must contain both types, or the server refuses the request.

tools/list
curl -X POST https://kennisbank.gentrepreneur.be/api/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
tools/call
curl -X POST https://kennisbank.gentrepreneur.be/api/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/call",
    "params": {
      "name": "search_knowledge_base",
      "arguments": { "query": "btw-nummer aanvragen", "language": "nl", "limit": 3 }
    }
  }'

The result comes back as a single data: line containing a content array; the first text block holds the tool's JSON.

Prefer it without MCP

If you don't have an MCP client, the same four tools are available as a plain JSON API. One path per tool, GET with a query string or POST with a JSON body:

rest
curl 'https://kennisbank.gentrepreneur.be/api/agent/search_knowledge_base?query=startlening&limit=3'

curl -X POST https://kennisbank.gentrepreneur.be/api/agent/ask_knowledge_base \
  -H 'Content-Type: application/json' \
  -d '{"question":"Hoe vraag ik een startlening aan?","language":"nl"}'

Server-to-server only. This path sends no CORS headers, so it won't work straight from browser JavaScript. Call it from your own backend, or use the MCP endpoint — that one is open to cross-origin clients.

Limits & ground rules.

Rate limits apply per IP address, on a sliding one-minute window. They're separate from our own chatbot's budget, so normal agent use won't come near them.

BucketToolsLimit
cheapsearch_knowledge_base, get_article, list_categories60 calls / minute
askask_knowledge_base10 calls / minute

Exceed a limit and you don't get a crash but a tool result with an error message in it. Waiting a moment is enough.

  • Published content only. Drafts and internal articles are not in this channel and won't be added to it.
  • Credit the source. Every result carries the article's public URL. Link to it when you pass our content on to an end user.
  • The content is alive. Articles are updated continuously; cache briefly at most and don't assume a stable slug.
  • No SLA. This is a free, public service. If you're building something business-critical on it, let us know — then we'll look at arrangements together.

Contact.

Questions, a use case we should know about, or a tool you're missing? Email Luc Peeters luc.peeters@gentrepreneur.be.

/llms.txt Machine-readable entry point for agents