I am uploading the very brief screencast by @gagosha and changing the status of this issue to "needs review". We need thorough testing and creating upcoming issues related to this or comments down here.
jibla → created an issue.
Closing this as its fixed in ✨ Make MCP plugin tools configurable Active
We need to list this here: https://github.com/Omedia/mcp-server-drupal
I guess we can merge this and close the issue.
Thank you both!
@wjackson - Can you confirm whats the status on this? Are you able to make it work on dev branch?
Changing to "Fixed".
Changing to fixed as its merged into 1.x.
Closing this as it is fixed in ✨ Improve tools naming Active .
Thank you @askibinski
Changing status to `Fixed` as we already merged it into `1.x` and soon will release - `1.2.0-rc`.
Thank you both.
I think we can merge this into 1.x
As of my knowledge, plugins can expose one or multiple tools, hence `aif_` prefixed many tools in the list.
@gagosha - can you explain how exactly at the moment tool names are constructed and then we continue from there?
Hi @mrdalesmith
Yes there is an active issue (#3519469: Support tools calling) for tools calling. There is an open MR there, once we finish working on it, lets revisit this issue again.
@yce Thank you for the contribution!
Before the code review of the MR, we need a test case to check with. As we don't have any automated tests for the providers yet, I would love if somebody tested this manually.
I'll mark the issue as Needs Review.
Hi @dmundra
There is an active issue ([3519469]) for tools calling, which I think pretty much involves everything in this issue. So, I will set this as a related one and once we merge the tools calling (there is an open MR there), we can mark this as fixed too.
Thank you for the help and if you are available you can continue to contribute to the tools calling issue.
Merging this into 1.x.
Thanks you everybody for the work!
@joshmiller - Thanks! I will connect with you over slack.
@valthebald
Actually if somebody from the community would suggest a MR, it would help. Otherwise I will try to push this in my team.
I also have same error:
The website encountered an unexpected error. Try again later.
Symfony\Component\DependencyInjection\Exception\ServiceCircularReferenceException: Circular reference detected for service "authentication_subscriber", path: "authentication_subscriber -> authentication -> authentication_collector -> mcp.authentication.authentication_provider". in Drupal\Component\DependencyInjection\Container->get() (line 149 of core/lib/Drupal/Component/DependencyInjection/Container.php).
Drupal\Component\DependencyInjection\Container->get() (Line: 105)
Drupal\Component\EventDispatcher\ContainerAwareEventDispatcher->dispatch() (Line: 239)
Symfony\Component\HttpKernel\HttpKernel->handleThrowable() (Line: 91)
Symfony\Component\HttpKernel\HttpKernel->handle() (Line: 68)
Drupal\simple_oauth\HttpMiddleware\BasicAuthSwap->handle() (Line: 53)
Drupal\Core\StackMiddleware\Session->handle() (Line: 48)
Drupal\Core\StackMiddleware\KernelPreHandle->handle() (Line: 28)
Drupal\Core\StackMiddleware\ContentLength->handle() (Line: 32)
Drupal\big_pipe\StackMiddleware\ContentLength->handle() (Line: 116)
Drupal\page_cache\StackMiddleware\PageCache->pass() (Line: 90)
Drupal\page_cache\StackMiddleware\PageCache->handle() (Line: 53)
Asm89\Stack\Cors->handle() (Line: 48)
Drupal\Core\StackMiddleware\ReverseProxyMiddleware->handle() (Line: 51)
Drupal\Core\StackMiddleware\NegotiationMiddleware->handle() (Line: 36)
Drupal\Core\StackMiddleware\AjaxPageState->handle() (Line: 51)
Drupal\Core\StackMiddleware\StackedHttpKernel->handle() (Line: 741)
Drupal\Core\DrupalKernel->handle() (Line: 19)
@gagosha
✅ 1. I see the permission.
✅ 2. I see user selection in token authentication.
✅ 3. Content types are disallowed by default.
❓4. Regarding drush - I don't see the granular form described, but the textarea. Is it how its intended to be used?
@valthebald exactly! :) I will take care of it, this week
It makes sense. I will merge this into the dev release and make sure its part of the next release. Thank you @ishani patel @mgifford
Closing this as new website is launched and it serves as a new documentation.
Closing this as new website is launched and it serves as a new documentation.
Can you provide the Drupal and PHP versions to reproduce the bug?
Thanks for reporting.
Next week we are releasing a first stable version of MCP module and we will deliver an updated new docs, where this will be fixed too.
@nelo_drup - This is merged and is part of the latest release.
@lekso_surameli - we need to check if this model is loaded and works in recent beta release. If yes, we can mark this as fixed, or identify what needs to be done more.
Assigning to Lekso for review.
Assigning this to Lekso for review.
@yautja_cetanu - Thank you for the list of test cases. I was thinking for asking something like this. We can try to make to automate this e2e tests for other providers later. I will work on this.
@pameeela – I understand your perspective. I believe this requires further discussion to determine the best approach. From an end-user standpoint, when downloading and installing Drupal CMS, enabling AI, and finding only two major providers (OpenAI and Anthropic) while Google's Gemini is absent, it may be difficult to justify.
I also agree that there should be clear principles guiding provider selection, as including all available providers may not be feasible. However, given that OpenAI and Anthropic are included, it seems reasonable to consider Gemini as well—especially since many agencies partner with GCP and are likely to use Gemini as their primary LLM provider.
For now, I’ll continue working on this PR, ensuring all tests pass and addressing any necessary fixes while this decision is being discussed.
P.S. If the decision is to exclude Gemini from the default setup, I’m happy to create a separate recipe for it.
I'll do it myself.
This is definitely solved in https://www.drupal.org/project/gemini_provider/issues/3504309 ✨ Add Embedding capabilities Active and is already merged.
Closing this issue.
Merged! Thank you @vasike!
This is related to the module name.
When I started the module, there was no naming convention at all, even all the existing providers where part of the AI module. I agree its better if the module is renamed to ai_provider_gemini
.
I am going to work on the renaming after we release this changes. After this I will see if its possible - we need to rename namespace in url/composer without affecting already installed instances. I will take care of this after this release, meanwhile I am setting this issue as postponed.
Merged!
@a.dmitriiev - I am trying to merge it but get a strange error not merging. Will try later, if we can't merge from here, lets create a separate issue on this and merge separately.
@vasike Thanks a lot for the proposal. It looks very good.
However, I think, for now, its better to go with simply just the provider's official logo (as other providers do).
For future, I have an idea to propose general style for all the official providers so that they look consistent.
@lekso_surameli uploading a properly cropped Gemini logo and you can use this.
@vasike - Yes, you are absolutely right. We definitely need to setup proper ci/cd with gitlab actions.
If you want, you can work on this and @lekso-surameli will review and we can merge it as soon as its done, so that we benefit from it.
I need to check if we need to do more here.
Yes you are right, the reason this not working (actually model returning the dummy output) was because the actual image blob was not sent with the request.
Tested and works perfectly. I tested it with Drupal CMS and it also works with Flash 2.
Thanks to everyone, its merged and credits are given to all.