Skip to content

Conversation

@Framstag
Copy link
Owner

No description provided.

- Initial version of simple MCP Server
- Initial version of simple MCP Server
@sonarqubecloud
Copy link

- Enhance request parameter
- More command line options
Copy link
Collaborator

@Karry Karry left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for kickoff this utility. I was considering to write some experimental MCP server using libosmscout recently :-) But my time for the experiments is limited now.

Anyway, where is CMake build?

httpLibAvailable=compiler.has_header('httplib.h', required: false)

# nlohmann_json
jsonDep = dependency('nlohmann_json', required: false)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we have own copy of this library in libosmscout-client/include/osmscoutclient/json, I would consider to link MCPServer with libosmscout-client library to re-use asynchronous API ;-)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmm, but httplib have no synchronous api, right?

@Framstag
Copy link
Owner Author

Thank you for kickoff this utility. I was considering to write some experimental MCP server using libosmscout recently :-) But my time for the experiments is limited now.

Anyway, where is CMake build?

I would be happy if you would like to participate. Enhancing the features should now be rather straight forward copy/paste style. Of course, some refactoring to handle increasing code size and complexity is likely to come.

I checked some libraries for MCP server and C++. They exist but do not have releases and are (already) behind current, fast changing - standard. So I decided to implement the necessary parts of the protocol myself.

I do not have a concrete use, it is just a nice experiment to getting into MCP. Thus the implementation is result orientated and very pragmatic.

I assume that for most tasks, synchronous http and synchronous calls to libosmscout or OK. Routing might be the only exclusion here. The http stack could be changed, I see the JSON objects with a additional context object are possible abstraction if needed.

The current implementation is also stateless and has now authentication or session/user understanding. We should try to keep it this way to keep things simple.

If you are interested to participate, I can add a cmake file, too.

I'll likely will further concentrate on another MCP side project in Java with another focus. In this variant, I see that Open-WebUI still has problem with calling out to MCP server in some (more complex) cases.

@Framstag
Copy link
Owner Author

I can merge anytime, if you would like to actively participate and supply further merge requests.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants